1 #ifndef ALIMUONPADSTATUSMAPMAKER_H
2 #define ALIMUONPADSTATUSMAPMAKER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUONPadStatusMapMaker
11 /// \brief Convert a pad status container into a pad status *map* container
13 // Author Laurent Aphecetche
19 class AliMUONCalibrationData;
21 class AliMUONVCalibParam;
23 class AliMpVSegmentation;
27 class AliMUONPadStatusMapMaker : public TObject
30 AliMUONPadStatusMapMaker(const AliMUONCalibrationData& calibData);
31 virtual ~AliMUONPadStatusMapMaker();
33 /// Return status bit map to tell a pad is bad
34 static Int_t SelfDeadMask() { return fgkSelfDead; }
36 AliMUONVStore* MakePadStatusMap(const AliMUONVStore& status,
39 static AliMUONVStore* MakeEmptyPadStatusMap();
44 AliMUONPadStatusMapMaker(const AliMUONPadStatusMapMaker&);
46 AliMUONPadStatusMapMaker& operator=(const AliMUONPadStatusMapMaker&);
49 Int_t ComputeStatusMap(const AliMUONVCalibParam& neighbours,
50 Int_t manuChannel, Int_t detElemId) const;
52 Int_t GetPadStatus(Int_t detElemId, Int_t manuId, Int_t manuChannel) const;
55 static Int_t fgkSelfDead; //!< status bit map to tell a pad is bad
56 const AliMUONVStore* fStatus; //!< status store
57 Int_t fMask; //!< mask to be tested
72 const AliMUONCalibrationData& fCalibrationData; //!< to access neighbourStore
74 ClassDef(AliMUONPadStatusMapMaker,0) // Pad status map maker