]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSGeometry.cxx
Correction (Raphael)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSGeometry.cxx
index 1b0178b1ed1b3f7da76d3e50c2811ee63cde5a4d..0fae4bfa94c6e4aa879b42b97183d5f64df1f89a 100644 (file)
@@ -61,6 +61,11 @@ AliPHOSGeometry::AliPHOSGeometry() :
     // default ctor 
     // must be kept public for root persistency purposes, but should never be called by the outside world
     fgGeom          = 0 ;
+
+    fPHOSParams[0] = 0.;
+    fPHOSParams[1] = 0.;
+    fPHOSParams[2] = 0.;
+    fPHOSParams[3] = 0.;
 }  
 
 //____________________________________________________________________________
@@ -114,7 +119,7 @@ void AliPHOSGeometry::Init(void)
   
   fPHOSAngle = new Float_t[fNModules] ;
   
-  Float_t * emcParams = fGeometryEMCA->GetEMCParams() ;
+  const Float_t * emcParams = fGeometryEMCA->GetEMCParams() ;
   
   fPHOSParams[0] =  TMath::Max((Double_t)fGeometryCPV->GetCPVBoxSize(0)/2., 
                               (Double_t)(emcParams[0] - (emcParams[1]-emcParams[0])*
@@ -126,12 +131,12 @@ void AliPHOSGeometry::Init(void)
   fIPtoUpperCPVsurface = fGeometryEMCA->GetIPtoOuterCoverDistance() - fGeometryCPV->GetCPVBoxSize(1) ;
 
   //calculate offset to crystal surface
-  Float_t * inthermo = fGeometryEMCA->GetInnerThermoHalfSize() ;
-  Float_t * strip = fGeometryEMCA->GetStripHalfSize() ;
-  Float_t* splate = fGeometryEMCA->GetSupportPlateHalfSize();
-  Float_t * crystal = fGeometryEMCA->GetCrystalHalfSize() ;
-  Float_t * pin = fGeometryEMCA->GetAPDHalfSize() ;
-  Float_t * preamp = fGeometryEMCA->GetPreampHalfSize() ;
+  const Float_t * inthermo = fGeometryEMCA->GetInnerThermoHalfSize() ;
+  const Float_t * strip = fGeometryEMCA->GetStripHalfSize() ;
+  const Float_t * splate = fGeometryEMCA->GetSupportPlateHalfSize();
+  const Float_t * crystal = fGeometryEMCA->GetCrystalHalfSize() ;
+  const Float_t * pin = fGeometryEMCA->GetAPDHalfSize() ;
+  const Float_t * preamp = fGeometryEMCA->GetPreampHalfSize() ;
   fCrystalShift=-inthermo[1]+strip[1]+splate[1]+crystal[1]-fGeometryEMCA->GetAirGapLed()/2.+pin[1]+preamp[1] ;
   fCryCellShift=crystal[1]-(fGeometryEMCA->GetAirGapLed()-2*pin[1]-2*preamp[1])/2;
  
@@ -244,18 +249,20 @@ void AliPHOSGeometry::GetGlobalPHOS(const AliPHOSRecPoint* recPoint, TVector3 &
   char path[100] ; 
   Double_t dy ;
   if(tmpPHOS->IsEmc()){
-    sprintf(path,"/ALIC_1/PHOS_%d/PEMC_1/PCOL_1/PTIO_1/PCOR_1/PAGA_1/PTII_1",tmpPHOS->GetPHOSMod()) ;
+    TString spath="/ALIC_1/PHOS_%d/PEMC_1/PCOL_1/PTIO_1/PCOR_1/PAGA_1/PTII_1";
+    snprintf(path,spath.Length(),spath.Data(),tmpPHOS->GetPHOSMod()) ;
 //    sprintf(path,"/ALIC_1/PHOS_%d",tmpPHOS->GetPHOSMod()) ;
     dy=fCrystalShift ;
   }
   else{
-    sprintf(path,"/ALIC_1/PHOS_%d/PCPV_1",tmpPHOS->GetPHOSMod()) ;
+    TString spath="/ALIC_1/PHOS_%d/PCPV_1";
+    snprintf(path,spath.Length(),spath.Data(),tmpPHOS->GetPHOSMod()) ;
     dy= GetCPVBoxSize(1)/2. ; //center of CPV module 
   }
   Double_t pos[3]={gpos.X(),gpos.Y()-dy,gpos.Z()} ;
   if(tmpPHOS->IsEmc())
     pos[2]=-pos[2] ; //Opposite z directions in EMC matrix and local frame!!!
-  Double_t posC[3];
+  Double_t posC[3] = {};
   //now apply possible shifts and rotations
   if (!gGeoManager->cd(path)){
     AliFatal("Geo manager can not find path \n");