#ifndef ALIITSCALIBRATIONSSD_H
#define ALIITSCALIBRATIONSSD_H
#include "AliITSCalibration.h"
#include "AliITSNoiseSSDv2.h"
#include "AliITSPedestalSSDv2.h"
#include "AliITSGainSSDv2.h"
#include "AliITSBadChannelsSSDv2.h"
class AliITSCalibrationSSD : public AliITSCalibration {
public:
AliITSCalibrationSSD();
AliITSCalibrationSSD(const char *dataType);
virtual ~AliITSCalibrationSSD();
Float_t GetNoiseP(Int_t n) {return fNoise->GetNoiseP(fModule,n); }
Float_t GetNoiseN(Int_t n) {return fNoise->GetNoiseN(fModule,n); }
void SetNoise( AliITSNoiseSSDv2* noise) {fNoise=noise;}
Float_t GetPedestalP(Int_t n) {return fPedestal->GetPedestalP(fModule,n); }
Float_t GetPedestalN(Int_t n) {return fPedestal->GetPedestalN(fModule,n); }
void SetPedestal( AliITSPedestalSSDv2* pedestal) {fPedestal=pedestal;}
Float_t GetGainP(Int_t n) {return fGain->GetGainP(fModule,n); }
Float_t GetGainN(Int_t n) {return fGain->GetGainN(fModule,n); }
void SetGainP(Int_t n, Float_t value) {fGain->AddGainP(fModule,n,value);}
void SetGainN(Int_t n, Float_t value) {fGain->AddGainN(fModule,n,value);}
void SetGain( AliITSGainSSDv2* gain) {fGain=gain;}
void SetBad() {
fIsBad = kTRUE;
for(Int_t i=0;i<fgkChipsPerModule;i++) fIsChipBad[i]=kTRUE;
}
virtual Bool_t IsBad() const { return fIsBad; }
void SetChipBad(Int_t nChip) {
fIsChipBad[nChip] = kTRUE;
}
void FillBadChipMap();
virtual Bool_t IsChipBad(Int_t nChip) const {
return fIsChipBad[nChip];
}
Int_t ChipsPerModule() const{return fgkChipsPerModule;}
Int_t ChannelsPerChip() const{ return fgkChannelsPerChip;}
void SetBadChannels( AliITSBadChannelsSSDv2* badchannels) {
fBadChannels=badchannels;}
Char_t GetBadPChannel(Int_t n) {
return fBadChannels->GetBadChannelP(fModule,n); }
Char_t GetBadNChannel(Int_t n) {
return fBadChannels->GetBadChannelN(fModule,n); }
Bool_t IsPChannelBad(Int_t n) {
return fBadChannels->GetBadChannelP(fModule,n)&1; }
Bool_t IsNChannelBad(Int_t n) {
return fBadChannels->GetBadChannelN(fModule,n)&1; }
virtual void SetNDetParam(Int_t npar) {
fNPar=npar;
}
virtual void SetDetParam(Double_t *par);
virtual Int_t NDetParam() const {
return fNPar;
}
virtual void GetDetParam(Double_t *dpar) const;
virtual void SetSigmaSpread(Double_t, Double_t) {
NotImplemented("SetSigmaSpread");}
virtual void SigmaSpread(Double_t &, Double_t &) const {
NotImplemented("SetSigmaSpread");}
void SetModule(Int_t mod){fModule = mod;}
void SetModuleIndex(Int_t modId){
fModule=modId-500;
FillBadChipMap();
}
void SetKeVperADC(Double_t a=86.4/120.){fKeVperADC = a;}
Double_t ADCToKeV(Double_t adc) const {return adc*fKeVperADC;}
void SetSSDADCpereV(Double_t a=(120./24888.9)*(85.0/77.0)){fSSDADCpereV = a;}
Double_t GetSSDDEvToADC(Double_t eV) const {return eV*fSSDADCpereV;}
Int_t GetSSDIEvToADC(Double_t eV) const {
return ((Int_t) GetSSDDEvToADC(eV)); }
protected:
static const Int_t fgkChipsPerModule = 12;
static const Int_t fgkChannelsPerChip = 128;
static const Int_t fgkNParDefault;
Int_t fModule;
Int_t fNPar;
Double_t *fDetPar;
AliITSNoiseSSDv2 *fNoise;
AliITSPedestalSSDv2 *fPedestal;
AliITSGainSSDv2 *fGain;
AliITSBadChannelsSSDv2 *fBadChannels;
Bool_t fIsBad;
Bool_t fIsChipBad[fgkChipsPerModule];
Double_t fSSDADCpereV;
Double_t fKeVperADC;
private:
AliITSCalibrationSSD(const AliITSCalibrationSSD &source);
AliITSCalibrationSSD& operator=(const AliITSCalibrationSSD &source);
ClassDef(AliITSCalibrationSSD,6)
};
#endif
AliITSCalibrationSSD.h:10 AliITSCalibrationSSD.h:11 AliITSCalibrationSSD.h:12 AliITSCalibrationSSD.h:13 AliITSCalibrationSSD.h:14 AliITSCalibrationSSD.h:15 AliITSCalibrationSSD.h:16 AliITSCalibrationSSD.h:17 AliITSCalibrationSSD.h:18 AliITSCalibrationSSD.h:19 AliITSCalibrationSSD.h:20 AliITSCalibrationSSD.h:21 AliITSCalibrationSSD.h:22 AliITSCalibrationSSD.h:23 AliITSCalibrationSSD.h:24 AliITSCalibrationSSD.h:25 AliITSCalibrationSSD.h:26 AliITSCalibrationSSD.h:27 AliITSCalibrationSSD.h:28 AliITSCalibrationSSD.h:29 AliITSCalibrationSSD.h:30 AliITSCalibrationSSD.h:31 AliITSCalibrationSSD.h:32 AliITSCalibrationSSD.h:33 AliITSCalibrationSSD.h:34 AliITSCalibrationSSD.h:35 AliITSCalibrationSSD.h:36 AliITSCalibrationSSD.h:37 AliITSCalibrationSSD.h:38 AliITSCalibrationSSD.h:39 AliITSCalibrationSSD.h:40 AliITSCalibrationSSD.h:41 AliITSCalibrationSSD.h:42 AliITSCalibrationSSD.h:43 AliITSCalibrationSSD.h:44 AliITSCalibrationSSD.h:45 AliITSCalibrationSSD.h:46 AliITSCalibrationSSD.h:47 AliITSCalibrationSSD.h:48 AliITSCalibrationSSD.h:49 AliITSCalibrationSSD.h:50 AliITSCalibrationSSD.h:51 AliITSCalibrationSSD.h:52 AliITSCalibrationSSD.h:53 AliITSCalibrationSSD.h:54 AliITSCalibrationSSD.h:55 AliITSCalibrationSSD.h:56 AliITSCalibrationSSD.h:57 AliITSCalibrationSSD.h:58 AliITSCalibrationSSD.h:59 AliITSCalibrationSSD.h:60 AliITSCalibrationSSD.h:61 AliITSCalibrationSSD.h:62 AliITSCalibrationSSD.h:63 AliITSCalibrationSSD.h:64 AliITSCalibrationSSD.h:65 AliITSCalibrationSSD.h:66 AliITSCalibrationSSD.h:67 AliITSCalibrationSSD.h:68 AliITSCalibrationSSD.h:69 AliITSCalibrationSSD.h:70 AliITSCalibrationSSD.h:71 AliITSCalibrationSSD.h:72 AliITSCalibrationSSD.h:73 AliITSCalibrationSSD.h:74 AliITSCalibrationSSD.h:75 AliITSCalibrationSSD.h:76 AliITSCalibrationSSD.h:77 AliITSCalibrationSSD.h:78 AliITSCalibrationSSD.h:79 AliITSCalibrationSSD.h:80 AliITSCalibrationSSD.h:81 AliITSCalibrationSSD.h:82 AliITSCalibrationSSD.h:83 AliITSCalibrationSSD.h:84 AliITSCalibrationSSD.h:85 AliITSCalibrationSSD.h:86 AliITSCalibrationSSD.h:87 AliITSCalibrationSSD.h:88 AliITSCalibrationSSD.h:89 AliITSCalibrationSSD.h:90 AliITSCalibrationSSD.h:91 AliITSCalibrationSSD.h:92 AliITSCalibrationSSD.h:93 AliITSCalibrationSSD.h:94 AliITSCalibrationSSD.h:95 AliITSCalibrationSSD.h:96 AliITSCalibrationSSD.h:97 AliITSCalibrationSSD.h:98 AliITSCalibrationSSD.h:99 AliITSCalibrationSSD.h:100 AliITSCalibrationSSD.h:101 AliITSCalibrationSSD.h:102 AliITSCalibrationSSD.h:103 AliITSCalibrationSSD.h:104 AliITSCalibrationSSD.h:105 AliITSCalibrationSSD.h:106 AliITSCalibrationSSD.h:107 AliITSCalibrationSSD.h:108 AliITSCalibrationSSD.h:109 AliITSCalibrationSSD.h:110 AliITSCalibrationSSD.h:111 AliITSCalibrationSSD.h:112 AliITSCalibrationSSD.h:113 AliITSCalibrationSSD.h:114 AliITSCalibrationSSD.h:115 AliITSCalibrationSSD.h:116 AliITSCalibrationSSD.h:117 AliITSCalibrationSSD.h:118 AliITSCalibrationSSD.h:119 AliITSCalibrationSSD.h:120 AliITSCalibrationSSD.h:121 AliITSCalibrationSSD.h:122 AliITSCalibrationSSD.h:123 AliITSCalibrationSSD.h:124 AliITSCalibrationSSD.h:125 AliITSCalibrationSSD.h:126