]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/AliTRDTriggerAnalysis.h
Femto QA task to be run in the QA train
[u/mrichter/AliRoot.git] / ANALYSIS / AliTRDTriggerAnalysis.h
1 /* Copyright(c) 2013, ALICE Experiment at CERN, All rights reserved.      *
2  * See cxx source for full Copyright notice                               */
3
4 // evaluate TRD trigger conditions,
5 // potentially with hardened conditions to remove
6 // triggers caused by conversions of low-pt photons
7 // at large radii
8 //
9 // Author: Jochen Klein <jochen.klein@cern.ch>
10
11 #ifndef ALITRDTRIGGERANALYSIS_H
12 #define ALITRDTRIGGERANALYSIS_H
13
14 class AliVEvent;
15
16 class AliTRDTriggerAnalysis : public TObject
17 {
18 public:
19   AliTRDTriggerAnalysis();
20   ~AliTRDTriggerAnalysis();
21
22   enum TRDTrigger_t { kHCO = 0, kHJT, kHSE, kHQU, kHEE };
23
24   void ResetTriggers() { fTriggerFlags = fTriggerInputs = fTriggerClasses = 0; }
25   Bool_t CalcTriggers(const AliVEvent* event);
26
27   Bool_t IsFired(TRDTrigger_t trg) const { return (fTriggerFlags & (1 << trg)); }
28
29 protected:
30   void Fire(TRDTrigger_t trg) { fTriggerFlags |= (1 << trg); }
31
32   // configuration
33   UChar_t fTriggerFlags;   // internal representation of trigger decisions
34   UChar_t fTriggerInputs;  // internal representation of trigger decisions
35   UChar_t fTriggerClasses; // internal representation of trigger decisions
36   Bool_t fRequireMatch;    // require a matched global track
37                            // for all conditions
38   Bool_t fRequireMatchElectron; // require a matched global track
39                                 // for the electron conditions
40   Bool_t fRequireInTime;        // require the tracks to be in time
41
42   // trigger thresholds
43   Float_t fTRDptHSE;            // pt threshold for HSE trigger
44   UChar_t fTRDpidHSE;           // PID threshold for HSE trigger
45   Float_t fTRDptHQU;            // pt threshold for HQU trigger
46   UChar_t fTRDpidHQU;           // PID threshold for HQU trigger
47   Float_t fTRDptHEE;            // pt threshold for HEE trigger
48   UChar_t fTRDpidHEE;           // PID threshold for HEE trigger
49   UChar_t fTRDminSectorHEE;     // min sector for HEE trigger
50   UChar_t fTRDmaxSectorHEE;     // max sector for HEE trigger
51   Float_t fTRDptHJT;            // pt threshold for HJT trigger
52   UChar_t fTRDnHJT;             // no of track threshold for HJT trigger
53
54   ClassDef(AliTRDTriggerAnalysis, 1);
55 };
56
57 #endif