New method to clone current raw-data event and create a single-event raw-reader....
[u/mrichter/AliRoot.git] / ESDCheck / AliMUONQATask.h
1 #ifndef ALIMUONQATASK_H
2 #define ALIMUONQATASK_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5 //______________________________________________________________________________
6 /// An analysis task to check the MUON data in simulated data
7 /// This class checks out the ESD tree, providing the matching with
8 /// the trigger,trigger responses for Low and High Pt cuts
9 /// (in Single, Unlike Sign and Like Sign) and gives Pt, Y, ITS vertex
10 /// and multiplicity distributions. All results are in histogram form.
11 /// The output is a root file and eps files in MUON.tar.gz. 
12
13 //*-- Frederic Yermia
14 //////////////////////////////////////////////////////////////////////////////
15
16 #include <TLorentzVector.h>
17 #include "AliAnalysisTask.h"  
18
19 class AliESD ; 
20 class TH1F ;
21 class Tree ; 
22 class AliMUONQATask : public AliAnalysisTask {
23
24 public:
25   AliMUONQATask(const char *name) ;
26   virtual ~AliMUONQATask() ;
27    
28   virtual void Exec(Option_t * opt = "") ;
29   virtual void ConnectInputData(Option_t *);
30   virtual void CreateOutputObjects();
31   virtual void Terminate(Option_t * opt = "") ;
32
33 private:
34   TTree   * fChain ;            //!pointer to the analyzed TTree or TChain
35   AliESD  * fESD ;              //! Declaration of leave types
36
37   TObjArray * fOutputContainer ; //! output data container
38   
39   TLorentzVector fV1; //! Lorentz Momentum
40   Int_t fnTrackTrig ; //! Number of trigger matching tracks
41   Int_t ftracktot   ; //! Number of ESD tracks
42   Int_t fnevents    ; //! Number of events
43   Int_t fSLowpt     ; //! Single trigger response
44   Int_t fUSLowpt    ; //! Unlike Sign Low trigger response
45   Int_t fUSHighpt   ; //! Unlike Sign High trigger response
46   Int_t fLSLowpt    ; //! Like Sign Low trigger response
47   Int_t fLSHighpt   ; //! Like Sign High trigger response
48   Float_t fmuonMass ; //! Muon mass
49   Double_t fthetaX  ; //! Angle of track at vertex in X direction (rad)
50   Double_t fthetaY  ; //! Angle of track at vertex in Y direction (rad)
51   Double_t fpYZ     ; //! Bending Momentum
52   Double_t fPxRec1  ; //! X rec. Momentum
53   Double_t fPyRec1  ; //! Y rec. Momentum
54   Double_t fPzRec1  ; //! Z rec. Momentum
55   Double_t fE1      ; //! Muon Enenrgy
56   Int_t fZ1         ; //! Z coordinate (cm)
57
58   // Histograms
59   TH1F * fhMUONVertex ; //! ITS Z-Vertex
60   TH1F * fhMUONMult   ; //! Track Multilicity
61   TH1F * fhPt   ;       //! Track transverse momentum
62   TH1F * fhY   ;        //!  Track rapidity
63   TH1F * fheffMatchT ;  //! Efficiency of trigger matching
64   TH1F * fhSLowpt ;     //! Percent of single response
65   TH1F * fhUSLowpt ;    //! Percent of US Low response
66   TH1F * fhUSHighpt ;   //! Percent of US High response
67   TH1F * fhLSLowpt ;    //! Percent of LS Low response
68   TH1F * fhLSHighpt ;   //! Percent of LS High response
69   TH1F * fhChi2   ;      //! Track Chi Square by d.o.f.
70   TH1F * fhChi2match ;  //! Chi2 of trigger/track matching 
71
72   AliMUONQATask(const AliMUONQATask&); // Not implemented
73   AliMUONQATask& operator=(const AliMUONQATask&); // Not implemented
74
75   ClassDef(AliMUONQATask, 0); // a MUON photon analysis task 
76 };
77 #endif // ALIMUONQATASK_H