]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONRefitter.h
adding switches for 2011 data and so that PID doesnt crash for local testing
[u/mrichter/AliRoot.git] / MUON / AliMUONRefitter.h
index 7b043f47300d1535dd023f84356739a8278e99b9..0498937ecf5ce6673bccb3bec5794c3d14e69f01 100644 (file)
@@ -22,16 +22,17 @@ class AliMUONESDInterface;
 class AliMUONVClusterStore;
 class AliMUONVTrackStore;
 class AliMUONTrack;
+class AliMUONRecoParam;
 
 class AliMUONRefitter : public TObject
 {
 public:
   
-  AliMUONRefitter();
+  AliMUONRefitter(const AliMUONRecoParam* recoParam);
   virtual ~AliMUONRefitter();
   
   /// connect to the ESD interface containing MUON data to refit
-  void Connect(AliMUONESDInterface* esdInterface) {fESDInterface = esdInterface;}
+  void Connect(const AliMUONESDInterface* esdInterface) {fkESDInterface = esdInterface;}
   
   // re-reconstruct all tracks (clusters) in the ESD event
   AliMUONVTrackStore* ReconstructFromDigits();
@@ -45,6 +46,8 @@ public:
   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:
   
@@ -59,16 +62,17 @@ private:
   
   AliMUONTrack* RetrackFromDigits(const AliMUONTrack& track);
   
-  void AddClusterToTracks(const AliMUONVClusterStore &localClusterStore, AliMUONVTrackStore &trackStore);
-  
+  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)
   
+  Int_t nextClusterIndex; ///< Index of the next cluster produced by this refitter (to build its uniqueID)
   
   ClassDef(AliMUONRefitter,0)
 };