]>
Commit | Line | Data |
---|---|---|
1ee39b3a | 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 */ | |
5 | ||
6 | /* $Id: AliTRDinfoGen.h 27496 2008-07-22 08:35:45Z cblume $ */ | |
7 | ||
8 | //////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
705f8b0a | 10 | // TRD Performance tender wagon // |
1ee39b3a | 11 | // // |
12 | //////////////////////////////////////////////////////////////////////////// | |
13 | ||
705f8b0a | 14 | #ifndef ALIANALYSISTASKSE_H |
15 | #include "AliAnalysisTaskSE.h" | |
3f19c2cd | 16 | #endif |
17 | ||
1ee39b3a | 18 | class AliESDEvent; |
19 | class AliMCEvent; | |
20 | class AliESDfriend; | |
21 | class AliTRDtrackInfo; | |
22 | class AliTRDeventInfo; | |
23 | class AliTRDv0Info; | |
07ece31c | 24 | class AliTRDeventCuts; |
25 | class AliESDtrackCuts; | |
1ee39b3a | 26 | class TObjArray; |
705f8b0a | 27 | class TString; |
1ee39b3a | 28 | class TTreeSRedirector; |
705f8b0a | 29 | class AliTRDinfoGen : public AliAnalysisTaskSE |
30 | { | |
1ee39b3a | 31 | public: |
3f19c2cd | 32 | enum AliTRDinfoGenSteeringBits{ |
705f8b0a | 33 | kMCdata = BIT(18) |
34 | ,kUseLocalEvSelection = BIT(19) | |
35 | ,kUseLocalTrkSelection = BIT(20) | |
36 | ,kCollision = BIT(21) | |
3f19c2cd | 37 | }; |
705f8b0a | 38 | |
1ee39b3a | 39 | AliTRDinfoGen(); |
f8f46e4d | 40 | AliTRDinfoGen(char* name); |
1ee39b3a | 41 | virtual ~AliTRDinfoGen(); |
42 | ||
b4414720 | 43 | void ConnectInputData(Option_t *opt) {AliAnalysisTaskSE::ConnectInputData(opt);} |
3d2a3dff | 44 | static Float_t GetEndITS() { return fgkITS;} |
45 | static Float_t GetEndTPC() { return fgkTPC;} | |
46 | static Float_t GetEndTRD() { return fgkTRD;} | |
1ee39b3a | 47 | |
705f8b0a | 48 | Bool_t HasMCdata() const { return TestBit(kMCdata);}; |
afca20ef | 49 | // temporary until check with AliAnalysisTaskSE collision selection mechannism |
3f19c2cd | 50 | Bool_t IsCollision() const {return TestBit(kCollision);} |
3f19c2cd | 51 | void SetCollision(Bool_t set=kTRUE) {SetBit(kCollision, set);} |
afca20ef | 52 | |
07ece31c | 53 | void SetLocalEvSelection(AliTRDeventCuts */*cut*/){;} |
3f19c2cd | 54 | void SetLocalEvSelection(Bool_t use=kTRUE) {SetBit(kUseLocalEvSelection, use);} |
07ece31c | 55 | void SetLocalTrkSelection(AliESDtrackCuts */*cut*/){;} |
3f19c2cd | 56 | void SetLocalTrkSelection(Bool_t use=kTRUE) {SetBit(kUseLocalTrkSelection, use);} |
705f8b0a | 57 | void SetMCdata(Bool_t mc = kTRUE) {SetBit(kMCdata, mc);} |
58 | void SetTrigger(const Char_t *trigger); | |
3f19c2cd | 59 | |
60 | Bool_t UseLocalEvSelection() const {return TestBit(kUseLocalEvSelection);} | |
61 | Bool_t UseLocalTrkSelection() const {return TestBit(kUseLocalTrkSelection);} | |
705f8b0a | 62 | void UserCreateOutputObjects(); |
63 | void UserExec(Option_t *); | |
3f19c2cd | 64 | |
1ee39b3a | 65 | private: |
3f19c2cd | 66 | // rough radial limits for TRD |
3d2a3dff | 67 | static const Float_t fgkITS; // end ITS |
3f19c2cd | 68 | static const Float_t fgkTPC; // end TPC |
3d2a3dff | 69 | static const Float_t fgkTRD; // end TRD |
70 | ||
3f19c2cd | 71 | // Trigger selection |
705f8b0a | 72 | TString *fEvTrigger; // list of trigger classes separated by space |
3f19c2cd | 73 | // Vertex selection |
74 | static const Float_t fgkEvVertexZ;// cm | |
75 | static const Int_t fgkEvVertexN;// cm | |
76 | // Track selection | |
77 | static const Float_t fgkTrkDCAxy; // cm | |
78 | static const Float_t fgkTrkDCAz; // cm | |
79 | static const Int_t fgkNclTPC; // N clusters TPC | |
80 | static const Float_t fgkPt; // min. pt | |
81 | static const Float_t fgkEta; // eta range | |
07ece31c | 82 | |
1ee39b3a | 83 | AliTRDinfoGen(const AliTRDinfoGen&); |
84 | AliTRDinfoGen& operator=(const AliTRDinfoGen&); | |
705f8b0a | 85 | TTreeSRedirector* DebugStream(); |
1ee39b3a | 86 | |
87 | AliESDEvent *fESDev; //! ESD event | |
88 | AliMCEvent *fMCev; //! MC event | |
07ece31c | 89 | // event/track cuts OO - to be used |
90 | AliTRDeventCuts *fEventCut; // event cut | |
91 | AliESDtrackCuts *fTrackCut; // track cut | |
705f8b0a | 92 | AliTRDtrackInfo *fTrackInfo; //! Track info |
93 | AliTRDeventInfo *fEventInfo; //! Event info | |
94 | AliTRDv0Info *fV0Info; //! V0 info | |
95 | TObjArray *fTracksBarrel; //! Array of barrel tracks | |
96 | TObjArray *fTracksSA; //! Array of stand alone tracks | |
97 | TObjArray *fTracksKink; //! Array of kink tracks | |
98 | TObjArray *fV0List; //! V0 container | |
99 | TTreeSRedirector *fDebugStream; //! debug stream | |
1ee39b3a | 100 | |
705f8b0a | 101 | ClassDef(AliTRDinfoGen, 5) // entry to TRD analysis train |
1ee39b3a | 102 | }; |
103 | #endif |