]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTriggerCrateStore.h
- Disentangle masks effect from trigger chamber efficiency estimation.
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerCrateStore.h
index 46151e1012c94c06d93b9cae069c56d6cc1b1e5a..ce497d104cc0aefbe96a778e6f3cd8666a133799 100644 (file)
@@ -6,20 +6,23 @@
 
 // $Id$
 
-/// \ingroup sim
+/// \ingroup trigger
 /// \class AliMUONTriggerCrateStore
 /// \brief A container for AliMUONTriggerCrate objects.
 /// 
-/// \author Laurent Aphecetche
+//  Author Laurent Aphecetche
 
 #ifndef ROOT_TObject
 #  include "TObject.h"
 #endif
 
+#include "TString.h"
+
 class AliMUONLocalTriggerBoard;
 class AliMUONTriggerCrate;
 class AliMpExMap;
-class TExMapIter;
+class TIterator;
+class AliMUONCalibrationData;
 
 class AliMUONTriggerCrateStore : public TObject
 {
@@ -28,16 +31,24 @@ public:
   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); 
@@ -45,12 +56,10 @@ private:
 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