]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/ESD/AliTriggerScalersRecordESD.h
end-of-line normalization
[u/mrichter/AliRoot.git] / STEER / ESD / AliTriggerScalersRecordESD.h
1 #ifndef ALITRIGGERSCALERSRECORDESD_H
2 #define ALITRIGGERSCALERSRECORDESD_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 Record 
11 //
12 // Each record consists of 1 time stamp (4 words)  (AliTimeStamp)
13 // and an array with the scalers (AliTriggerScalers) for each trigger class 
14 // in partition  
15 //
16 //////////////////////////////////////////////////////////////////////////////
17 #include <TObjArray.h>
18 #include "AliTimeStamp.h"
19 class TObjArray;
20 class AliTimeStamp;
21 class AliTriggerScalersESD;
22
23 class AliTriggerScalersRecordESD : public TObject {
24
25 public:
26                               AliTriggerScalersRecordESD();
27                    virtual   ~AliTriggerScalersRecordESD() { fScalers.SetOwner(); fScalers.Delete(); }       
28                       void    Reset();
29                       void    AddTriggerScalers( AliTriggerScalersESD* scaler );
30                       void    AddTriggerScalers( UChar_t classIndex, ULong64_t LOCB, ULong64_t LOCA,        
31                                               ULong64_t L1CB, ULong64_t L1CA, ULong64_t L2CB, ULong64_t L2CA );                            
32            const TObjArray*   GetTriggerScalers()  const { return  &fScalers; }
33 const AliTriggerScalersESD*   GetTriggerScalersForClass( const Int_t classindex ) const;       
34         const AliTimeStamp*   GetTimeStamp() const {return &fTimestamp;};
35                      UInt_t   GetTimeGroup() const {return fTimeGroup; };
36                        void   SetTimeStamp(const AliTimeStamp *stamp){fTimestamp = *stamp;};
37                        void   SetTimeGroup(const UInt_t group){fTimeGroup = group;};
38                virtual void   Print( const Option_t* opt ="" ) const;
39                       
40                            AliTriggerScalersRecordESD( const AliTriggerScalersRecordESD &rec );
41                       AliTriggerScalersRecordESD&   operator=(const AliTriggerScalersRecordESD& rec);      
42                
43
44 private:  
45                         AliTimeStamp fTimestamp;    // record timestamp
46                         TObjArray    fScalers;      // Array of scalers (AliTriggerScalersESD) 
47                               UInt_t fTimeGroup;    // Active time group
48                         ClassDef( AliTriggerScalersRecordESD, 3 )  // Define a Record of Trigger Scalers 
49 };
50
51 #endif