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 AliMUONPadStatusMaker;
20 class AliMUONVCalibParam;
23 class AliMUONPadStatusMapMaker : public TObject
26 AliMUONPadStatusMapMaker(const AliMUONPadStatusMaker& padStatusMaker,
28 Bool_t deferredInitialization=kTRUE);
29 virtual ~AliMUONPadStatusMapMaker();
31 /** Get access to internal status map store (for debug only, as it may not be complete,
32 depending on whether you've already called StatusMap() for all possible de,manu,channel
33 combinations or not...
35 AliMUONVStore* StatusMap() const { return fStatusMap; }
37 Int_t StatusMap(Int_t detElemId, Int_t manuId, Int_t manuChannel) const;
39 /// Return status bit map to tell a pad is bad
40 static Int_t SelfDeadMask() { return fgkSelfDead; }
44 AliMUONPadStatusMapMaker(const AliMUONPadStatusMapMaker&);
46 AliMUONPadStatusMapMaker& operator=(const AliMUONPadStatusMapMaker&);
50 AliMUONVCalibParam* ComputeStatusMap(Int_t detElemId, Int_t manuId) const;
54 static Int_t fgkSelfDead; //!< status bit map to tell a pad is bad
70 const AliMUONPadStatusMaker& fStatusMaker; //!< to access pad statuses
71 Int_t fMask; //!< mask to be tested
72 mutable AliMUONVStore* fStatusMap; //!< status map
74 ClassDef(AliMUONPadStatusMapMaker,0) // Pad status map maker