X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONSimpleClusterServer.h;h=a94261eb2ae308a9894a66911d0ebb1cdebb4b73;hb=4e57992488f0f347452128dadcf03c38301d29be;hp=33be8834923b6589d7f00a0a9a14b713e9207c43;hpb=d08b5461bbbd89372fc17344e62c7a9dfca1c607;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONSimpleClusterServer.h b/MUON/AliMUONSimpleClusterServer.h index 33be8834923..a94261eb2ae 100644 --- a/MUON/AliMUONSimpleClusterServer.h +++ b/MUON/AliMUONSimpleClusterServer.h @@ -6,7 +6,7 @@ // $Id$ -/// \ingroup reco +/// \ingroup rec /// \class AliMUONSimpleClusterServer /// \brief Implementation of AliMUONVClusterServer interface /// @@ -16,27 +16,35 @@ # include "AliMUONVClusterServer.h" #endif -class AliMUONVClusterFinder; class AliMUONGeometryTransformer; -class TClonesArray; +class AliMUONTriggerTrackToTrackerClusters; +class AliMUONVClusterFinder; +class AliMUONCluster; +class AliMpVSegmentation; class AliMpExMap; +class AliMpExMapIterator; +class TClonesArray; class AliMUONSimpleClusterServer : public AliMUONVClusterServer { public: - AliMUONSimpleClusterServer(AliMUONVClusterFinder& clusterFinder, + AliMUONSimpleClusterServer(AliMUONVClusterFinder* clusterFinder, const AliMUONGeometryTransformer& transformer); virtual ~AliMUONSimpleClusterServer(); Int_t Clusterize(Int_t chamberId, AliMUONVClusterStore& clusterStore, - const AliMpArea& area); + const AliMpArea& area, + const AliMUONRecoParam* recoParam = 0x0); - void UseDigitStore(const AliMUONVDigitStore& digitStore); + void UseDigits(TIter& next, AliMUONVDigitStore* digitStore = 0x0); void Print(Option_t* opt="") const; - + + /// Use trigger tracks. Return kFALSE if not used. + virtual Bool_t UseTriggerTrackStore(AliMUONVTriggerTrackStore* trackStore); + private: /// Not implemented AliMUONSimpleClusterServer(const AliMUONSimpleClusterServer& rhs); @@ -47,13 +55,18 @@ private: void Global2Local(Int_t detElemId, const AliMpArea& globalArea, AliMpArea& localArea) const; - TClonesArray* PadArray(Int_t detElemId, Int_t cathode) const; + TObjArray* PadArray(Int_t detElemId, Int_t cathode) const; + + Int_t FindMCLabel(const AliMUONCluster& cluster, Int_t detElemId, const AliMpVSegmentation* seg[2]) const; private: - AliMUONVClusterFinder& fClusterFinder; //!< the cluster finder - const AliMUONGeometryTransformer& fTransformer; //!< the geometry transformer + AliMUONVDigitStore* fDigitStore; //!< the digit store (not owner) + AliMUONVClusterFinder* fClusterFinder; //!< the cluster finder (owner) + const AliMUONGeometryTransformer& fkTransformer; //!< the geometry transformer (not owner) AliMpExMap* fPads[2]; ///< map of TClonesArray of AliMUONPads - AliMpExMap* fDEAreas; ///< map of detection element areas in global coordinates + AliMpExMapIterator* fPadsIterator[2]; ///< iterator for the map of TClonesArray of AliMUONPads + AliMUONVTriggerTrackStore* fTriggerTrackStore; ///< trigger track store (if bypassing of St45 was requested) (not owner) + AliMUONTriggerTrackToTrackerClusters* fBypass; ///< to convert trigger track into tracker clusters (owner) ClassDef(AliMUONSimpleClusterServer,0) // Cluster server };