ROOT logo
#ifndef ALITRIGGERSCALERSRECORDESD_H
#define ALITRIGGERSCALERSRECORDESD_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
/* $Id$ */

///////////////////////////////////////////////////////////////////////////////
//
// Class to define the ALICE Trigger Scalers Record 
//
// Each record consists of 1 time stamp (4 words)  (AliTimeStamp)
// and an array with the scalers (AliTriggerScalers) for each trigger class 
// in partition  
//
//////////////////////////////////////////////////////////////////////////////
#include <TObjArray.h>
#include "AliTimeStamp.h"
class TObjArray;
class AliTimeStamp;
class AliTriggerScalersESD;

class AliTriggerScalersRecordESD : public TObject {

public:
                              AliTriggerScalersRecordESD();
                   virtual   ~AliTriggerScalersRecordESD() { fScalers.SetOwner(); fScalers.Delete(); }       
                      void    Reset();
                      void    AddTriggerScalers( AliTriggerScalersESD* scaler );
                      void    AddTriggerScalers( UChar_t classIndex, ULong64_t LOCB, ULong64_t LOCA,        
                                              ULong64_t L1CB, ULong64_t L1CA, ULong64_t L2CB, ULong64_t L2CA );                            
           const TObjArray*   GetTriggerScalers()  const { return  &fScalers; }
const AliTriggerScalersESD*   GetTriggerScalersForClass( const Int_t classindex ) const;       
        const AliTimeStamp*   GetTimeStamp() const {return &fTimestamp;};
	             UInt_t   GetTimeGroup() const {return fTimeGroup; };
                       void   SetTimeStamp(const AliTimeStamp *stamp){fTimestamp = *stamp;};
		       void   SetTimeGroup(const UInt_t group){fTimeGroup = group;};
               virtual void   Print( const Option_t* opt ="" ) const;
                      
                           AliTriggerScalersRecordESD( const AliTriggerScalersRecordESD &rec );
                      AliTriggerScalersRecordESD&   operator=(const AliTriggerScalersRecordESD& rec);      
               

private:  
                        AliTimeStamp fTimestamp;    // record timestamp
                        TObjArray    fScalers;      // Array of scalers (AliTriggerScalersESD) 
			      UInt_t fTimeGroup;    // Active time group
                        ClassDef( AliTriggerScalersRecordESD, 3 )  // Define a Record of Trigger Scalers 
};

#endif
 AliTriggerScalersRecordESD.h:1
 AliTriggerScalersRecordESD.h:2
 AliTriggerScalersRecordESD.h:3
 AliTriggerScalersRecordESD.h:4
 AliTriggerScalersRecordESD.h:5
 AliTriggerScalersRecordESD.h:6
 AliTriggerScalersRecordESD.h:7
 AliTriggerScalersRecordESD.h:8
 AliTriggerScalersRecordESD.h:9
 AliTriggerScalersRecordESD.h:10
 AliTriggerScalersRecordESD.h:11
 AliTriggerScalersRecordESD.h:12
 AliTriggerScalersRecordESD.h:13
 AliTriggerScalersRecordESD.h:14
 AliTriggerScalersRecordESD.h:15
 AliTriggerScalersRecordESD.h:16
 AliTriggerScalersRecordESD.h:17
 AliTriggerScalersRecordESD.h:18
 AliTriggerScalersRecordESD.h:19
 AliTriggerScalersRecordESD.h:20
 AliTriggerScalersRecordESD.h:21
 AliTriggerScalersRecordESD.h:22
 AliTriggerScalersRecordESD.h:23
 AliTriggerScalersRecordESD.h:24
 AliTriggerScalersRecordESD.h:25
 AliTriggerScalersRecordESD.h:26
 AliTriggerScalersRecordESD.h:27
 AliTriggerScalersRecordESD.h:28
 AliTriggerScalersRecordESD.h:29
 AliTriggerScalersRecordESD.h:30
 AliTriggerScalersRecordESD.h:31
 AliTriggerScalersRecordESD.h:32
 AliTriggerScalersRecordESD.h:33
 AliTriggerScalersRecordESD.h:34
 AliTriggerScalersRecordESD.h:35
 AliTriggerScalersRecordESD.h:36
 AliTriggerScalersRecordESD.h:37
 AliTriggerScalersRecordESD.h:38
 AliTriggerScalersRecordESD.h:39
 AliTriggerScalersRecordESD.h:40
 AliTriggerScalersRecordESD.h:41
 AliTriggerScalersRecordESD.h:42
 AliTriggerScalersRecordESD.h:43
 AliTriggerScalersRecordESD.h:44
 AliTriggerScalersRecordESD.h:45
 AliTriggerScalersRecordESD.h:46
 AliTriggerScalersRecordESD.h:47
 AliTriggerScalersRecordESD.h:48
 AliTriggerScalersRecordESD.h:49
 AliTriggerScalersRecordESD.h:50
 AliTriggerScalersRecordESD.h:51