]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCPRF2D.cxx
Bug fix for HMPID bits in readout list.
[u/mrichter/AliRoot.git] / TPC / AliTPCPRF2D.cxx
index 0331fbba7dd45b20dbdf864a6e29889b00d41ace..edd0e9553f7692db1798e584d73407844178358f 100644 (file)
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
-
-#include "TMath.h"
-#include "AliTPCPRF2D.h"
-#include "TF2.h"
 #include <Riostream.h>
+#include <TCanvas.h>
+#include <TClass.h>
+#include <TF2.h>
+#include <TH1.h> 
+#include <TMath.h>
+#include <TPad.h>
+#include <TPaveText.h>
+#include <TStyle.h>
+#include <TText.h>
 #include <string.h>
-#include "TCanvas.h"
-#include "TPad.h"
-#include "TStyle.h"
-#include "TH1.h" 
-#include "AliH2F.h"
 
+#include "AliH2F.h"
+#include "AliTPCPRF2D.h"
 
-#include "TPaveText.h"
-#include "TText.h"
 
 extern TStyle * gStyle;
 
@@ -52,7 +52,7 @@ const Double_t AliTPCPRF2D::fgkSQRT12=3.464101;
 const Int_t   AliTPCPRF2D::fgkNPRF = 100;
 
 
-static Double_t funGauss2D(Double_t *x, Double_t * par)
+static Double_t FunGauss2D(const Double_t *const x, const Double_t *const par)
 { 
 //Gauss function  -needde by the generic function object 
   return ( TMath::Exp(-(x[0]*x[0])/(2*par[0]*par[0]))*
@@ -60,14 +60,14 @@ static Double_t funGauss2D(Double_t *x, Double_t * par)
 
 }
 
-static Double_t funCosh2D(Double_t *x, Double_t * par)
+static Double_t FunCosh2D(const Double_t *const x, const Double_t *const par)
 {
  //Cosh function  -needde by the generic function object 
   return ( 1/(TMath::CosH(3.14159*x[0]/(2*par[0]))*
           TMath::CosH(3.14159*x[1]/(2*par[1]))));
 }    
 
-static Double_t funGati2D(Double_t *x, Double_t * par)
+static Double_t FunGati2D(const Double_t *const x, const Double_t *const par)
 {
   //Gati function  -needde by the generic function object 
   Float_t k3=par[1];
@@ -96,23 +96,45 @@ static Double_t funGati2D(Double_t *x, Double_t * par)
 ClassImp(AliTPCPRF2D)
 
 AliTPCPRF2D::AliTPCPRF2D()
+            :TObject(),
+             fcharge(0),
+             fY1(0.),
+             fY2(0.),
+             fNYdiv(0),
+             fNChargeArray(0),
+             fChargeArray(0),
+             fHeightFull(0.),
+             fHeightS(0.),
+             fShiftY(0.),
+             fWidth(0.),
+             fK(0.),
+             fNPRF(0),
+             fNdiv(5),
+             fDStep(0.),
+             fKNorm(1.),
+             fInteg(0.),
+             fGRF(0),
+             fK3X(0.),
+             fK3Y(0.),
+             fPadDistance(0.),
+             fOrigSigmaX(0.),
+             fOrigSigmaY(0.),
+             fChargeAngle(0.),
+             fPadAngle(0.),
+             fSigmaX(0.),
+             fSigmaY(0.),
+             fMeanX(0.),
+             fMeanY(0.),
+             fInterX(0),
+             fInterY(0),
+             fCurrentY(0.),
+             fDYtoWire(0.),
+             fDStepM1(0.)             
 {
   //default constructor for response function object
-  fcharge = 0;
-  fNChargeArray = 0;
-  fChargeArray = 0;
+
   fNPRF =fgkNPRF ;
-  fSigmaX = 0;
-  fSigmaY = 0;
 
-  fGRF = 0;
-  fKNorm = 1;
-  fOrigSigmaY=0;
-  fOrigSigmaX=0;
-  fNdiv = 5;
-  //set daault angels
-  fChargeAngle = 0;
-  fPadAngle = 0;
   //chewron default values   
   SetPad(0.8,0.8);
   SetChevron(0.2,0.0,1.0);
@@ -247,7 +269,7 @@ Float_t  AliTPCPRF2D::GetGRF(Float_t xin, Float_t yin)
 }
 
    
-void AliTPCPRF2D::SetParam( TF2 * GRF,  Float_t kNorm, 
+void AliTPCPRF2D::SetParam( TF2 *const GRF,  Float_t kNorm, 
                       Float_t sigmaX, Float_t sigmaY)
 {
   //adjust parameters of the original charge distribution
@@ -287,7 +309,7 @@ void AliTPCPRF2D::SetGauss(Float_t sigmaX, Float_t sigmaY,
   fOrigSigmaY=sigmaY;
   sprintf(fType,"Gauss");
   if (fGRF !=0 ) fGRF->Delete();
-  fGRF = new TF2("fun",funGauss2D,-5.,5.,-5.,5.,4);
+  fGRF = new TF2("FunGauss2D",FunGauss2D,-5.,5.,-5.,5.,4);
   
   funParam[0]=sigmaX;
   funParam[1]=sigmaY;  
@@ -320,7 +342,7 @@ void AliTPCPRF2D::SetCosh(Float_t sigmaX, Float_t sigmaY,
   fOrigSigmaY=sigmaY; 
   sprintf(fType,"Cosh");
   if (fGRF !=0 ) fGRF->Delete();
-  fGRF = new TF2("fun",        funCosh2D,-5.,5.,-5.,5.,4);   
+  fGRF = new TF2("FunCosh2D",  FunCosh2D,-5.,5.,-5.,5.,4);   
   funParam[0]=sigmaX;
   funParam[1]=sigmaY;
   funParam[2]=fK;  
@@ -351,7 +373,7 @@ void AliTPCPRF2D::SetGati(Float_t K3X, Float_t K3Y,
   fPadDistance=padDistance;  
   sprintf(fType,"Gati");
   if (fGRF !=0 ) fGRF->Delete();
-  fGRF = new TF2("fun",        funGati2D,-5.,5.,-5.,5.,5);  
+  fGRF = new TF2("FunGati2D",  FunGati2D,-5.,5.,-5.,5.,5);  
  
   funParam[0]=padDistance;
   funParam[1]=K3X;
@@ -642,30 +664,30 @@ void AliTPCPRF2D::UpdateSigma()
 }
 
 
-void AliTPCPRF2D::Streamer(TBuffer &R__b)
+void AliTPCPRF2D::Streamer(TBuffer &xRuub)
 {
    // Stream an object of class AliTPCPRF2D
 
-   if (R__b.IsReading()) {
-      UInt_t R__s, R__c;
-      Version_t R__v = R__b.ReadVersion(&R__s, &R__c);
-      AliTPCPRF2D::Class()->ReadBuffer(R__b, this, R__v, R__s, R__c);
+   if (xRuub.IsReading()) {
+      UInt_t xRuus, xRuuc;
+      Version_t xRuuv = xRuub.ReadVersion(&xRuus, &xRuuc);
+      AliTPCPRF2D::Class()->ReadBuffer(xRuub, this, xRuuv, xRuus, xRuuc);
       //read functions
       if (strncmp(fType,"User",3)!=0){
        delete fGRF;  
         if (strncmp(fType,"Gauss",3)==0) 
-         fGRF = new TF2("fun",funGauss2D,-5.,5.,-5.,5.,4);
+         fGRF = new TF2("FunGauss2D",FunGauss2D,-5.,5.,-5.,5.,4);
         if (strncmp(fType,"Cosh",3)==0) 
-         fGRF = new TF2("fun",funCosh2D,-5.,5.,-5.,5.,4);
+         fGRF = new TF2("FunCosh2D",FunCosh2D,-5.,5.,-5.,5.,4);
         if (strncmp(fType,"Gati",3)==0) 
-         fGRF = new TF2("fun",funGati2D,-5.,5.,-5.,5.,5);      
+         fGRF = new TF2("FunGati2D",FunGati2D,-5.,5.,-5.,5.,5);      
         if (fGRF!=0) fGRF->SetParameters(funParam);
       }
       //calculate conversion coefitient to convert position to virtual wire
       fDYtoWire=Float_t(fNYdiv-1)/(fY2-fY1);
       fDStepM1=1/fDStep;
    } else {
-      AliTPCPRF2D::Class()->WriteBuffer(R__b,this);
+      AliTPCPRF2D::Class()->WriteBuffer(xRuub,this);
    }
 }