class TH2I;
class TProfile2D;
class AliTRDCalibraVdriftLinearFit;
+class AliTRDCalibraExbAltFit;
class TH1I;
class TH2F;
class TString;
class AliTRDPreprocessorOffline:public TNamed {
public:
- enum{
- kGain = 0,
- kVdriftPHDet = 1,
- kVdriftPHPad = 2,
- kT0PHDet = 3,
- kT0PHPad = 4,
- kVdriftLinear = 5,
- kLorentzLinear = 6,
- kChamberStatus = 7,
- kPRF = 8
- };
+ enum{ kGain = 0,
+ kVdriftPHDet = 1,
+ kVdriftPHPad = 2,
+ kT0PHDet = 3,
+ kT0PHPad = 4,
+ kVdriftLinear = 5,
+ kLorentzLinear = 6,
+ kChamberStatus = 7,
+ kPRF = 8,
+ kExbAlt = 9,
+ kNumCalibObjs = 10
+ };
enum { kGainNotEnoughStatsButFill = 2,
kVdriftNotEnoughStatsButFill = 4,
kGainNotEnoughStatsNotFill = 8,
// Internal functions
void CalibVdriftT0(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
+ void CalibExbAlt(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
void CalibGain(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
void CalibPRF(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
void CalibChamberStatus(const Char_t* file, Int_t startRunNumber, Int_t endRunNumber, TString ocdbStorage="");
Bool_t ReadGainGlobal(const Char_t* fileName="CalibObjects.root");
Bool_t ReadVdriftT0Global(const Char_t* fileName="CalibObjects.root");
Bool_t ReadVdriftLinearFitGlobal(const Char_t* fileName="CalibObjects.root");
+ Bool_t ReadExbAltFitGlobal(const Char_t* fileName="CalibObjects.root");
Bool_t ReadPRFGlobal(const Char_t* fileName="CalibObjects.root");
Bool_t AnalyzeGain();
Bool_t AnalyzeVdriftT0();
Bool_t AnalyzeVdriftLinearFit();
+ Bool_t AnalyzeExbAltFit();
Bool_t AnalyzePRF();
Bool_t AnalyzeChamberStatus();
void UpdateOCDBT0(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
void UpdateOCDBVdrift(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
void UpdateOCDBExB(Int_t startRunNumber, Int_t endRunNumber, const Char_t *storagePath);
+ void UpdateOCDBExBAlt(Int_t startRunNumber, Int_t endRunNumber, const Char_t *storagePath);
void UpdateOCDBGain(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
void UpdateOCDBPRF(Int_t startRunNumber, Int_t endRunNumber, const char* storagePath);
void UpdateOCDBChamberStatus(Int_t startRunNumber, Int_t endRunNumber, const Char_t *storagePath);
TProfile2D *fPRF2d; // PRF
THnSparseI *fSparse; // chamberstatus
AliTRDCalibraVdriftLinearFit *fAliTRDCalibraVdriftLinearFit; // Drift velocity second method
+ AliTRDCalibraExbAltFit* fAliTRDCalibraExbAltFit; //ExB alternative method
TH1I *fNEvents; // Number of events
TH2F *fAbsoluteGain; // Absolute Gain calibration
TObjArray * fPlots; // array with some plots to check