]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONClusterReconstructor.h
Adding AliMpCDB class
[u/mrichter/AliRoot.git] / MUON / AliMUONClusterReconstructor.h
index 087c85f12d5a1c8e92506dbb64c0c29e302681d3..4f8c01d65db49c2c105659699737c9d30ae21ccc 100644 (file)
@@ -8,59 +8,45 @@
 
 /// \ingroup rec
 /// \class AliMUONClusterReconstructor
-/// \brief MUON cluster reconstructor in ALICE
-///
-/////////////////////////////////////
-/// MUON event reconstructor in ALICE
-/////////////////////////////////////
+/// \brief Steering class for clusterizing MUON tracking chambers
 
 #include <TObject.h>
-#include "AliMUONClusterFinderVS.h" //AZ
 
-class AliLoader;
-class AliMUON;
+class AliMUONVClusterFinder;
+class AliMUONGeometryTransformer;
+class AliMUONVClusterStore;
+class AliMUONVDigitStore;
 class AliMUONRawCluster;
-//AZ class AliMUONClusterFinderVS;
-class AliMUONData;
-class AliRawReader;
 
 class AliMUONClusterReconstructor : public TObject 
 {
  public:
-  AliMUONClusterReconstructor(AliLoader* loader, AliMUONData* data = 0x0); // Constructor
+  AliMUONClusterReconstructor(AliMUONVClusterFinder* finder = 0x0,
+                              const AliMUONGeometryTransformer* transformer = 0x0
+                              ); 
+
   virtual ~AliMUONClusterReconstructor(void); // Destructor
 
  
-  // Cluster Finding & Trigger
-  virtual void   Digits2Clusters();
-  virtual void   Trigger2Trigger() ;
-
-  // pointer to data container
-  AliMUONData*   GetMUONData() {return fMUONData;}
-  // Reco Model
-  AliMUONClusterFinderVS* GetRecoModel() {return fRecModel;}
-  //  AliMUONClusterFinderAZ* GetRecoModel() {return fRecModel;}
-  //AZ void   SetRecoModel(AliMUONClusterFinderVS* rec) {fRecModel = rec;}
-  void   SetRecoModel(AliMUONClusterFinderVS* rec) {if (fRecModel) delete fRecModel; fRecModel = rec;} //AZ
-  //  void   SetRecoModel(AliMUONClusterFinderAZ* rec) {fRecModel = rec;}
-
-
+  // Cluster Finding 
+  virtual void Digits2Clusters(const AliMUONVDigitStore& digitStore, AliMUONVClusterStore& clusterStore);
+  
  protected:
-  AliMUONClusterReconstructor();                  // Default constructor
+  /// Not implemented
   AliMUONClusterReconstructor (const AliMUONClusterReconstructor& rhs); // copy constructor
+  /// Not implemented
   AliMUONClusterReconstructor& operator=(const AliMUONClusterReconstructor& rhs); // assignment operator
 
- private:
-
-  AliMUONData*            fMUONData;           //! Data container for MUON subsystem 
-  AliMUONClusterFinderVS* fRecModel;           //! cluster recontruction model
-  //AliMUONClusterFinderAZ* fRecModel;           //! cluster recontruction model
-
-  // alice loader
-  AliLoader* fLoader;
+  void ClusterizeOneDE(Int_t detElemId, const AliMUONVDigitStore& digitStore);
 
+private:
+  AliMUONVClusterFinder* fClusterFinder; //!< the object doing the real clustering job (not owner)  
 
-  ClassDef(AliMUONClusterReconstructor,0) // MUON cluster reconstructor in ALICE
+  const AliMUONGeometryTransformer* fTransformer; //!< to go from local to global (not owner)
+  
+  AliMUONVClusterStore* fClusterStore; //!< not owner
+  
+  ClassDef(AliMUONClusterReconstructor,0) // Clustering steering
 };
        
 #endif