]>
Commit | Line | Data |
---|---|---|
be94a07d | 1 | #ifndef ALIEMCALPHYSICSSELECTION_H |
2 | #define ALIEMCALPHYSICSSELECTION_H | |
3 | ||
be94a07d | 4 | #include "AliPhysicsSelection.h" |
5 | ||
6 | class AliEmcalPhysicsSelection: public AliPhysicsSelection | |
7 | { | |
8 | public: | |
fb81cdb7 | 9 | enum EOfflineEmcalTypes { |
10 | kEmcalHC = BIT(28), //=true when EMCAL cell above given Et found | |
11 | kEmcalHT = BIT(29), //=true when EMCAL cluster above given Et found | |
ccd733eb | 12 | kEmcalOk = BIT(31), //=true when EMCAL good event criteria are found |
fb81cdb7 | 13 | }; |
14 | ||
15 | AliEmcalPhysicsSelection(); | |
be94a07d | 16 | virtual ~AliEmcalPhysicsSelection() {;} |
17 | ||
18 | virtual UInt_t GetSelectionMask(const TObject* obj); | |
19 | ||
fb81cdb7 | 20 | void SetCellMinE(Double_t e) { fCellMinE = e; } |
1dc3ded9 | 21 | void SetCentRange(Double_t min, Double_t max) { fCentMin = min; fCentMax = max; } |
22 | void SetCheckZvertexDiff(Bool_t b) { fZvertexDiff = b; } | |
fb81cdb7 | 23 | void SetClusMinE(Double_t e) { fClusMinE = e; } |
24 | void SetMarkFastOnly(Bool_t b) { fMarkFastOnly = b; } | |
25 | void SetMarkLedEvent(Bool_t b) { fMarkLedEvent = b; } | |
26 | void SetSkipFastOnly(Bool_t b) { fSkipFastOnly = b; } | |
27 | void SetSkipLedEvent(Bool_t b) { fSkipLedEvent = b; } | |
6ae59723 | 28 | void SetSkip1024Bug(Bool_t b) { fSkip1024Bug = b; } |
2c091b4a | 29 | void SetTrackMinPt(Double_t p) { fTrackMinPt = p; } |
30 | void SetTriggers(UInt_t t) { fTriggers = t; } | |
1dc3ded9 | 31 | void SetZVertex(Double_t z=10) { fZvertex = z; } |
6a7fb48f | 32 | void SetCellTrackScale(Double_t min, Double_t max) { fMinCellTrackScale = min; fMaxCellTrackScale = max; } |
1dc3ded9 | 33 | |
2c091b4a | 34 | Double_t GetCellMaxE() const { return fCellMaxE; } |
35 | Double_t GetClusMaxE() const { return fClusMaxE; } | |
36 | Double_t GetTrackMaxPt() const { return fTrackMaxPt; } | |
37 | Bool_t IsFastOnly() const { return fIsFastOnly; } | |
38 | Bool_t IsLedEvent() const { return fIsLedEvent; } | |
39 | Bool_t IsGoodEvent() const { return fIsGoodEvent; } | |
be94a07d | 40 | |
41 | protected: | |
6a7fb48f | 42 | Bool_t fMarkFastOnly; //=true then mark FastOnly events (only for LHC11a) |
43 | Bool_t fMarkLedEvent; //=true then mark Led events (only for LHC11a) | |
44 | Bool_t fSkipFastOnly; //=true then skip FastOnly events (only for LHC11a) | |
45 | Bool_t fSkipLedEvent; //=true then skip Led events (only for LHC11a) | |
6ae59723 | 46 | Bool_t fSkip1024Bug; //=true then skip 1024 EMC trigger bug (only for LHC11h) |
6a7fb48f | 47 | Double_t fCellMinE; //minimum cell energy (<0 -> do not compute) |
48 | Double_t fClusMinE; //minimum clus energy (<0 -> do not compute) | |
49 | Double_t fTrackMinPt; //minimum track pt (<0 -> do not compute) | |
50 | UInt_t fTriggers; //if not zero only process given trigges | |
51 | Double_t fZvertex; //primary vertex z cut (-1 none) | |
52 | Bool_t fZvertexDiff; //=true then select on PRI minus SPD z-vertex | |
53 | Double_t fCentMin; //minimum centrality required (V0M) | |
54 | Double_t fCentMax; //maximum centrality required (V0M) | |
55 | Double_t fMinCellTrackScale; //minimum cells over tracks scale | |
56 | Double_t fMaxCellTrackScale; //maximum cells over tracks scale | |
57 | Bool_t fIsFastOnly; //!=true if FASTONLY event is found | |
58 | Bool_t fIsLedEvent; //!=true if LED event is found | |
59 | Bool_t fIsGoodEvent; //!=true if good EMCAL event | |
60 | Double_t fCellMaxE; //!maximum cell energy in event | |
61 | Double_t fClusMaxE; //!maximum clus energy in event | |
62 | Double_t fTrackMaxPt; //!maximum track pt in event | |
1dc3ded9 | 63 | |
6ae59723 | 64 | ClassDef(AliEmcalPhysicsSelection, 5); // Emcal physics selection |
be94a07d | 65 | }; |
66 | #endif |