Copy constructor implemented. Data members made persistent.
authorcvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Aug 2008 08:45:58 +0000 (08:45 +0000)
committercvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Aug 2008 08:45:58 +0000 (08:45 +0000)
STEER/AliRecoParam.cxx
STEER/AliRecoParam.h

index d5a4d05..00e3d3c 100644 (file)
@@ -48,6 +48,35 @@ AliRecoParam::AliRecoParam():
   }
 }
 
+AliRecoParam::AliRecoParam(const AliRecoParam& par) :
+  TObject(),
+  fEventSpecie(par.fEventSpecie)
+{
+  // copy constructor
+  for(Int_t iDet = 0; iDet < kNDetectors; iDet++) {
+    //    fDetRecoParams[iDet] = new TObjArray;
+    //    for(Int_t i = 0; i < par.fDetRecoParams[iDet]->GetEntriesFast(); i++) {
+    //      if (!par.fDetRecoParams[iDet]->UncheckedAt(i)) {
+    // fDetRecoParams[iDet]->AddAt(NULL,i);
+    // continue;
+    //      }
+    //      fDetRecoParams[iDet]->AddAt(par.fDetRecoParams[iDet]->UncheckedAt(i)->Clone(),i);
+    //    }
+    //  }
+//    fDetRecoParams[iDet] = par.fDetRecoParams[iDet];
+//  }
+    if (par.fDetRecoParams[iDet])
+      fDetRecoParams[iDet] = (TObjArray*)(par.fDetRecoParams[iDet]->Clone());
+    else
+      fDetRecoParams[iDet] = NULL;
+  }
+  for(Int_t iSpecie = 0; iSpecie < kNSpecies; iSpecie++) {
+    for(Int_t iDet = 0; iDet < kNDetectors; iDet++) {
+      fDetRecoParamsIndex[iSpecie][iDet] = par.fDetRecoParamsIndex[iSpecie][iDet];
+    }
+  }
+}
+
 AliRecoParam::~AliRecoParam(){
   // Destructor
   // ...
index d5dd6e9..e9f3055 100644 (file)
@@ -44,16 +44,17 @@ class AliRecoParam : public TObject
   void                          AddDetRecoParam(Int_t iDet, AliDetectorRecoParam* param);
   Bool_t                        AddDetRecoParamArray(Int_t iDet, TObjArray* parArray);
 
+  AliRecoParam(const AliRecoParam&);
+
 private:
 
-  AliRecoParam(const AliRecoParam&); // Not implemented
   AliRecoParam& operator=(const AliRecoParam&); // Not implemented
 
-  Int_t      fDetRecoParamsIndex[kNSpecies][kNDetectors]; //!index to fDetRecoParams arrays
-  TObjArray *fDetRecoParams[kNDetectors];   //!array with reconstruction-parameter objects for all detectors
-  EventSpecie_t fEventSpecie;               //!current event specie
+  Int_t      fDetRecoParamsIndex[kNSpecies][kNDetectors]; // index to fDetRecoParams arrays
+  TObjArray *fDetRecoParams[kNDetectors];   // array with reconstruction-parameter objects for all detectors
+  EventSpecie_t fEventSpecie;               // current event specie
 
-  ClassDef(AliRecoParam, 3)
+  ClassDef(AliRecoParam, 4)
 };