Line data Source code
1 : #ifndef ALITRIGGERSCALERSESD_H
2 : #define ALITRIGGERSCALERSESD_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 : /* $Id$ */
7 :
8 : ///////////////////////////////////////////////////////////////////////////////
9 : //
10 : // Class to define the ALICE Trigger Scalers
11 : //
12 : // For each trigger class there are six scalers:
13 : //
14 : // LOCB L0 triggers before any vetos
15 : // LOCA L0 triggers after all vetos
16 : // L1CB L1 triggers before any vetos
17 : // L1CA L1 triggers after all vetos
18 : // L2CB L2 triggers before any vetos
19 : // L2CA L2 triggers after all vetos
20 : // LMCB L2 triggers before any vetos
21 : // LMCA L2 triggers after all vetos
22 : //
23 : //////////////////////////////////////////////////////////////////////////////
24 :
25 : class AliTriggerScalersESD : public TObject {
26 :
27 : public:
28 : AliTriggerScalersESD();
29 : AliTriggerScalersESD(
30 : UChar_t classIndex,
31 : ULong64_t LOCB, ULong64_t LOCA,
32 : ULong64_t L1CB, ULong64_t L1CA,
33 : ULong64_t L2CB, ULong64_t L2CA
34 : );
35 : AliTriggerScalersESD(
36 : UChar_t classIndex,
37 : ULong64_t LOCB, ULong64_t LOCA,
38 : ULong64_t L1CB, ULong64_t L1CA,
39 : ULong64_t L2CB, ULong64_t L2CA,
40 : ULong64_t LMCB, ULong64_t LMCA
41 : );
42 :
43 : AliTriggerScalersESD(UChar_t xlassIndex,ULong64_t* s64);
44 12 : virtual ~AliTriggerScalersESD() {}
45 : virtual void Print( const Option_t* opt ="" ) const;
46 :
47 : AliTriggerScalersESD( const AliTriggerScalersESD &scal );
48 : AliTriggerScalersESD& operator=(const AliTriggerScalersESD& scal);
49 :
50 0 : void SetLMCB(ULong64_t count) { fLMCB=count; }
51 0 : void SetLMCA(ULong64_t count) { fLMCA=count; }
52 0 : ULong64_t GetLOCB() const { return fLOCB; }
53 0 : ULong64_t GetLOCA() const { return fLOCA; }
54 0 : ULong64_t GetL1CB() const { return fL1CB; }
55 0 : ULong64_t GetL1CA() const { return fL1CA; }
56 0 : ULong64_t GetL2CB() const { return fL2CB; }
57 0 : ULong64_t GetL2CA() const { return fL2CA; }
58 0 : ULong64_t GetLMCB() const { return fLMCB; }
59 0 : ULong64_t GetLMCA() const { return fLMCA; }
60 : void GetAllScalers(ULong64_t *scalers) const;
61 : void GetAllScalersM012(ULong64_t *scalers) const;
62 :
63 0 : UChar_t GetClassIndex() const { return fClassIndex; }
64 :
65 : private:
66 : UChar_t fClassIndex; // number of triggered classes
67 : ULong64_t fLOCB; // L0 triggers before any vetos (64 bits)
68 : ULong64_t fLOCA; // L0 triggers after all vetos (64 bits)
69 : ULong64_t fL1CB; // L1 triggers before any vetos (64 bits)
70 : ULong64_t fL1CA; // L1 triggers after all vetos (64 bits)
71 : ULong64_t fL2CB; // L2 triggers before any vetos (64 bits)
72 : ULong64_t fL2CA; // L2 triggers after all vetos (64 bits)
73 : ULong64_t fLMCB; // L2 triggers before any vetos (64 bits)
74 : ULong64_t fLMCA; // L2 triggers after all vetos (64 bits)
75 :
76 172 : ClassDef( AliTriggerScalersESD, 2 ) // Define a Run Trigger Scalers (Scalers)
77 : };
78 :
79 : #endif
|