From 54e510108ad23abeb6f5d9a66f7259d49b395686 Mon Sep 17 00:00:00 2001 From: cvetan Date: Wed, 6 Aug 2008 08:45:58 +0000 Subject: [PATCH] Copy constructor implemented. Data members made persistent. --- STEER/AliRecoParam.cxx | 29 +++++++++++++++++++++++++++++ STEER/AliRecoParam.h | 11 ++++++----- 2 files changed, 35 insertions(+), 5 deletions(-) diff --git a/STEER/AliRecoParam.cxx b/STEER/AliRecoParam.cxx index d5a4d054421..00e3d3ce156 100644 --- a/STEER/AliRecoParam.cxx +++ b/STEER/AliRecoParam.cxx @@ -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 // ... diff --git a/STEER/AliRecoParam.h b/STEER/AliRecoParam.h index d5dd6e96e99..e9f3055ee54 100644 --- a/STEER/AliRecoParam.h +++ b/STEER/AliRecoParam.h @@ -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) }; -- 2.39.3