AliRoot Core  ee782a0 (ee782a0)
AliTriggerScalersRecord.h
Go to the documentation of this file.
1 #ifndef ALITRIGGERSCALERSRECORD_H
2 #define ALITRIGGERSCALERSRECORD_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 /* $Id: AliTriggerScalersRecord.h 22322 2007-11-22 11:43:14Z cvetan $ */
8 
10 //
11 // Class to define the ALICE Trigger Scalers Record
12 //
13 // Each record consists of 1 time stamp (4 words) (AliTimeStamp)
14 // and an array with the scalers (AliTriggerScalers) for each trigger class
15 // in partition
16 //
18 #include "AliTimeStamp.h"
19 
20 class TObjArray;
21 class AliTriggerScalers;
22 
23 class AliTriggerScalersRecord : public TObject {
24 
25 public:
27  virtual ~AliTriggerScalersRecord() { fScalers.SetOwner(); fScalers.Delete(); }
28 
29 
30  void SetTimeStamp( UInt_t orbit, UInt_t period, UInt_t seconds, UInt_t microsecs );
31  void SetTimeGroup(UInt_t tgr){fTimeGroup=tgr;};
32  void AddTriggerScalers( AliTriggerScalers* scaler );
33  void AddTriggerScalers( UChar_t classIndex, UInt_t LOCB, UInt_t LOCA,
34  UInt_t L1CB, UInt_t L1CA, UInt_t L2CB, UInt_t L2CA );
35  void AddTriggerScalers( UChar_t classIndex, UInt_t LOCB, UInt_t LOCA,
36  UInt_t L1CB, UInt_t L1CA, UInt_t L2CB, UInt_t L2CA,
37  UInt_t LMCB, UInt_t LMCA);
38 
39  const AliTimeStamp* GetTimeStamp() const { return &fTimestamp; }
40  const TObjArray* GetTriggerScalers() const { return &fScalers; }
41  const AliTriggerScalers* GetTriggerScalersForClass( const Int_t classindex ) const;
42  AliTriggerScalers* GetTriggerScalersForClassBinary( const Int_t classindex ) ;
43  UInt_t GetTimeGroup(){return fTimeGroup;}
44  virtual Bool_t IsSortable() const { return kTRUE; }
45 
46  virtual Int_t Compare( const TObject* obj ) const;
47  virtual void Print( const Option_t* opt ="" ) const;
48 
49 
50 
51 
52 private:
53 
54  AliTimeStamp fTimestamp; // record timestamp
55  TObjArray fScalers; // Array of scalers (AliTriggerScalers)
56  UInt_t fTimeGroup; // Time group of record
57 
58 
61 
62  ClassDef( AliTriggerScalersRecord, 2 ) // Define a Record of Trigger Scalers
63 };
64 
65 #endif
#define TObjArray
const AliTriggerScalers * GetTriggerScalersForClass(const Int_t classindex) const
const TObjArray * GetTriggerScalers() const
AliTriggerScalersRecord & operator=(const AliTriggerScalersRecord &rec)
void SetTimeStamp(UInt_t orbit, UInt_t period, UInt_t seconds, UInt_t microsecs)
AliTriggerScalers * GetTriggerScalersForClassBinary(const Int_t classindex)
virtual Int_t Compare(const TObject *obj) const
void rec(const char *filename="raw.root")
Definition: rec.C:1
virtual Bool_t IsSortable() const
void AddTriggerScalers(AliTriggerScalers *scaler)
const AliTimeStamp * GetTimeStamp() const
virtual void Print(const Option_t *opt="") const