1 #ifndef AliT0CalibOffsetChannelsTask_cxx
2 #define AliT0CalibOffsetChannelsTask_cxx
4 // task determines mean and sigma of T0 signals ORA, ORC, ORA-ORC, ORA+ORC/2
11 #include "AliAnalysisTaskSE.h"
13 class AliT0CalibOffsetChannelsTask : public AliAnalysisTaskSE {
15 AliT0CalibOffsetChannelsTask();
16 AliT0CalibOffsetChannelsTask(const char *name);
17 virtual ~AliT0CalibOffsetChannelsTask();
19 virtual void UserCreateOutputObjects();
20 virtual void UserExec(Option_t *option);
21 virtual void Terminate(Option_t *);
22 TObjArray* GetOffsetHistos() {return fTzeroObject;}
24 Float_t GetCFDvalue(Int_t channel) const {return fCDBcfds[channel];}
25 Float_t* GetCFDvalue() const {return (float*)fCDBcfds;}
26 Float_t GetTimeEq(Int_t channel) const {return fCDBdelays[channel];}
27 Float_t* GetTimeEq() const {return (float*)fCDBdelays;}
28 void SetCFDvalue(Int_t channel, Float_t val) {fCDBcfds[channel]=val;}
29 void SetTimeEq(Int_t channel, Float_t val) {fCDBdelays[channel]=val;}
30 Float_t *GetT0Means() { return fCDBT0s;}
31 void SetT0Means(Int_t ihist, Float_t mean ) {fCDBT0s[ihist]=mean;};
32 void SetRefPMT(Int_t refPMTA = 12, Int_t refPMTC=0) {fRefPMTA = refPMTA; fRefPMTC = refPMTC;};
34 AliESDEvent *fESD; //! ESD object
35 TObjArray *fTzeroObject; // array with CFDi-CFD1 and CFDi
36 TH1F *fTimeDiff[24]; //! CFDi-CFD1 vs Npmt
37 TH1F *fCFD[24]; //! CFDi vs Npmt
38 TH1F *fTzeroORA; //! or A spectrum
39 TH1F *fTzeroORC; //! or C spectrum
40 TH1F *fResolution; //! or A minus or C spectrum
41 TH1F *fTzeroORAplusORC; //! ORA+ORC /2
43 Float_t fCDBdelays[24]; //time delays from OCDB
44 Float_t fCDBcfds[24]; // mean CFD from OCDB
45 Float_t fCDBT0s[4]; //position T0AC, T0A, T0A, resolution
46 Int_t fRefPMTA; // ref. PMT A side
47 Int_t fRefPMTC; // ref. PMT C side
52 AliT0CalibOffsetChannelsTask(const AliT0CalibOffsetChannelsTask&); // not implemented
53 AliT0CalibOffsetChannelsTask& operator=(const AliT0CalibOffsetChannelsTask&); // not implemented
55 ClassDef(AliT0CalibOffsetChannelsTask, 2); // example of analysis