1 #ifndef ALITRDINFOGEN_H
2 #define ALITRDINFOGEN_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 /* $Id: AliTRDinfoGen.h 27496 2008-07-22 08:35:45Z cblume $ */
8 ////////////////////////////////////////////////////////////////////////////
10 // Reconstruction QA //
12 ////////////////////////////////////////////////////////////////////////////
14 #ifndef ALITRDRECOTASK_H
15 #include "AliTRDrecoTask.h"
25 class AliTRDtrackInfo;
26 class AliTRDeventInfo;
28 class AliTRDeventCuts;
29 class AliESDtrackCuts;
31 class TTreeSRedirector;
32 class AliTRDinfoGen : public AliTRDrecoTask{
34 enum AliTRDinfoGenSteeringBits{
35 kUseLocalEvSelection = BIT(21)
36 ,kUseLocalTrkSelection = BIT(22)
40 AliTRDinfoGen(char* name);
41 virtual ~AliTRDinfoGen();
44 void UserCreateOutputObjects();
45 void UserExec(Option_t *);
46 void ConnectInputData(Option_t *opt) {AliAnalysisTaskSE::ConnectInputData(opt);}
47 static Float_t GetTPCx() { return fgkTPC;}
48 static Float_t GetTOFx() { return fgkTOF;}
50 Bool_t IsCollision() const {return TestBit(kCollision);}
51 Bool_t Load(const Char_t */*filename = "TRD.Performance.root"*/) {return kTRUE;}
52 Bool_t PostProcess() {return kTRUE;}
54 void SetCollision(Bool_t set=kTRUE) {SetBit(kCollision, set);}
55 void SetLocalEvSelection(AliTRDeventCuts */*cut*/){;}
56 void SetLocalEvSelection(Bool_t use=kTRUE) {SetBit(kUseLocalEvSelection, use);}
57 void SetLocalTrkSelection(AliESDtrackCuts */*cut*/){;}
58 void SetLocalTrkSelection(Bool_t use=kTRUE) {SetBit(kUseLocalTrkSelection, use);}
59 void SetTrigger(const Char_t *trigger) {fEvTrigger = trigger;}
61 Bool_t UseLocalEvSelection() const {return TestBit(kUseLocalEvSelection);}
62 Bool_t UseLocalTrkSelection() const {return TestBit(kUseLocalTrkSelection);}
65 // rough radial limits for TRD
66 static const Float_t fgkTPC; // end TPC
67 static const Float_t fgkTOF; // begin TOF
69 TString fEvTrigger; // list of trigger classes separated by space
71 static const Float_t fgkEvVertexZ;// cm
72 static const Int_t fgkEvVertexN;// cm
74 static const Float_t fgkTrkDCAxy; // cm
75 static const Float_t fgkTrkDCAz; // cm
76 static const Int_t fgkNclTPC; // N clusters TPC
77 static const Float_t fgkPt; // min. pt
78 static const Float_t fgkEta; // eta range
80 AliTRDinfoGen(const AliTRDinfoGen&);
81 AliTRDinfoGen& operator=(const AliTRDinfoGen&);
83 AliESDEvent *fESDev; //! ESD event
84 AliMCEvent *fMCev; //! MC event
85 AliTRDtrackInfo *fTrackInfo; //! Track info
86 AliTRDeventInfo *fEventInfo; //! Event info
87 TObjArray *fV0container; //! V0 container
88 AliTRDv0Info *fV0Info; //! V0 info
89 // event/track cuts OO - to be used
90 AliTRDeventCuts *fEventCut; // event cut
91 AliESDtrackCuts *fTrackCut; // track cut
93 ClassDef(AliTRDinfoGen, 4) // entry to TRD analysis train