]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliESDHeader.h
Fixing in/out tags in documentation
[u/mrichter/AliRoot.git] / STEER / AliESDHeader.h
index 665851724958c6098655806c7bad2a39956b79db..25906da632bdf763aeb7e7b6c001aaafe2205640 100644 (file)
@@ -19,6 +19,8 @@
 
 class AliTriggerScalersESD;
 class AliTriggerScalersRecordESD;
+class AliTriggerIR;
+class AliTriggerConfiguration;
 
 class AliESDHeader: public AliVHeader {
 public:
@@ -32,11 +34,13 @@ public:
   void      SetOrbitNumber(UInt_t n) {fOrbitNumber=n;}
   void      SetTimeStamp(UInt_t timeStamp){fTimeStamp = timeStamp;}
   void      SetEventType(UInt_t eventType){fEventType = eventType;}
+  void      SetEventSpecie(UInt_t eventSpecie){fEventSpecie = eventSpecie;}
   void      SetEventNumberInFile(Int_t n) {fEventNumberInFile=n;}
   void      SetBunchCrossNumber(UShort_t n) {fBunchCrossNumber=n;}
   void      SetPeriodNumber(UInt_t n) {fPeriodNumber=n;}
   void      SetTriggerCluster(UChar_t n) {fTriggerCluster = n;}
-
+  Bool_t    AddTriggerIR(const AliTriggerIR* ir);
+  void      SetCTPConfig(AliTriggerConfiguration* ctpConfig) {fCTPConfig=ctpConfig;};
 //************Setters/Getters for Trigger Inputs and TriggerScalersRecordESD
   void SetL0TriggerInputs(UInt_t n) {fL0TriggerInputs=n;}
   void SetL1TriggerInputs(UInt_t n) {fL1TriggerInputs=n;}
@@ -45,13 +49,25 @@ public:
   UInt_t      GetL1TriggerInputs() const {return fL1TriggerInputs;} 
   UShort_t    GetL2TriggerInputs() const {return fL2TriggerInputs;} 
   void SetTriggerScalersRecord(AliTriggerScalersESD *scalerRun) {fTriggerScalers.AddTriggerScalers(scalerRun); }
+  void SetTriggerScalersDeltaEvent(const AliTriggerScalersRecordESD *scalerRun) {fTriggerScalersDeltaEvent = *scalerRun; }
+  void SetTriggerScalersDeltaRun(const AliTriggerScalersRecordESD *scalerRun) {fTriggerScalersDeltaRun = *scalerRun; }
   const AliTriggerScalersRecordESD* GetTriggerScalersRecord() const {return &fTriggerScalers; }
+  const AliTriggerScalersRecordESD* GetTriggerScalersDeltaEvent() const {return &fTriggerScalersDeltaEvent; }
+  const AliTriggerScalersRecordESD* GetTriggerScalersDeltaRun() const {return &fTriggerScalersDeltaRun; }
+  const AliTriggerIR* GetTriggerIR(Int_t i) const { return fIRArray[i]; }
+  void SetActiveTriggerInputs(const char*name, Int_t index);
+  const char* GetTriggerInputName(Int_t index, Int_t trglevel) const;
+  TString     GetActiveTriggerInputs() const;
+  TString     GetFiredTriggerInputs() const;
+  Bool_t      IsTriggerInputFired(const char *name) const;
+  const AliTriggerConfiguration*  GetCTPConfig() const { return fCTPConfig;}
 //**************************************************************************
 
   ULong64_t GetTriggerMask() const {return fTriggerMask;}
   UInt_t    GetOrbitNumber() const {return fOrbitNumber;}
   UInt_t    GetTimeStamp()  const { return fTimeStamp;}
   UInt_t    GetEventType()  const { return fEventType;}
+  UInt_t    GetEventSpecie()  const { return fEventSpecie;}
   Int_t     GetEventNumberInFile() const {return fEventNumberInFile;}
   UShort_t  GetBunchCrossNumber() const {return fBunchCrossNumber;}
   UInt_t    GetPeriodNumber() const {return fPeriodNumber;}
@@ -59,6 +75,9 @@ public:
 
   void      Reset();
   void      Print(const Option_t *opt=0) const;
+
+  enum {kNTriggerInputs = 60};   //24 L0, 24 L1 and 12 L2 inputs
+
 private:
 
   // Event Identification
@@ -66,17 +85,23 @@ private:
   UInt_t       fOrbitNumber;       // Orbit Number
   UInt_t       fTimeStamp;         // Time stamp
   UInt_t       fEventType;         // Type of Event
+  UInt_t       fEventSpecie;       // Reconstruction event specie (1-default,2-lowM,4-highM,8-cosmic,16-cal)
   UInt_t       fPeriodNumber;      // Period Number
   Int_t        fEventNumberInFile; // Running Event count in the file
   UShort_t     fBunchCrossNumber;  // Bunch Crossing Number
   UChar_t      fTriggerCluster;    // Trigger cluster (mask)
-  UInt_t       fL0TriggerInputs;   //L0 Trigger Inputs 
-  UInt_t       fL1TriggerInputs;   //L1 Trigger Inputs
-  UShort_t     fL2TriggerInputs;   //L2 Trigger Inputs
-  AliTriggerScalersRecordESD fTriggerScalers;  //Trigger counters of triggered classes in event
-  TClonesArray     fIRArray;     // Array with trigger interaction records (3)
+  UInt_t       fL0TriggerInputs;   // L0 Trigger Inputs (mask)
+  UInt_t       fL1TriggerInputs;   // L1 Trigger Inputs (mask)
+  UShort_t     fL2TriggerInputs;   // L2 Trigger Inputs (mask)
+  AliTriggerScalersRecordESD fTriggerScalers;  //Trigger counters of triggered classes in event, interpolated to the event time
+  AliTriggerScalersRecordESD fTriggerScalersDeltaEvent;  // Change in the trigger scalers between the two counter readings closest to the event time 
+  AliTriggerScalersRecordESD fTriggerScalersDeltaRun;  // Total number of counts in the trigger scalers for the duration of the run
+  enum {kNMaxIR = 3};              // Max number of interaction records (IR)
+  AliTriggerIR*  fIRArray[kNMaxIR];// Array with trigger IRs 
+  TObjArray    fTriggerInputsNames;// Array of TNamed of the active trigger inputs (L0,L1 and L2)
+  AliTriggerConfiguration*  fCTPConfig; // Trigger configuration for the run
 
-  ClassDef(AliESDHeader,6)
+  ClassDef(AliESDHeader,9)
 };
 
 #endif