class TArrayF;
class TF1;
class TH1F;
+class TH1C;
class TObjArray;
class TTree;
class TChain;
class AliTOFRunParams;
class AliTOFResponseParams;
class AliESDEvent;
+class AliLHCClockPhase;
class AliTOFcalib:public TTask{
public:
void WriteT0FillOnCDB(const Char_t *sel, Int_t minrun, Int_t maxrun);
void WriteRunParamsOnCDB(const Char_t *sel, Int_t minrun, Int_t maxrun);
void WriteReadoutEfficiencyOnCDB(const Char_t *sel, Int_t minrun, Int_t maxrun);
+ void WriteProblematicOnCDB(const Char_t *sel, Int_t minrun, Int_t maxrun);
// reading
Bool_t ReadSimHistoFromCDB(const Char_t *sel, Int_t nrun);
Bool_t ReadCTPLatencyFromCDB(const Char_t *sel, Int_t nrun);
Bool_t ReadT0FillFromCDB(const Char_t *sel, Int_t nrun);
Bool_t ReadRunParamsFromCDB(const Char_t *sel, Int_t nrun);
+ Bool_t ReadLHCClockPhaseFromCDB(const Char_t *sel, Int_t nrun);
Bool_t ReadReadoutEfficiencyFromCDB(const Char_t *sel, Int_t nrun);
+ Bool_t ReadProblematicFromCDB(const Char_t *sel, Int_t nrun);
Bool_t Init(Int_t run = -1); // init
Double_t GetTimeCorrection(Int_t index, Double_t tot, Int_t deltaBC, Int_t l0l1, UInt_t timestamp); // get time correction
void CalibrateESD(AliESDEvent *event); // calibrate ESD
void CalibrateTExp(AliESDEvent *event) const; // calibrate TExp
void SetRemoveMeanT0(Bool_t value) {fRemoveMeanT0 = value;}; // setter
+ void SetUseLHCClockPhase(Bool_t value) {fUseLHCClockPhase = value;}; // setter
+ Bool_t GetUseLHCClockPhase() const {return fUseLHCClockPhase;}; // getter
void SetCalibrateTOFsignal(Bool_t value) {fCalibrateTOFsignal = value;}; // setter
void SetCorrectTExp(Bool_t value) {fCorrectTExp = value;}; // setter
- Bool_t IsChannelEnabled(Int_t index, Bool_t checkEfficiency = kTRUE); // is channel enabled
+ Bool_t IsChannelEnabled(Int_t index, Bool_t checkEfficiency = kTRUE, Bool_t checkProblematic = kTRUE); // is channel enabled
Bool_t IsChannelEfficient(Int_t index); // is channel efficient
+ Bool_t IsChannelProblematic(Int_t index); // is channel problematic
Double_t TuneForMC(AliESDEvent *event, Double_t resolution); // tune for MC
+ void SetRunParamsSpecificVersion(Int_t value) {fRunParamsSpecificVersion = value;}; // setter
+
private:
Int_t fNChannels; // number of TOF channels
AliTOFCTPLatency *fCTPLatency; // CTP latency
AliTOFT0Fill *fT0Fill; // T0 fill
AliTOFRunParams *fRunParams; // run params
+ AliLHCClockPhase *fLHCClockPhase; // LHC clock-phase
AliTOFResponseParams *fResponseParams; // run params
TH1F *fReadoutEfficiency; // readout efficiency
+ TH1C *fProblematic; // problematic
Bool_t fInitFlag; // init flag
Bool_t fRemoveMeanT0; // remove mean T0
+ Bool_t fUseLHCClockPhase; // use LHC clock-phase
Bool_t fCalibrateTOFsignal; // calibrate TOF signal
Bool_t fCorrectTExp; // correct expected time
- ClassDef(AliTOFcalib,10);
+ Int_t fRunParamsSpecificVersion; // RunParams specific version
+ ClassDef(AliTOFcalib,11);
};
#endif // AliTOFcalib_H