1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
18 #include "AliITSresponseSDD.h"
21 //___________________________________________
22 ClassImp(AliITSresponseSDD)
24 AliITSresponseSDD::AliITSresponseSDD()
30 SetNSigmaIntegration();
34 SetNoiseAfterElectronics();
47 //__________________________________________________________________________
48 AliITSresponseSDD::AliITSresponseSDD(const AliITSresponseSDD &source){
50 if(&source == this) return;
52 for(i=0;i<8;i++){this->fCPar[i] = source.fCPar[i];}
53 this->fNoise = source.fNoise;
54 this->fBaseline = source.fBaseline;
55 this->fNoiseAfterEl = source.fNoiseAfterEl;
56 this->fDynamicRange = source.fDynamicRange;
57 this->fChargeLoss = source.fChargeLoss;
58 this->fTemperature = source.fTemperature;
59 this->fDriftSpeed = source.fDriftSpeed;
60 this->fNsigmas = source.fNsigmas;
61 this->fMaxAdc = source.fMaxAdc;
62 this->fDiffCoeff = source.fDiffCoeff;
63 this->fDiffCoeff1 = source.fDiffCoeff1;
64 this->fZeroSuppFlag = source.fZeroSuppFlag;
65 this->fMinVal = source.fMinVal;
66 this->fWrite = source.fWrite;
67 this->fBitComp = source.fBitComp;
68 this->fOption = source.fOption;
69 this->fParam1 = source.fParam1;
73 //_________________________________________________________________________
75 AliITSresponseSDD::operator=(const AliITSresponseSDD &source) {
76 // Assignment operator
77 if(&source == this) return *this;
79 for(i=0;i<8;i++){this->fCPar[i] = source.fCPar[i];}
80 this->fNoise = source.fNoise;
81 this->fBaseline = source.fBaseline;
82 this->fNoiseAfterEl = source.fNoiseAfterEl;
83 this->fDynamicRange = source.fDynamicRange;
84 this->fChargeLoss = source.fChargeLoss;
85 this->fTemperature = source.fTemperature;
86 this->fDriftSpeed = source.fDriftSpeed;
87 this->fNsigmas = source.fNsigmas;
88 this->fMaxAdc = source.fMaxAdc;
89 this->fDiffCoeff = source.fDiffCoeff;
90 this->fDiffCoeff1 = source.fDiffCoeff1;
91 this->fZeroSuppFlag = source.fZeroSuppFlag;
92 this->fMinVal = source.fMinVal;
93 this->fWrite = source.fWrite;
94 this->fBitComp = source.fBitComp;
95 this->fOption = source.fOption;
96 this->fParam1 = source.fParam1;
100 void AliITSresponseSDD::SetCompressParam(Int_t cp[8])
102 // set compression param
105 for (i=0; i<8; i++) {
107 //printf("\n CompressPar %d %d \n",i,fCPar[i]);
111 void AliITSresponseSDD::GiveCompressParam(Int_t cp[8])
113 // give compression param
116 for (i=0; i<8; i++) {
121 void AliITSresponseSDD::Print()
123 // Print SDD response Parameters
125 cout << "**************************************************" << endl;
126 cout << " Silicon Drift Detector Response Parameters " << endl;
127 cout << "**************************************************" << endl;
128 cout << "Diffusion Coefficients: " << fDiffCoeff << ", " << fDiffCoeff1 << endl;
130 cout << "Hardware compression parameters: " << endl;
131 for(Int_t i=0; i<8; i++) cout << "fCPar[" << i << "] = " << fCPar[i] << endl;
132 cout << "Noise before electronics (arbitrary units): " << fNoise << endl;
133 cout << "Baseline (ADC units): " << fBaseline << endl;
134 cout << "Noise after electronics (ADC units): " << fNoiseAfterEl << endl;
136 cout << "Dynamic Range: " << fDynamicRange << endl;
137 cout << "Charge Loss: " << fChargeLoss << endl;
138 cout << "Temperature: " << fTemperature << endl;
139 cout << "Drift Speed: " << fDriftSpeed << endl;
140 cout << "Electronics (1=PASCAL, 2=OLA): " << fElectronics << endl;
142 cout << "N. of Sigma for signal integration: " << fNsigmas << endl;
143 cout << "N. of bins in lookup table: " << fNcomps << endl;
145 cout << "Max. ADC Value: " << fMaxAdc << endl;
146 cout << "Min. Value: " << fMinVal << endl;
148 cout << "Zero suppression flag: " << fZeroSuppFlag << endl;
149 cout << "**************************************************" << endl;