]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSVertexerFast.cxx
Fixed includes and scope of a string
[u/mrichter/AliRoot.git] / ITS / AliITSVertexerFast.cxx
index 21caef51345a92ba62fd7ceb31be553457444119..80428d8e08c7961bf90c39d34c45bc98f03a041a 100644 (file)
@@ -30,6 +30,9 @@
 // Origin: masera@to.infn.it     25/09/2003                            //
 //                                                                     //
 /////////////////////////////////////////////////////////////////////////
+
+using std::endl;
+using std::cout;
 ClassImp(AliITSVertexerFast)
 
 
@@ -40,6 +43,10 @@ fSmear(0)
 {
   // Default Constructor
   fSmear = 0;
+  AliRunLoader *rl =AliRunLoader::Instance();
+  TTree *trK=(TTree*)rl->TreeK();
+  if(!trK)AliFatal("This class should be used only with simulated events!!");
+  rl->LoadHeader(); 
 }
 
 //______________________________________________________________________
@@ -49,58 +56,43 @@ fSmear(0)
   // Standard constructor
   fSmear = new Double_t[3];
   for(Int_t i=0;i<3;i++)fSmear[i]=smear[i];
-  Info("AliITSVertexerFast","Gaussian smaring of the generated vertex. Parameters %f12.5 , %f12.5 , %f12.5 \n",fSmear[0],fSmear[1],fSmear[2]);
+  AliInfo(Form("Gaussian smaring of the generated vertex. Sigmas (x,y,z) = %12.5f , %12.5f , %12.5f cm",fSmear[0],fSmear[1],fSmear[2]));
+  AliRunLoader *rl =AliRunLoader::Instance();
+  TTree *trK=(TTree*)rl->TreeK();
+  if(!trK)AliFatal("This class should be used only with simulated events!!");
+  rl->LoadHeader(); 
+
 }
 
+
 //______________________________________________________________________
 AliITSVertexerFast::~AliITSVertexerFast(){
   // Destructor
-  if(fSmear)delete [] fSmear;
-  fSmear = 0;
+  delete [] fSmear;
 }
 
 //______________________________________________________________________
-AliESDVertex* AliITSVertexerFast::FindVertexForCurrentEvent(Int_t evnumb){
+AliESDVertex* AliITSVertexerFast::FindVertexForCurrentEvent(TTree *itsClusterTree){
   // Defines the AliITSVertex for the current event
+  AliWarning(Form("This class should be used only with simulated events!! Input cluster tree (%p) will not be used!!",itsClusterTree));
+
   fCurrentVertex = 0;
-  AliRunLoader *rl =AliRunLoader::GetRunLoader();
-  rl->GetEvent(evnumb);
+  AliRunLoader *rl =AliRunLoader::Instance();
   TArrayF primaryVertex(3);  // true vertex
-  AliHeader* header = gAlice->GetHeader();
+  AliHeader* header = rl->GetHeader();
   AliGenEventHeader* genEventHeader = header->GenEventHeader();   
   genEventHeader->PrimaryVertex(primaryVertex); 
-
+  
   // Smearing
   Double_t vrttrue[3],vrtx[3];
   for(Int_t k=0; k<3;k++){
     vrttrue[k] = static_cast<Double_t>(primaryVertex[k]);
     vrtx[k] = gRandom->Gaus(vrttrue[k],fSmear[k]);
   }
-  char name[30];
-  sprintf(name,"Vertex_%d",evnumb);
-  fCurrentVertex = new AliESDVertex(vrtx,fSmear,name);
-  fCurrentVertex->SetTruePos(vrttrue);
+  fCurrentVertex = new AliESDVertex(vrtx,fSmear,"Smeared Generated Vertex");
+  fCurrentVertex->SetTitle("vertexer: smearMC");
   return fCurrentVertex;
-}
-
-//______________________________________________________________________
-void AliITSVertexerFast::FindVertices(){
-  // computes the vertices of the events in the range FirstEvent - LastEvent
-
-  AliRunLoader *rl = AliRunLoader::GetRunLoader();
-  AliITSLoader* iTSloader =  (AliITSLoader*) rl->GetLoader("ITSLoader");
-  iTSloader->ReloadRecPoints();
-  for(Int_t i=fFirstEvent;i<=fLastEvent;i++){
-    rl->GetEvent(i);
-    FindVertexForCurrentEvent(i);   
-    if(fCurrentVertex) WriteCurrentVertex();
-    else {
-      cout<<"Vertex not found for event "<<i<<endl;
-
-    }
-
-  }
-
+  
 }
 
 //________________________________________________________
@@ -108,26 +100,8 @@ void AliITSVertexerFast::PrintStatus() const {
   // Print current status
   cout <<"=======================================================\n";
 
-  cout<<"First event to be processed "<<fFirstEvent;
-  cout<<"\n Last event to be processed "<<fLastEvent<<endl;
   cout<<"RMS for gaussian smearing: ";
   for(Int_t k=0;k<3;k++)cout<<" "<<fSmear[k];
   cout<<endl;
 }
 
-//______________________________________________________________________
-AliITSVertexerFast::AliITSVertexerFast(const AliITSVertexerFast &vtxr) : 
-                    AliITSVertexer(vtxr) {
-  // Copy constructor
-  // Copies are not allowed. The method is protected to avoid misuse.
-  Error("AliITSVertexerFast","Copy constructor not allowed\n");
-}
-
-//______________________________________________________________________
-AliITSVertexerFast& AliITSVertexerFast::operator=(const 
-                    AliITSVertexerFast& /* vtxr */){
-  // Assignment operator
-  // Assignment is not allowed. The method is protected to avoid misuse.
-  Error("= operator","Assignment operator not allowed\n");
-  return *this;
-}