1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
18 ///////////////////////////////////////////////////////////////////////////////
20 // base class for reconstruction algorithms //
22 // Derived classes should implement a default constructor and //
23 // the virtual methods //
24 // - Reconstruct : to perform the local reconstruction for all events //
25 // - FillESD : to fill the ESD for the current event //
27 // The reconstructor classes for the barrel detectors should in addition //
28 // implement the method //
29 // - CreateTracker : to create a tracker object for the barrel detector //
31 // The ITS reconstructor should in addition implement the method //
32 // - CreateVertexer : to create an object for the vertex finding //
34 ///////////////////////////////////////////////////////////////////////////////
38 #include "AliReconstructor.h"
42 ClassImp(AliReconstructor)
45 //_____________________________________________________________________________
46 void AliReconstructor::ConvertDigits(AliRawReader* /*rawReader*/,
47 TTree* /*digitsTree*/) const
49 // convert raw data digits into digit objects in a root tree
51 AliError("conversion of raw data digits into digit objects not implemented");
55 //_____________________________________________________________________________
56 void AliReconstructor::Reconstruct(TTree* /*digitsTree*/,
57 TTree* /*clustersTree*/) const
59 // run the local reconstruction
61 AliError("local event reconstruction not implemented");
64 //_____________________________________________________________________________
65 void AliReconstructor::Reconstruct(AliRawReader* /*rawReader*/,
66 TTree* /*clustersTree*/) const
68 // run the local reconstruction with raw data input
70 AliError("local event reconstruction not implemented for raw data input");
73 //_____________________________________________________________________________
74 void AliReconstructor::Reconstruct(AliRunLoader* /*runLoader*/) const
76 // run the local reconstruction
78 AliError("local reconstruction not implemented");
81 //_____________________________________________________________________________
82 void AliReconstructor::Reconstruct(AliRunLoader* /*runLoader*/,
83 AliRawReader* /*rawReader*/) const
85 // run the local reconstruction with raw data input
87 AliError("local reconstruction not implemented for raw data input");
91 //_____________________________________________________________________________
92 void AliReconstructor::FillESD(TTree* /*digitsTree*/, TTree* /*clustersTree*/,
93 AliESD* /*esd*/) const
96 // by default nothing is done
100 //_____________________________________________________________________________
101 void AliReconstructor::FillESD(AliRawReader* /*rawReader*/,
102 TTree* clustersTree, AliESD* esd) const
104 // fill the ESD in case of raw data input.
105 // by default the FillESD method for MC is called
107 FillESD((TTree*)NULL, clustersTree, esd);
110 //_____________________________________________________________________________
111 void AliReconstructor::FillESD(AliRunLoader* /*runLoader*/,
112 AliESD* /*esd*/) const
115 // by default nothing is done
119 //_____________________________________________________________________________
120 void AliReconstructor::FillESD(AliRunLoader* runLoader,
121 AliRawReader* /*rawReader*/, AliESD* esd) const
123 // fill the ESD in case of raw data input.
124 // by default the FillESD method for MC is called
126 FillESD(runLoader, esd);
130 //_____________________________________________________________________________
131 const char* AliReconstructor::GetDetectorName() const
133 // get the name of the detector
135 static TString detName;
137 detName.Remove(0, 3);
138 detName.Remove(detName.Index("Reconstructor"));
139 return detName.Data();