1 #ifndef ALITRIGGERSCALERSRECORD_H
2 #define ALITRIGGERSCALERSRECORD_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /* $Id: AliTriggerScalersRecord.h 22322 2007-11-22 11:43:14Z cvetan $ */
9 ///////////////////////////////////////////////////////////////////////////////
11 // Class to define the ALICE Trigger Scalers Record
13 // Each record consists of 1 time stamp (4 words) (AliTimeStamp)
14 // and an array with the scalers (AliTriggerScalers) for each trigger class
17 //////////////////////////////////////////////////////////////////////////////
21 class AliTriggerScalersRecord : public TObject {
24 AliTriggerScalersRecord();
25 virtual ~AliTriggerScalersRecord() { fScalers.SetOwner(); fScalers.Delete(); }
28 void SetTimeStamp( UInt_t orbit, UInt_t period, UInt_t seconds, UInt_t microsecs );
29 void AddTriggerScalers( AliTriggerScalers* scaler );
30 void AddTriggerScalers( UChar_t classIndex, UInt_t LOCB, UInt_t LOCA,
31 UInt_t L1CB, UInt_t L1CA, UInt_t L2CB, UInt_t L2CA );
33 const AliTimeStamp* GetTimeStamp() const { return &fTimestamp; }
34 const TObjArray* GetTriggerScalers() const { return &fScalers; }
35 const AliTriggerScalers* GetTriggerScalersForClass( const Int_t classindex ) const;
36 AliTriggerScalers* GetTriggerScalersForClassBinary( const Int_t classindex ) ;
37 virtual Bool_t IsSortable() const { return kTRUE; }
39 virtual Int_t Compare( const TObject* obj ) const;
40 virtual void Print( const Option_t* opt ="" ) const;
47 AliTimeStamp fTimestamp; // record timestamp
48 TObjArray fScalers; // Array of scalers (AliTriggerScalers)
51 AliTriggerScalersRecord( const AliTriggerScalersRecord &rec );
52 AliTriggerScalersRecord& operator=(const AliTriggerScalersRecord& rec);
54 ClassDef( AliTriggerScalersRecord, 1 ) // Define a Record of Trigger Scalers