1 #ifndef ALIMUONTRIGGERCRATESTORE_H
2 #define ALIMUONTRIGGERCRATESTORE_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUONTriggerCrateStore
11 /// \brief A container for AliMUONTriggerCrate objects.
13 // Author Laurent Aphecetche
19 class AliMUONLocalTriggerBoard;
20 class AliMUONTriggerCrate;
24 class AliMUONTriggerCrateStore : public TObject
27 AliMUONTriggerCrateStore();
28 virtual ~AliMUONTriggerCrateStore();
30 Int_t NumberOfCrates() const;
32 AliMUONTriggerCrate* NextCrate();
33 AliMUONTriggerCrate* Crate(const char* crateName) const;
35 Int_t NumberOfLocalBoards() const;
36 void FirstLocalBoard();
37 AliMUONLocalTriggerBoard* NextLocalBoard();
38 AliMUONLocalTriggerBoard* LocalBoard(Int_t boardNumber) const;
40 void ReadFromFile(const char* crateFile = "$ALICE_ROOT/MUON/data/CRATE.TXT");
43 void AddCrate(const char* crateName);
46 AliMpExMap* fCrates; ///< list of crates
47 AliMpExMap* fLocalBoards; ///< local boards (indexed by their number)
48 TExMapIter* fCrateIterator; //!< iterator for the crate map above
49 TExMapIter* fLBIterator; //!< iterator for boards (through crates)
50 AliMUONTriggerCrate* fCurrentCrate; //!< used for iterating on local board
51 Int_t fCurrentLocalBoard; //!< used for iterating on local board
53 ClassDef(AliMUONTriggerCrateStore,1) // Reader for CRATE.TXT file