1 #ifndef ALITRDTRIGPARAM_H
2 #define ALITRDTRIGPARAM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 ///////////////////////////////////////////////////////////////////////////////
8 // TRD trigger parameters class //
10 ///////////////////////////////////////////////////////////////////////////////
14 class AliTRDtrigParam : public TObject {
18 AliTRDtrigParam(const AliTRDtrigParam &p);
19 virtual ~AliTRDtrigParam();
20 AliTRDtrigParam &operator=(const AliTRDtrigParam &p);
22 static AliTRDtrigParam *Instance();
23 static void Terminate();
25 virtual void Copy(TObject &p) const;
29 Int_t GetTime1() const { return fTime1; };
30 Int_t GetTime2() const { return fTime2; };
31 Float_t GetClusThr() const { return fClusThr; };
32 Float_t GetPadThr() const { return fPadThr; };
33 Int_t GetSum10() const { return fSum10; };
34 Int_t GetSum12() const { return fSum12; };
35 Int_t GetTailCancelation() const { return fTCOn; };
36 Int_t GetNexponential() const { return fTCnexp; };
37 Int_t GetFilterType() const { return fFilterType; };
38 void GetFilterParam(Float_t &r1, Float_t &r2, Float_t &c1, Float_t &c2, Float_t &ped) const
44 Float_t GetADCnoise() const { return fADCnoise; };
45 Float_t GetDeltaY() const { return fDeltaY; };
46 Float_t GetDeltaS() const { return fDeltaS; };
47 Float_t GetXprojPlane() const { return fXprojPlane; };
48 Float_t GetLtuPtCut() const { return fLtuPtCut; };
49 Float_t GetGtuPtCut() const { return fGtuPtCut; };
50 Float_t GetHighPt() const { return fHighPt; };
51 Int_t GetNPartJetLow() const { return fNPartJetLow; };
52 Int_t GetNPartJetHigh() const { return fNPartJetHigh; };
53 Float_t GetJetLowPt() const { return fJetLowPt; };
54 Float_t GetJetHighPt() const { return fJetHighPt; };
56 void SetTimeRange(Int_t time1, Int_t time2) { fTime1 = time1;
58 void SetClusThr(Float_t clth) { fClusThr = clth; };
59 void SetPadThr(Float_t path) { fPadThr = path; };
60 void SetSum10(Int_t sum) { fSum10 = sum; };
61 void SetSum12(Int_t sum) { fSum12 = sum; };
62 void SetTailCancelation(Int_t tcOn = 0) { fTCOn = tcOn; };
63 void SetNexponential(Int_t nexp = 1) { fTCnexp = nexp; };
64 void SetFilterType(Int_t ftype = 0) { fFilterType = ftype; };
65 void SetFilterParam(Float_t r1, Float_t r2, Float_t c1, Float_t c2, Float_t ped)
71 void SetADCnoise(Float_t adcn) { fADCnoise = adcn; };
72 void SetDeltaY(Float_t dy) { fDeltaY = dy; };
73 void SetDeltaS(Float_t ds) { fDeltaS = ds; };
74 void SetLtuPtCut(Float_t ptcut) { fLtuPtCut = ptcut; };
75 void SetGtuPtCut(Float_t ptcut) { fGtuPtCut = ptcut; };
76 void SetHighPt(Float_t hpt) { fHighPt = hpt; };
77 void SetNPartJetLow(Int_t npj) { fNPartJetLow = npj; };
78 void SetNPartJetHigh(Int_t npj) { fNPartJetHigh = npj; };
79 void SetJetLowPt(Float_t thr) { fJetLowPt = thr; };
80 void SetJetHighPt(Float_t thr) { fJetHighPt = thr; };
84 static AliTRDtrigParam *fgInstance; // Instance of this class (singleton implementation)
85 static Bool_t fgTerminated; // Defines if this class has already been terminated
87 Int_t fTime1; // First time bin for tracking (incl.)
88 Int_t fTime2; // Last time bin for tracking (incl.)
89 Float_t fClusThr; // Cluster threshold
90 Float_t fPadThr; // Pad threshold
91 Int_t fSum10; // MCM CreateSeeds: Min_Thr_Left_Neighbour
92 Int_t fSum12; // MCM CreateSeeds: Min_Sum_From_Two_Neighbours
93 Int_t fTCOn; // Tail cancelation flag
94 Int_t fTCnexp; // Number of exp in filter
95 Int_t fFilterType; // Filter type (0=A - analog, 1=D - digital)
97 // Filter parameters (1 = long, 2 = short component)
98 Float_t fR1; // Time constant [microseconds]
99 Float_t fR2; // Time constant [microseconds]
100 Float_t fC1; // Weight
101 Float_t fC2; // Weight
102 Float_t fPedestal; // ADC baseline
103 Float_t fADCnoise; // ADC noise (not contained in the digitizer)
105 Float_t fDeltaY; // Y (offset) matching window in the GTU
106 Float_t fDeltaS; // Slope matching window in the GTU
108 Float_t fXprojPlane; // Projection plane (X) for GTU matching
110 Float_t fLtuPtCut; // Local pt cut
111 Float_t fGtuPtCut; // Global pt cut
113 Float_t fHighPt; // High pt selection
115 Int_t fNPartJetLow; // Number of tracks for jet (low)
116 Int_t fNPartJetHigh; // Number of tracks for jet (high)
117 Float_t fJetLowPt; // Low pt threshold for jet particles
118 Float_t fJetHighPt; // High pt threshold for jet particles
122 // This is a singleton, constructor is private!
125 ClassDef(AliTRDtrigParam,3) // TRD trigger parameter class