]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TRD/qaAnalysis/AliTRDqaJPsi.h
8d8619a2c0b7ee67385ed622289486e0b188044e
[u/mrichter/AliRoot.git] / TRD / qaAnalysis / AliTRDqaJPsi.h
1 #ifndef ALITRDQAJPSI_H
2 #define ALITRDQAJPSI_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5
6 //
7 // This class is a part of a package of high level QA monitoring for TRD.
8 //
9 // S. Radomski
10 // radomski@physi.uni-heidelberg.de
11 // March 2008
12 //
13
14 #include "AliAnalysisTask.h"  
15
16 class TTree; 
17 class AliESDEvent; 
18 class AliESDtrack;
19 class TH1D; 
20 class TH2D;
21 class AliExternalTrackParam;
22 class AliKFParticle;
23 class TLorentzVector;
24
25 class AliTRDqaJPsi : public AliAnalysisTask {
26
27  public:
28
29   AliTRDqaJPsi();
30   AliTRDqaJPsi(const char *name);
31   AliTRDqaJPsi(AliTRDqaJPsi& trd);
32   AliTRDqaJPsi& operator = (const AliTRDqaJPsi& /*g*/) { return *this; };
33   virtual ~AliTRDqaJPsi() {}
34    
35   virtual void Exec(Option_t * opt = "");
36   virtual void ConnectInputData(Option_t *);
37   virtual void CreateOutputObjects();
38   virtual void Terminate(Option_t * opt = "");
39
40  private:
41  
42   TTree        * fChain;             //!pointer to the analyzed TTree or TChain
43   AliESDEvent  * fESD;               //! Declaration of leave types
44
45   TObjArray * fOutputContainer; //! output data container
46   
47   // histograms
48
49   static const Int_t knSteps = 5;   // number of analysis steps (arbitrary)
50
51   TH1D *fStatus[knSteps];      // track status
52   TH1D *fnTracks[2*knSteps];   // number of tracks
53   TH1D *fPt[2*knSteps];        // transverse momentum
54   TH1D *fPID[2*knSteps];       // PID LQ
55   TH1D *fAngleSM[knSteps];     // difference in SM ID
56   
57   //TH2D *fnGoodTracks;          // correlation of the final number of Pos and Neg tracks
58   TH1D *fInvMass[knSteps];       // invariant mass using different cuts
59   TH1D *fInvMassVec[knSteps];    //
60   TH1D *fInvMassDiff[knSteps];   //
61
62   TH2D *fPtAngle[knSteps];
63
64   // tracks
65   AliKFParticle *tracks[1000];
66   TLorentzVector *vec[1000];
67   Int_t fInSample[1000][knSteps];
68   Int_t fSM[1000];
69   Int_t fnKFtracks; //[2];
70   
71   // helper functions
72   void FillHist(AliESDtrack *track, Int_t step);
73   TLorentzVector *CreateVector(AliESDtrack *track);
74
75
76   ClassDef(AliTRDqaJPsi, 0); // a TRD analysis task 
77 };
78 #endif // ALITRDQAJPSI_H