wagon to the PWGPP train
[u/mrichter/AliRoot.git] / T0 / AliT0CalibOffsetChannelsTask.h
1 #ifndef AliT0CalibOffsetChannelsTask_cxx
2 #define AliT0CalibOffsetChannelsTask_cxx
3
4 // task determines mean and sigma of T0 signals  ORA, ORC, ORA-ORC, ORA+ORC/2  
5 // Authors: FK  
6
7 class TH1F;
8 class TObjArray; 
9 class AliESDEvent;
10
11 #include "AliAnalysisTaskSE.h"
12
13 class AliT0CalibOffsetChannelsTask : public AliAnalysisTaskSE {
14  public:
15   AliT0CalibOffsetChannelsTask();
16   AliT0CalibOffsetChannelsTask(const char *name);
17   virtual ~AliT0CalibOffsetChannelsTask(); 
18   
19   virtual void   UserCreateOutputObjects();
20   virtual void   UserExec(Option_t *option);
21   virtual void   Terminate(Option_t *);
22   TObjArray* GetOffsetHistos() {return fTzeroObject;}
23
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;};
33 private:
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 
42   int         fRunNumber;
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
48  
49
50   
51  
52   AliT0CalibOffsetChannelsTask(const AliT0CalibOffsetChannelsTask&); // not implemented
53   AliT0CalibOffsetChannelsTask& operator=(const AliT0CalibOffsetChannelsTask&); // not implemented
54   
55   ClassDef(AliT0CalibOffsetChannelsTask, 2); // example of analysis
56 };
57
58 #endif