class AliTPCParam;
class AliTPCclustererMI;
+class AliTPCtrackerMI;
+class AliTPCAltroEmulator;
class AliTPCReconstructor: public AliReconstructor {
public:
AliTPCReconstructor();
virtual ~AliTPCReconstructor();
-
- virtual Bool_t HasLocalReconstruction() const {return kTRUE;}
- virtual void Reconstruct(AliRunLoader* runLoader) const;
- virtual void Reconstruct(AliRunLoader* runLoader,
- AliRawReader* rawReader) const;
virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
- virtual AliTracker* CreateTracker(AliRunLoader* runLoader) const;
- virtual void FillESD(AliRunLoader* runLoader, AliESDEvent* esd) const;
- virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
- AliESDEvent* esd) const {
- AliReconstructor::FillESD(digitsTree,clustersTree,esd);
- }
- virtual void FillESD(AliRawReader* rawReader, TTree* clustersTree,
- AliESDEvent* esd) const {
- AliReconstructor::FillESD(rawReader,clustersTree,esd);
- }
- virtual void FillESD(AliRunLoader* runLoader,
- AliRawReader* rawReader, AliESDEvent* esd) const {
- AliReconstructor::FillESD(runLoader,rawReader,esd);
- }
-
- void SetRecoParam(AliTPCRecoParam * param){ fgkRecoParam = param;}
- static const AliTPCRecoParam* GetRecoParam(){ return fgkRecoParam;}
+ virtual AliTracker* CreateTracker() const;
+
+ virtual void FillESD(TTree* /*digitsTree*/, TTree* /*clustersTree*/,
+ AliESDEvent* esd) const;
+ virtual void FillESD(AliRawReader* /*rawReader*/, TTree* /*clustersTree*/,
+ AliESDEvent* esd) const
+ {FillESD((TTree*)NULL,(TTree*)NULL,esd);}
+
+ static const AliTPCRecoParam* GetRecoParam() { return dynamic_cast<const AliTPCRecoParam*>(AliReconstructor::GetRecoParam(1)); }
//
- static Double_t GetCtgRange() { return fgkRecoParam->GetCtgRange();}
- static Double_t GetMaxSnpTracker(){ return fgkRecoParam->GetMaxSnpTracker();}
- static Double_t GetMaxSnpTrack() { return fgkRecoParam->GetMaxSnpTrack();}
+ static Double_t GetCtgRange() { return GetRecoParam()->GetCtgRange();}
+ static Double_t GetMaxSnpTracker(){ return GetRecoParam()->GetMaxSnpTracker();}
+ static Double_t GetMaxSnpTrack() { return GetRecoParam()->GetMaxSnpTrack();}
static Int_t StreamLevel() { return fgStreamLevel;}
static void SetStreamLevel(Int_t level) { fgStreamLevel = level;}
+ static void SetAltroEmulator(AliTPCAltroEmulator *altro) { fAltroEmulator=altro;}
+ static AliTPCAltroEmulator * GetAltroEmulator() { return fAltroEmulator;}
+
+ void ParseOptions(AliTPCtrackerMI* tracker) const;
private:
+ AliTPCReconstructor(const AliTPCReconstructor&); //Not implemented
+ AliTPCReconstructor& operator=(const AliTPCReconstructor&); //Not implemented
AliTPCParam* GetTPCParam() const;
- static AliTPCRecoParam * fgkRecoParam; // reconstruction parameters
static Int_t fgStreamLevel; // flag for streaming - for TPC reconstruction
AliTPCclustererMI* fClusterer; // TPC clusterer
-
+ static AliTPCAltroEmulator * fAltroEmulator; // ALTRO emulator
ClassDef(AliTPCReconstructor, 0) // class for the TPC reconstruction
};