Fix coverity defect
[u/mrichter/AliRoot.git] / MUON / AliMUONSimpleClusterServer.h
CommitLineData
d08b5461 1#ifndef ALIMUONSIMPLECLUSTERSERVER_H
2#define ALIMUONSIMPLECLUSTERSERVER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5* See cxx source for full Copyright notice */
6
7// $Id$
8
e41c38cf 9/// \ingroup rec
d08b5461 10/// \class AliMUONSimpleClusterServer
11/// \brief Implementation of AliMUONVClusterServer interface
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ALIMUONVCLUSTERSERVER_H
16# include "AliMUONVClusterServer.h"
17#endif
18
d08b5461 19class AliMUONGeometryTransformer;
9bf6860b 20class AliMUONTriggerTrackToTrackerClusters;
21class AliMUONVClusterFinder;
2e2d0c44 22class AliMUONCluster;
23class AliMpVSegmentation;
d08b5461 24class AliMpExMap;
e5b8601d 25class AliMpExMapIterator;
7deb8eb0 26class TClonesArray;
d08b5461 27
28class AliMUONSimpleClusterServer : public AliMUONVClusterServer
29{
30public:
9bf6860b 31 AliMUONSimpleClusterServer(AliMUONVClusterFinder* clusterFinder,
d08b5461 32 const AliMUONGeometryTransformer& transformer);
33
34 virtual ~AliMUONSimpleClusterServer();
35
36 Int_t Clusterize(Int_t chamberId,
37 AliMUONVClusterStore& clusterStore,
35be7ed7 38 const AliMpArea& area,
39 const AliMUONRecoParam* recoParam = 0x0);
d08b5461 40
2e2d0c44 41 void UseDigits(TIter& next, AliMUONVDigitStore* digitStore = 0x0);
d08b5461 42
43 void Print(Option_t* opt="") const;
9bf6860b 44
45 /// Use trigger tracks. Return kFALSE if not used.
46 virtual Bool_t UseTriggerTrackStore(AliMUONVTriggerTrackStore* trackStore);
47
d08b5461 48private:
49 /// Not implemented
50 AliMUONSimpleClusterServer(const AliMUONSimpleClusterServer& rhs);
51 /// Not implemented
52 AliMUONSimpleClusterServer& operator=(const AliMUONSimpleClusterServer& rhs);
53
54 Bool_t Overlap(Int_t detElemId, const AliMpArea& area, AliMpArea& deArea) const;
55
56 void Global2Local(Int_t detElemId, const AliMpArea& globalArea, AliMpArea& localArea) const;
57
9e41a340 58 TObjArray* PadArray(Int_t detElemId, Int_t cathode) const;
d08b5461 59
2e2d0c44 60 Int_t FindMCLabel(const AliMUONCluster& cluster, Int_t detElemId, const AliMpVSegmentation* seg[2]) const;
61
d08b5461 62private:
2e2d0c44 63 AliMUONVDigitStore* fDigitStore; //!< the digit store (not owner)
9bf6860b 64 AliMUONVClusterFinder* fClusterFinder; //!< the cluster finder (owner)
72dae9ff 65 const AliMUONGeometryTransformer& fkTransformer; //!< the geometry transformer (not owner)
d08b5461 66 AliMpExMap* fPads[2]; ///< map of TClonesArray of AliMUONPads
e5b8601d 67 AliMpExMapIterator* fPadsIterator[2]; ///< iterator for the map of TClonesArray of AliMUONPads
9bf6860b 68 AliMUONVTriggerTrackStore* fTriggerTrackStore; ///< trigger track store (if bypassing of St45 was requested) (not owner)
69 AliMUONTriggerTrackToTrackerClusters* fBypass; ///< to convert trigger track into tracker clusters (owner)
d08b5461 70
71 ClassDef(AliMUONSimpleClusterServer,0) // Cluster server
72};
73
74#endif