]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFAlignment.cxx
Better implementation of copy-constructor and operator=
[u/mrichter/AliRoot.git] / TOF / AliTOFAlignment.cxx
index b02d5451a8e961f02c8d9f1cc6c004cfc5eb9c72..a1e60de2a02bb65b68c0bfc9cc4ce78f03eae1f3 100644 (file)
@@ -134,15 +134,13 @@ AliTOFAlignment::AliTOFAlignment():
 }
 //_____________________________________________________________________________
 AliTOFAlignment::AliTOFAlignment(const AliTOFAlignment &t):
-  TTask("AliTOFAlignment",""),
-  fNTOFAlignObj(0),
+  TTask(t),
+  fNTOFAlignObj(t.fNTOFAlignObj),
   fTOFmgr(0x0),
-  fTOFAlignObjArray(0x0)
+  fTOFAlignObjArray(t.fTOFAlignObjArray)
 { 
   //AliTOFAlignment copy Ctor
 
-  fNTOFAlignObj=t.fNTOFAlignObj;
-  fTOFAlignObjArray=t.fTOFAlignObjArray;
   //AliTOFalignment main Ctor
   for(Int_t i=0; i<18;i++)
      for(Int_t j=0; j<5; j++)
@@ -155,9 +153,13 @@ AliTOFAlignment::AliTOFAlignment(const AliTOFAlignment &t):
 AliTOFAlignment& AliTOFAlignment::operator=(const AliTOFAlignment &t){ 
   //AliTOFAlignment assignment operator
 
-  this->fNTOFAlignObj=t.fNTOFAlignObj;
-  this->fTOFmgr=t.fTOFmgr;
-  this->fTOFAlignObjArray=t.fTOFAlignObjArray;
+  if (&t == this)
+    return *this;
+
+  TTask::operator=(t);
+  fNTOFAlignObj=t.fNTOFAlignObj;
+  fTOFmgr=t.fTOFmgr;
+  fTOFAlignObjArray=t.fTOFAlignObjArray;
   return *this;
 
 }