class AliMUONVClusterStore;
class AliMUONVTrackStore;
class AliMUONTrack;
+class AliMUONRecoParam;
class AliMUONRefitter : public TObject
{
public:
- AliMUONRefitter();
+ AliMUONRefitter(const AliMUONRecoParam* recoParam);
virtual ~AliMUONRefitter();
- void Connect(AliMUONESDInterface* esdInterface) {fESDInterface = esdInterface;}
+ /// connect to the ESD interface containing MUON data to refit
+ void Connect(const AliMUONESDInterface* esdInterface) {fkESDInterface = esdInterface;}
// re-reconstruct all tracks (clusters) in the ESD event
AliMUONVTrackStore* ReconstructFromDigits();
AliMUONVTrackStore* ReconstructFromClusters();
// refit a particular track in the ESD event
- AliMUONTrack* RetrackFromDigits(Int_t iTrack);
- AliMUONTrack* RetrackFromClusters(Int_t iTrack);
+ AliMUONTrack* RetrackFromDigits(UInt_t trackId);
+ AliMUONTrack* RetrackFromClusters(UInt_t trackId);
// re-clusterize a particular cluster in the ESD event
- AliMUONVClusterStore* ReClusterize(Int_t iTrack, Int_t iCluster);
+ AliMUONVClusterStore* ReClusterize(UInt_t trackId, UInt_t clusterId);
AliMUONVClusterStore* ReClusterize(UInt_t clusterId);
private:
- void CreateGeometryTransformer();
- void CreateClusterServer(AliMUONGeometryTransformer& transformer);
- AliMUONVClusterFinder* CreateClusterFinder();
- void CreateTrackReconstructor(AliMUONVClusterServer& clusterServer);
+ void CreateGeometryTransformer();
+ void CreateClusterServer(AliMUONGeometryTransformer& transformer);
- void AddClusterToTracks(const AliMUONVClusterStore &localClusterStore, AliMUONVTrackStore &trackStore);
+ AliMUONTrack* RetrackFromDigits(const AliMUONTrack& track);
+ Bool_t AddClusterToTracks(const AliMUONVClusterStore &localClusterStore, AliMUONVTrackStore &trackStore);
private:
+ const AliMUONRecoParam* fkRecoParam; ///< pointer to reco param (not owner)
+ const AliMUONESDInterface* fkESDInterface; ///< container of MUON tracks/clusters/digits (not owner)
AliMUONGeometryTransformer* fGeometryTransformer; ///< geometry transformer (owner)
AliMUONVClusterServer* fClusterServer; ///< clusterizer (owner)
AliMUONVTrackReconstructor* fTracker; ///< tracker (owner)
- AliMUONESDInterface* fESDInterface; ///< container of MUON tracks/clusters/digits (not owner)
ClassDef(AliMUONRefitter,0)