#include "AliReconstructor.h"
#include "AliITSRecoParam.h"
-
+#include "AliITSDetTypeRec.h"
+#include "AliITSRecPointContainer.h"
+class AliESDpid;
class AliITSgeom;
-class AliLoader;
class AliTracker;
+class AliTrackleter;
class AliITStrackerMI;
-class AliITSpidESD;
class AliITSReconstructor: public AliReconstructor {
public:
AliITSReconstructor();
virtual ~AliITSReconstructor();
- AliITSReconstructor(const AliITSReconstructor &ob); // copy constructor
- AliITSReconstructor& operator=(const AliITSReconstructor & ob); // ass. op.
- virtual void Init(AliRunLoader* runLoader) const;
-
- virtual void Reconstruct(AliRunLoader* runLoader) const;
- virtual void Reconstruct(AliRunLoader* runLoader,
- AliRawReader* rawReader) const;
- virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const
- {AliReconstructor::Reconstruct(rawReader,clustersTree);}
- virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const
- {AliReconstructor::Reconstruct(digitsTree, clustersTree);}
-
- virtual AliTracker* CreateTracker(AliRunLoader* runLoader) const;
- virtual AliVertexer* CreateVertexer(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,
+ virtual void Init();
+ virtual void GetPidSettings(AliESDpid *ESDpid);
+ virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
+ virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
+
+ virtual AliTracker* CreateTracker() const;
+ virtual AliVertexer* CreateVertexer() const;
+ virtual AliTracker* CreateTrackleter() const;
+ virtual AliTrackleter* CreateMultFinder() const;
+
+ virtual void FillESD(TTree* /*digitsTree*/, TTree* clustersTree,
+ AliESDEvent* /* esd */) const;
+ 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);}
+ {FillESD((TTree*)NULL, clustersTree, esd);}
+ virtual void Terminate() const {AliITSRecPointContainer::Destroy();}
- void SetRecoParam(AliITSRecoParam * param){ fgkRecoParam = param;}
- static const AliITSRecoParam* GetRecoParam(){ return fgkRecoParam;}
+ static const AliITSRecoParam* GetRecoParam() { return dynamic_cast<const AliITSRecoParam*>(AliReconstructor::GetRecoParam(0)); }
private:
- // methods
- AliITSgeom* GetITSgeom(AliRunLoader* runLoader) const;
+ AliITSReconstructor(const AliITSReconstructor &); //Not implemented
+ AliITSReconstructor& operator=(const AliITSReconstructor &); //Not implemented
+
//data
- static AliITSRecoParam * fgkRecoParam; // reconstruction parameters
- AliITSpidESD *fItsPID; //Pid for ITS
- ClassDef(AliITSReconstructor, 1) // class for the ITS reconstruction
+ AliITSDetTypeRec *fDetTypeRec; // reconstructor
+
+ ClassDef(AliITSReconstructor, 6) // class for the ITS reconstruction
};
#endif