]> git.uio.no Git - u/mrichter/AliRoot.git/blob - T0/AliT0CalibOffsetChannelsTask.h
new pedestal treatment
[u/mrichter/AliRoot.git] / T0 / AliT0CalibOffsetChannelsTask.h
1 #ifndef AliT0CalibOffsetChannelsTask_cxx\r
2 #define AliT0CalibOffsetChannelsTask_cxx\r
3 \r
4 // task determines mean and sigma of T0 signals  ORA, ORC, ORA-ORC, ORA+ORC/2  \r
5 // Authors: FK  \r
6 \r
7 class TH1F;\r
8 class TObjArray; \r
9 class AliESDEvent;\r
10 \r
11 #include "AliAnalysisTaskSE.h"\r
12 \r
13 class AliT0CalibOffsetChannelsTask : public AliAnalysisTaskSE {\r
14  public:\r
15   AliT0CalibOffsetChannelsTask();\r
16   AliT0CalibOffsetChannelsTask(const char *name);\r
17   virtual ~AliT0CalibOffsetChannelsTask(); \r
18   \r
19   virtual void   UserCreateOutputObjects();\r
20   virtual void   UserExec(Option_t *option);\r
21   virtual void   Terminate(Option_t *);\r
22   TObjArray* GetOffsetHistos() {return fTzeroObject;}\r
23 \r
24   Float_t  GetCFDvalue(Int_t channel)  const {return fCDBcfds[channel];}\r
25   Float_t* GetCFDvalue()          const {return (float*)fCDBcfds;}\r
26   Float_t  GetTimeEq(Int_t channel)        const {return fCDBdelays[channel];}\r
27   Float_t* GetTimeEq()          const {return (float*)fCDBdelays;}\r
28   void SetCFDvalue(Int_t channel, Float_t val) {fCDBcfds[channel]=val;}\r
29   void SetTimeEq(Int_t channel, Float_t val) {fCDBdelays[channel]=val;}\r
30   Float_t *GetT0Means() { return fCDBT0s;}\r
31   void SetT0Means(Int_t ihist, Float_t mean ) {fCDBT0s[ihist]=mean;};\r
32   void SetRefPMT(Int_t refPMTA = 12, Int_t refPMTC=0) {fRefPMTA = refPMTA; fRefPMTC = refPMTC;};\r
33 private:\r
34   AliESDEvent *fESD;          //! ESD object\r
35   TObjArray   *fTzeroObject;  // array with CFDi-CFD1 and  CFDi\r
36   TH1F        *fTimeDiff[24]; //! CFDi-CFD1 vs Npmt   \r
37   TH1F        *fCFD[24];      //! CFDi  vs Npmt \r
38   TH1F        *fTzeroORA;     //! or A spectrum    \r
39   TH1F        *fTzeroORC;     //! or C spectrum    \r
40   TH1F        *fResolution;   //! or A minus or C spectrum    \r
41   TH1F        *fTzeroORAplusORC; //! ORA+ORC /2 \r
42   int         fRunNumber;\r
43   Float_t fCDBdelays[24];  //time delays from OCDB\r
44   Float_t fCDBcfds[24];    // mean CFD from OCDB\r
45   Float_t fCDBT0s[4];      //position T0AC, T0A, T0A, resolution\r
46   Int_t fRefPMTA;           // ref. PMT A side \r
47   Int_t fRefPMTC;           // ref. PMT C side\r
48  \r
49 \r
50   \r
51  \r
52   AliT0CalibOffsetChannelsTask(const AliT0CalibOffsetChannelsTask&); // not implemented\r
53   AliT0CalibOffsetChannelsTask& operator=(const AliT0CalibOffsetChannelsTask&); // not implemented\r
54   \r
55   ClassDef(AliT0CalibOffsetChannelsTask, 2); // example of analysis\r
56 };\r
57 \r
58 #endif\r