]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Alignmentmatrices for EMCAL added. (Gustavo Conesa)
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 24 Jul 2009 09:21:20 +0000 (09:21 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 24 Jul 2009 09:21:20 +0000 (09:21 +0000)
STEER/AliESDEvent.h
STEER/AliESDRun.cxx
STEER/AliESDRun.h

index 65259b3fa40fe5df649db143e89028beb6ec6ef6..611f766fd56b160ee7e523cda77fc83672451979 100644 (file)
@@ -115,7 +115,8 @@ public:
   void     SetTriggerClass(const char*name, Int_t index) {fESDRun->SetTriggerClass(name,index);}
   void     SetPHOSMatrix(TGeoHMatrix*matrix, Int_t i) {fESDRun->SetPHOSMatrix(matrix,i);}
   const TGeoHMatrix* GetPHOSMatrix(Int_t i) const {return fESDRun->GetPHOSMatrix(i);}
-  
+  void     SetEMCALMatrix(TGeoHMatrix*matrix, Int_t i) {fESDRun->SetEMCALMatrix(matrix,i);}
+  const TGeoHMatrix* GetEMCALMatrix(Int_t i) const {return fESDRun->GetEMCALMatrix(i);}
 
   // HEADER
   AliESDHeader* GetHeader() const {return fHeader;}
index 63b2ad0002bf42b833db7d0136b526c9c27baf51..3df26f4a0ee4b10df5c9ad6f7d8ac65986b1ad44 100644 (file)
@@ -42,6 +42,7 @@ AliESDRun::AliESDRun() :
   fDiamondCovXY[1]=0.;
   fTriggerClasses.SetOwner(kTRUE);
   for (Int_t m=0; m<kNPHOSMatrix; m++) fPHOSMatrix[m]=NULL;
+  for (Int_t sm=0; sm<kNEMCALMatrix; sm++) fEMCALMatrix[sm]=NULL;
 }
 
 //______________________________________________________________________________
@@ -68,6 +69,13 @@ AliESDRun::AliESDRun(const AliESDRun &esd) :
     else
       fPHOSMatrix[m]=NULL;
   }
+       
+  for(Int_t sm=0; sm<kNEMCALMatrix; sm++){
+       if(esd.fEMCALMatrix[sm])
+               fEMCALMatrix[sm]=new TGeoHMatrix(*(esd.fEMCALMatrix[sm])) ;
+       else
+               fEMCALMatrix[sm]=NULL;
+  }
 }
 
 //______________________________________________________________________________
@@ -94,6 +102,13 @@ AliESDRun& AliESDRun::operator=(const AliESDRun &esd)
       else
        fPHOSMatrix[m]=0;
     }
+         
+       for(Int_t sm=0; sm<kNEMCALMatrix; sm++){
+         if(esd.fEMCALMatrix[sm])
+                 fEMCALMatrix[sm]=new TGeoHMatrix(*(esd.fEMCALMatrix[sm])) ;
+         else
+                 fEMCALMatrix[sm]=0;
+       }
   } 
   return *this;
 }
@@ -119,6 +134,11 @@ AliESDRun::~AliESDRun() {
     if(fPHOSMatrix[m]) delete fPHOSMatrix[m] ;
     fPHOSMatrix[m] = NULL;
   }
+  // Delete PHOS position matrices
+  for(Int_t sm=0; sm<kNEMCALMatrix; sm++) {
+       if(fEMCALMatrix[sm]) delete fEMCALMatrix[sm] ;
+       fEMCALMatrix[sm] = NULL;
+  }
 }
 
 void AliESDRun::SetDiamond(const AliESDVertex *vertex) {
index 8b93c40868cc4856eaf5f563f5249909a5153571..e69d3d362e926c10d27921f1a2373681c013b530 100644 (file)
@@ -56,9 +56,17 @@ public:
   const TGeoHMatrix* GetPHOSMatrix(Int_t i) const {
     return ((i >= 0) && (i < kNPHOSMatrix)) ? fPHOSMatrix[i] : NULL;
   }
-
+       
+  void    SetEMCALMatrix(TGeoHMatrix*matrix, Int_t i) {
+       if ((i >= 0) && (i < kNEMCALMatrix)) fEMCALMatrix[i] = matrix;
+  }
+  const TGeoHMatrix* GetEMCALMatrix(Int_t i) const {
+       return ((i >= 0) && (i < kNEMCALMatrix)) ? fEMCALMatrix[i] : NULL;
+  }
+       
   enum {kNTriggerClasses = 50};
   enum {kNPHOSMatrix = 5};
+  enum {kNEMCALMatrix = 12};
 
 private:
   Double32_t      fMagneticField;   // Solenoid Magnetic Field in kG : for compatibility with AliMagF
@@ -69,8 +77,9 @@ private:
   Int_t           fRecoVersion;     // Version of reconstruction 
   TObjArray       fTriggerClasses;  // array of TNamed containing the names of the active trigger classes
   TGeoHMatrix*    fPHOSMatrix[kNPHOSMatrix]; //PHOS module position and orientation matrices
+  TGeoHMatrix*    fEMCALMatrix[kNEMCALMatrix]; //EMCAL supermodule position and orientation matrices
 
-  ClassDef(AliESDRun,4)
+  ClassDef(AliESDRun,5)
 };
 
 #endif