+++ /dev/null
-#ifndef ALIMUONREFITTER_H
-#define ALIMUONREFITTER_H
-
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
-* See cxx source for full Copyright notice */
-
-// $Id$
-
-/// \ingroup rec
-/// \class AliMUONRefitter
-/// \brief class to refit the ESD clusters/tracks
-///
-// Author Philippe Pillot
-
-#include <TObject.h>
-
-class AliMUONGeometryTransformer;
-class AliMUONVClusterFinder;
-class AliMUONVClusterServer;
-class AliMUONVTrackReconstructor;
-class AliMUONESDInterface;
-class AliMUONVClusterStore;
-class AliMUONVTrackStore;
-class AliMUONTrack;
-class AliMUONRecoParam;
-
-class AliMUONRefitter : public TObject
-{
-public:
-
- AliMUONRefitter(const AliMUONRecoParam* recoParam);
- virtual ~AliMUONRefitter();
-
- /// 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(UInt_t trackId);
- AliMUONTrack* RetrackFromClusters(UInt_t trackId);
-
- // re-clusterize a particular cluster in the ESD event
- AliMUONVClusterStore* ReClusterize(UInt_t trackId, UInt_t clusterId);
- AliMUONVClusterStore* ReClusterize(UInt_t clusterId);
-
- // set the first index of clusters produced by this refitter (to build its uniqueID)
- void SetFirstClusterIndex(Int_t index) {nextClusterIndex = (index >= 0) ? index : 0;}
-
-protected:
-
- AliMUONRefitter (const AliMUONRefitter&); ///< copy constructor
- AliMUONRefitter& operator=(const AliMUONRefitter&); ///< assignment operator
-
-
-private:
-
- void CreateGeometryTransformer();
- void CreateClusterServer(AliMUONGeometryTransformer& transformer);
-
- 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)
-
- Int_t nextClusterIndex; ///< Index of the next cluster produced by this refitter (to build its uniqueID)
-
- ClassDef(AliMUONRefitter,0)
-};
-
-#endif
-