1 #ifndef ALIPHOSTrigger_H
2 #define ALIPHOSTrigger_H
4 //____________________________________________________________
5 // Class for trigger analysis.
6 // Digits are grouped in TRU's (16x28 crystals). The algorithm searches
7 // all possible 4x4 crystal combinations and per each TRU, adding the
8 // digits amplitude and finding the maximum. Maximums are compared to
9 // triggers threshold and they are set.
11 //*-- Author: Gustavo Conesa & Yves Schutz (IFIC, SUBATECH, CERN)
13 // --- ROOT system ---
18 // --- AliRoot header files ---
19 #include "AliTriggerDetector.h"
21 class AliPHOSGeometry ;
23 class AliPHOSTrigger : public AliTriggerDetector {
26 AliPHOSTrigger() ; // ctor
27 AliPHOSTrigger(const AliPHOSTrigger & trig) ; // cpy ctor
28 virtual ~AliPHOSTrigger() {}; //virtual dtor
29 virtual void CreateInputs();
30 virtual void Trigger(); //Make PHOS trigger
32 Int_t GetNTRU() const {return fNTRU ; }
33 Int_t GetNTRUZ() const {return fNTRUZ ; }
34 Int_t GetNTRUPhi() const {return fNTRUPhi ; }
35 Int_t GetL0MBPbPbThreshold() const {return fL0MBPbPbThreshold ; }
36 Int_t GetL0MBppThreshold() const {return fL0MBppThreshold ; }
37 Int_t GetL1JetLowPtThreshold() const {return fL1JetLowPtThreshold ; }
38 Int_t GetL1JetHighPtThreshold() const {return fL1JetHighPtThreshold ; }
40 void Print(const Option_t * opt ="") const ;
42 void SetNTRU(Int_t ntru) {fNTRU = ntru; }
43 void SetNTRUZ(Int_t ntru) {fNTRUZ = ntru; }
44 void SetNTRUPhi(Int_t ntru) {fNTRUPhi = ntru; }
45 void SetL0MBPbPbThreshold(Int_t amp) {fL0MBPbPbThreshold = amp; }
46 void SetL0MBppThreshold(Int_t amp) {fL0MBppThreshold = amp; }
47 void SetL1JetLowPtThreshold(Int_t amp)
48 {fL1JetLowPtThreshold = amp; }
49 void SetL1JetHighPtThreshold(Int_t amp)
50 {fL1JetHighPtThreshold = amp; }
53 TClonesArray * FillTRU(const TClonesArray * digits,
54 const AliPHOSGeometry * geom, const Int_t nModules,
55 const Int_t nCrystalsPhi, const Int_t nCrystalsZ) const ;
56 void MakeSlidingCell(const TClonesArray * trus, const Int_t mod,
57 const Int_t nCrystalsPhi, const Int_t nCrystalsZ,
59 void SetTriggers(const Float_t * ampmax) ;
64 Int_t fNTRU ; //! Number of TRUs per module
65 Int_t fNTRUZ ; //! Number of crystal rows per Z in one TRU
66 Int_t fNTRUPhi ; //! Number of crystal rows per Phi in one TRU
67 Int_t fL0MBPbPbThreshold ; //! L0 PbPb trigger energy threshold
68 Int_t fL0MBppThreshold ; //! L0 pp trigger energy threshold
69 Int_t fL1JetLowPtThreshold ; //! Low and High pT trigger energy threshold
70 Int_t fL1JetHighPtThreshold ; //!
72 ClassDef(AliPHOSTrigger,3)
76 #endif //ALIPHOSTrigger_H