]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliSplineFit.cxx
Restoring some changes lost after the last commit (Alberto)
[u/mrichter/AliRoot.git] / STEER / AliSplineFit.cxx
index 3261169e423d412f87de59798d94c388f4969942..2a536dae283f1149201cda3e07a834eea20c78bc 100644 (file)
 
 #include "AliSplineFit.h"
  
-ClassImp(AliSplineFit);
+ClassImp(AliSplineFit)
 
-TLinearFitter AliSplineFit::fitterStatic = TLinearFitter(4,"pol3","");
+TLinearFitter*
+AliSplineFit::fitterStatic()
+{
+  static TLinearFitter* fit = new TLinearFitter(4,"pol3","");
+  return fit;
+}
 
 AliSplineFit::AliSplineFit() :
   fBDump(kFALSE),
@@ -456,7 +461,7 @@ Bool_t   AliSplineFit::RefitKnot(Int_t iKnot){
   if (iNext>=fN0) iNext=fN0-1;
   
   Double_t startX = fGraph->GetX()[fIndex[iKnot]]; 
-  AliSplineFit::fitterStatic.ClearPoints();
+  AliSplineFit::fitterStatic()->ClearPoints();
   Int_t indPrev = fIndex[iPrevious];
   Int_t indNext = fIndex[iNext];
   Double_t *graphX = fGraph->GetX();
@@ -475,9 +480,11 @@ Bool_t   AliSplineFit::RefitKnot(Int_t iKnot){
     xPoint[indVec] = dxl;
     yPoint[indVec] = y;
     ePoint[indVec] =  fSigma;
+//    ePoint[indVec] =  fSigma+TMath::Abs(y)*kEpsilon;
+//    AliSplineFit::fitterStatic.AddPoint(&dxl,y,fSigma+TMath::Abs(y)*kEpsilon);
   }
-  AliSplineFit::fitterStatic.AssignData(nPoints,1,xPoint,yPoint,ePoint);
-  AliSplineFit::fitterStatic.Eval();
+  AliSplineFit::fitterStatic()->AssignData(nPoints,1,xPoint,yPoint,ePoint);
+  AliSplineFit::fitterStatic()->Eval();
 
 //  delete temporary arrays
 
@@ -485,8 +492,8 @@ Bool_t   AliSplineFit::RefitKnot(Int_t iKnot){
   
   TMatrixD   * covar = (TMatrixD*)fCovars->At(iKnot);
   TVectorD   * param = (TVectorD*)fParams->At(iKnot);
-  AliSplineFit::fitterStatic.GetParameters(*param);
-  AliSplineFit::fitterStatic.GetCovarianceMatrix(*covar);
+  AliSplineFit::fitterStatic()->GetParameters(*param);
+  AliSplineFit::fitterStatic()->GetCovarianceMatrix(*covar);
   return 0;
 }