// $Id$
-/// \ingroup sim
+/// \ingroup trigger
/// \class AliMUONTriggerCrateStore
/// \brief A container for AliMUONTriggerCrate objects.
///
# include "TObject.h"
#endif
+#include "TString.h"
+
class AliMUONLocalTriggerBoard;
class AliMUONTriggerCrate;
class AliMpExMap;
-class TExMapIter;
+class TIterator;
+class AliMUONCalibrationData;
class AliMUONTriggerCrateStore : public TObject
{
virtual ~AliMUONTriggerCrateStore();
Int_t NumberOfCrates() const;
- void FirstCrate();
- AliMUONTriggerCrate* NextCrate();
+
AliMUONTriggerCrate* Crate(const char* crateName) const;
-
+ AliMUONTriggerCrate* Crate(Int_t ddl, Int_t reg) const;
+
Int_t NumberOfLocalBoards() const;
- void FirstLocalBoard();
- AliMUONLocalTriggerBoard* NextLocalBoard();
+
AliMUONLocalTriggerBoard* LocalBoard(Int_t boardNumber) const;
- void ReadFromFile(const char* crateFile = "$ALICE_ROOT/MUON/data/CRATE.TXT");
+ void ReadFromFile(AliMUONCalibrationData* calibData);
+ TIterator* CreateCrateIterator() const;
+
+ TIterator* CreateLocalBoardIterator() const;
+
+protected:
+ /// Not implemented
+ AliMUONTriggerCrateStore(const AliMUONTriggerCrateStore& rhs);
+ /// Not implemented
+ AliMUONTriggerCrateStore& operator = (const AliMUONTriggerCrateStore& rhs);
private:
void AddCrate(const char* crateName);
private:
AliMpExMap* fCrates; ///< list of crates
AliMpExMap* fLocalBoards; ///< local boards (indexed by their number)
- TExMapIter* fCrateIterator; //!< iterator for the crate map above
- TExMapIter* fLBIterator; //!< iterator for boards (through crates)
- AliMUONTriggerCrate* fCurrentCrate; //!< used for iterating on local board
- Int_t fCurrentLocalBoard; //!< used for iterating on local board
- ClassDef(AliMUONTriggerCrateStore,1) // Reader for CRATE.TXT file
+ TString GetCrateName(Int_t ddl, Int_t reg) const;
+
+ ClassDef(AliMUONTriggerCrateStore,2) // Reader for CRATE.TXT file
};
#endif