]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
minor fix: correction of possible memory issue in a debugging class which is not...
authorsgorbuno <sgorbuno@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 17 Jan 2013 13:28:21 +0000 (13:28 +0000)
committersgorbuno <sgorbuno@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 17 Jan 2013 13:28:21 +0000 (13:28 +0000)
HLT/TPCLib/tracking-ca/AliTPCtrackerCA.cxx

index 1ec9bbb268f02e80bc12828ba5fc80e2e62c82ef..404b50db5370930f1ad2066e6bfceea250f9da6a 100644 (file)
@@ -80,43 +80,40 @@ AliTPCtrackerCA::AliTPCtrackerCA( const AliTPCParam *par ):
 
   AliHLTTPCCAStandaloneFramework &hlt = AliHLTTPCCAStandaloneFramework::Instance();
 
+  const float bz = AliTracker::GetBz();
+  const float inRmin = fkParam->GetInnerRadiusLow();
+  //float inRmax = fkParam->GetInnerRadiusUp();
+  //float outRmin = fkParam->GetOuterRadiusLow();
+  const float outRmax = fkParam->GetOuterRadiusUp();
+  const float plusZmin = 0.0529937;
+  const float plusZmax = 249.778;
+  const float minusZmin = -249.645;
+  const float minusZmax = -0.0799937;
+  const float dalpha = 0.349066;
+  const float padPitch = 0.4;
+  const float sigmaZ = 0.228808;
+
+  const int nRows = fkParam->GetNRowLow() + fkParam->GetNRowUp();
+  const int dimRowX=fkParam->GetNRowLow()+fkParam->GetNRowUp();
+  float* rowX = new float[dimRowX];
+  if( !rowX ) return;
+  for ( int irow = 0; irow < fkParam->GetNRowLow(); irow++ ) {
+    rowX[irow] = fkParam->GetPadRowRadiiLow( irow );
+  }
+  for ( int irow = 0; irow < fkParam->GetNRowUp(); irow++ ) {
+    rowX[fkParam->GetNRowLow()+irow] = fkParam->GetPadRowRadiiUp( irow );
+  }
 
   for ( int iSlice = 0; iSlice < hlt.NSlices(); iSlice++ ) {
-
-    float bz = AliTracker::GetBz();
-
-    float inRmin = fkParam->GetInnerRadiusLow();
-    //float inRmax = fkParam->GetInnerRadiusUp();
-    //float outRmin = fkParam->GetOuterRadiusLow();
-    float outRmax = fkParam->GetOuterRadiusUp();
-    float plusZmin = 0.0529937;
-    float plusZmax = 249.778;
-    float minusZmin = -249.645;
-    float minusZmax = -0.0799937;
-    float dalpha = 0.349066;
     float alpha = 0.174533 + dalpha * iSlice;
 
     bool zPlus = ( iSlice < 18 );
     float zMin =  zPlus ? plusZmin : minusZmin;
     float zMax =  zPlus ? plusZmax : minusZmax;
-    //TPCZmin = -249.645, ZMax = 249.778
-    //float rMin =  inRmin;
-    //float rMax =  outRmax;
-
-    float padPitch = 0.4;
-    float sigmaZ = 0.228808;
-
-    int nRows = fkParam->GetNRowLow() + fkParam->GetNRowUp();
-    int dimRowX=fkParam->GetNRowLow()+fkParam->GetNRowUp();
-    std::auto_ptr<float> rowX(new float[dimRowX]);
-    for ( int irow = 0; irow < fkParam->GetNRowLow(); irow++ ) {
-      (rowX.get())[irow] = fkParam->GetPadRowRadiiLow( irow );
-    }
-    for ( int irow = 0; irow < fkParam->GetNRowUp(); irow++ ) {
-      (rowX.get())[fkParam->GetNRowLow()+irow] = fkParam->GetPadRowRadiiUp( irow );
-    }
+
     AliHLTTPCCAParam param;
-    param.Initialize( iSlice, nRows, rowX.get(), alpha, dalpha,
+    param.Initialize( iSlice, nRows, rowX, alpha, dalpha,
                       inRmin, outRmax, zMin, zMax, padPitch, sigmaZ, bz );
     param.SetHitPickUpFactor( 1. );
     param.SetMaxTrackMatchDRow( 5 );
@@ -138,8 +135,9 @@ AliTPCtrackerCA::AliTPCtrackerCA( const AliTPCParam *par ):
       }
     }
     //hlt.SliceTracker( iSlice ).Initialize( param );
-       hlt.InitializeSliceParam(iSlice, param);
+    hlt.InitializeSliceParam(iSlice, param);
   }
+  delete[] rowX;
 }