Fix for IR array in ESD header. The previous implementation was giving a crash while...
authorcvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 3 Jul 2009 22:02:16 +0000 (22:02 +0000)
committercvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 3 Jul 2009 22:02:16 +0000 (22:02 +0000)
STEER/AliESDHeader.cxx
STEER/AliESDHeader.h

index aa29dcb..13d93d0 100644 (file)
@@ -42,13 +42,11 @@ AliESDHeader::AliESDHeader() :
   fL0TriggerInputs(0),
   fL1TriggerInputs(0),
   fL2TriggerInputs(0),
-  fTriggerScalers(),
-  fIRArray(0)
+  fTriggerScalers()
 {
   // default constructor
 
   SetName("AliESDHeader");
-  fIRArray = new AliTriggerIR *[kNMaxIR];
   for(Int_t i = 0; i<kNMaxIR ; i++) fIRArray[i] = 0;
 
 }
@@ -72,13 +70,11 @@ AliESDHeader::AliESDHeader(const AliESDHeader &header) :
   fL0TriggerInputs(header.fL0TriggerInputs),
   fL1TriggerInputs(header.fL1TriggerInputs),
   fL2TriggerInputs(header.fL2TriggerInputs),
-  fTriggerScalers(header.fTriggerScalers),
-  fIRArray(0)
+  fTriggerScalers(header.fTriggerScalers)
 {
   // copy constructor
   SetName(header.fName);
   SetTitle(header.fTitle);
-  fIRArray = new AliTriggerIR *[kNMaxIR];
   for(Int_t i = 0; i<kNMaxIR ; i++) {
     if(header.fIRArray[i])fIRArray[i] = new AliTriggerIR(*header.fIRArray[i]);
     else fIRArray[i]=0;
@@ -102,7 +98,6 @@ AliESDHeader& AliESDHeader::operator=(const AliESDHeader &header)
     fL1TriggerInputs = header.fL1TriggerInputs;
     fL2TriggerInputs = header.fL2TriggerInputs;
     fTriggerScalers = header.fTriggerScalers;
-    fIRArray = new AliTriggerIR *[kNMaxIR];
     for(Int_t i = 0; i<kNMaxIR ; i++) {
        if(header.fIRArray[i])fIRArray[i] = new AliTriggerIR(*header.fIRArray[i]);
        else fIRArray[i]=0;
index a762efd..5c722c5 100644 (file)
@@ -76,8 +76,8 @@ private:
   UInt_t       fL1TriggerInputs;   //L1 Trigger Inputs
   UShort_t     fL2TriggerInputs;   //L2 Trigger Inputs
   AliTriggerScalersRecordESD fTriggerScalers;  //Trigger counters of triggered classes in event
-  enum {kNMaxIR = 3};            // Max number of interaction records (IR)
-  AliTriggerIR**  fIRArray;     // Array with trigger IRs 
+  enum {kNMaxIR = 3};              // Max number of interaction records (IR)
+  AliTriggerIR*  fIRArray[kNMaxIR];// Array with trigger IRs 
 
   ClassDef(AliESDHeader,6)
 };