5 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
8 //-------------------------------------------------------------------------
12 // Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch
13 //-------------------------------------------------------------------------
15 #include "AliVHeader.h"
16 #include "AliTriggerScalersESD.h"
17 #include "AliTriggerScalersRecordESD.h"
19 class AliTriggerScalersESD;
20 class AliTriggerScalersRecordESD;
22 class AliESDHeader: public AliVHeader {
25 virtual ~AliESDHeader();
26 AliESDHeader(const AliESDHeader& header);
27 AliESDHeader& operator=(const AliESDHeader& header);
28 virtual void Copy(TObject &obj) const;
30 void SetTriggerMask(ULong64_t n) {fTriggerMask=n;}
31 void SetOrbitNumber(UInt_t n) {fOrbitNumber=n;}
32 void SetTimeStamp(UInt_t timeStamp){fTimeStamp = timeStamp;}
33 void SetEventType(UInt_t eventType){fEventType = eventType;}
34 void SetEventNumberInFile(Int_t n) {fEventNumberInFile=n;}
35 void SetBunchCrossNumber(UShort_t n) {fBunchCrossNumber=n;}
36 void SetPeriodNumber(UInt_t n) {fPeriodNumber=n;}
37 void SetTriggerCluster(UChar_t n) {fTriggerCluster = n;}
39 //************Setters/Getters for Trigger Inputs and TriggerScalersRecordESD
40 void SetL0TriggerInputs(UInt_t n) {fL0TriggerInputs=n;}
41 void SetL1TriggerInputs(UInt_t n) {fL1TriggerInputs=n;}
42 void SetL2TriggerInputs(UShort_t n) {fL2TriggerInputs=n;}
43 UInt_t GetL0TriggerInputs() const {return fL0TriggerInputs;}
44 UInt_t GetL1TriggerInputs() const {return fL1TriggerInputs;}
45 UShort_t GetL2TriggerInputs() const {return fL2TriggerInputs;}
46 void SetTriggerScalersRecord(AliTriggerScalersESD *scalerRun) {fTriggerScalers.AddTriggerScalers(scalerRun); }
47 const AliTriggerScalersRecordESD* GetTriggerScalersRecord() const {return &fTriggerScalers; }
48 //**************************************************************************
50 ULong64_t GetTriggerMask() const {return fTriggerMask;}
51 UInt_t GetOrbitNumber() const {return fOrbitNumber;}
52 UInt_t GetTimeStamp() const { return fTimeStamp;}
53 UInt_t GetEventType() const { return fEventType;}
54 Int_t GetEventNumberInFile() const {return fEventNumberInFile;}
55 UShort_t GetBunchCrossNumber() const {return fBunchCrossNumber;}
56 UInt_t GetPeriodNumber() const {return fPeriodNumber;}
57 UChar_t GetTriggerCluster() const {return fTriggerCluster;}
60 void Print(const Option_t *opt=0) const;
63 // Event Identification
64 ULong64_t fTriggerMask; // Trigger Type (mask)
65 UInt_t fOrbitNumber; // Orbit Number
66 UInt_t fTimeStamp; // Time stamp
67 UInt_t fEventType; // Type of Event
68 UInt_t fPeriodNumber; // Period Number
69 Int_t fEventNumberInFile; // Running Event count in the file
70 UShort_t fBunchCrossNumber; // Bunch Crossing Number
71 UChar_t fTriggerCluster; // Trigger cluster (mask)
72 UInt_t fL0TriggerInputs; //L0 Trigger Inputs
73 UInt_t fL1TriggerInputs; //L1 Trigger Inputs
74 UShort_t fL2TriggerInputs; //L2 Trigger Inputs
75 AliTriggerScalersRecordESD fTriggerScalers; //L0, L1 and L2 trigger counters of triggered classes in event
77 ClassDef(AliESDHeader,5)