]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/mapping/AliMpDDLStore.h
Removing gcc 4.3 warnings
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDDLStore.h
index 8612903e1d6da9c4cdfee1b641a99f2ce92c64e4..ea717eb9f47b51e3ecc513477284fed056d3f1b4 100644 (file)
@@ -19,7 +19,7 @@
 
 #include "AliMpExMap.h"
 #include "AliMpIntPair.h"
-#include "AliMpGlobalCrate.h"
+#include "AliMpRegionalTrigger.h"
 #include <TObject.h>
 #include <TObjArray.h>
 #include <TArrayI.h>
@@ -30,7 +30,7 @@ class AliMpDetElement;
 class AliMpBusPatch;
 class AliMpLocalBoard;
 class AliMpTriggerCrate;
-
+class AliMpDataStreams;
 class TArrayI;
 
 class AliMpDDLStore : public  TObject {
@@ -41,7 +41,8 @@ class AliMpDDLStore : public  TObject {
     
     // static access method
     static AliMpDDLStore* Instance(Bool_t warn = true); 
-    static AliMpDDLStore* ReadData(Bool_t warn = true);
+    static AliMpDDLStore* ReadData(const AliMpDataStreams& dataStreams,
+                                   Bool_t warn = true);
     
     // methods
     AliMpDDL*          GetDDL(Int_t ddlId, Bool_t warn = true) const;
@@ -50,8 +51,9 @@ class AliMpDDLStore : public  TObject {
     AliMpLocalBoard*   GetLocalBoard(Int_t localBoardId, Bool_t warn = true) const;
     AliMpTriggerCrate* GetTriggerCrate(TString crateName, Bool_t warn = true) const;
     AliMpTriggerCrate* GetTriggerCrate(Int_t ddlId, Int_t index, Bool_t warn = true) const;
-    /// Get Global Crate object
-    AliMpGlobalCrate*  GetGlobalCrate() const {return fGlobalCrate;}
+
+    /// Return regional trigger object
+    const AliMpRegionalTrigger*  GetRegionalTrigger() const { return &fRegionalTrigger; }
     
     Int_t  GetDEfromBus(Int_t busPatchId) const;
     Int_t  GetDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const;
@@ -61,30 +63,21 @@ class AliMpDDLStore : public  TObject {
     Int_t  GetDDLfromBus(Int_t busPatchId) const;
     Int_t  GetBusPatchId(Int_t detElemId, Int_t manuId) const;
     
-    /// Return trigger crates iterator
-    TExMapIter GetTriggerCrateItr() const {return fTriggerCrates.GetIterator();}
 
-    /// Return trigger local board iterator
-    TExMapIter GetLocalBoardItr() const {return fLocalBoards.GetIterator();}
-
-    /// Get an iterator to loop over bus patches
-    TExMapIter GetBusPatchesIterator() const { return fBusPatches.GetIterator(); }
-    
-    /// read Global trigger crate file
-    static Bool_t ReadGlobalTrigger(AliMpGlobalCrate& crate, const Char_t* globalName = 0);
-    
-    /// read local trigger crate file   
-    static Bool_t ReadRegionalTrigger(AliMpExMap& triggerCrates, AliMpExMap& localBoards, 
-                                      TObjArray& dlls, const Char_t* fileName = 0, Bool_t warn = true);
-    
-    /// Get detection elt and Manu number from serial number
-    AliMpIntPair  GetDetElemIdManu(Int_t manuSerial) const;
+    /// Get link port and DSP from busPatch id
+    AliMpIntPair  GetLinkPortId(Int_t busPatchId) const;
 
-    /// print info of all manus
+    /// Print info of all manus
     void PrintAllManu() const;
+    
+    // Set methods
+    void SetRegionalTrigger(const AliMpRegionalTrigger& regionalTrigger);
 
+    TIterator* CreateBusPatchIterator() const; 
     
   private:
+    AliMpDDLStore(const AliMpDataStreams& dataStreams);
+    /// Not implemented
     AliMpDDLStore();
     /// Not implemented
     AliMpDDLStore(const AliMpDDLStore& rhs);
@@ -95,27 +88,30 @@ class AliMpDDLStore : public  TObject {
     Int_t  GetManuListIndex(Int_t detElemId) const;
     Int_t  GetBusPatchIndex(Int_t detElemId, Int_t manuId) const;
     Bool_t ReadDDLs();
-    Bool_t ReadTriggerDDLs();
+    Bool_t ReadTrigger();
+    Bool_t SetTriggerDDLs();
     Bool_t SetManus();
+    Bool_t ReadBusPatchSpecial();
     Bool_t SetPatchModules();
-    Bool_t SetBusPatchLength();
+    Bool_t ReadBusPatchInfo();
     Int_t  GetLocalBoardId(TString name) const;
 
     // static data members     
     static AliMpDDLStore* fgInstance; ///< Singleton instance
     static const Int_t    fgkNofDDLs; ///< Total number of DDLs
     static const Int_t    fgkNofTriggerDDLs; ///< Total number of trigger DDLs
+    static const TString  fgkRevertKeyword; ///< A keyword for ReadBusPatchSpecial()
+    static const TString  fgkExplicitKeyword; ///< A keyword for ReadBusPatchSpecial()
 
     // data members    
+    const AliMpDataStreams&  fDataStreams;  //!< Data streams
     TObjArray     fDDLs;           ///< Array of DDL objects
     AliMpExMap    fBusPatches;     ///< The map of bus patches per their IDs
-    AliMpExMap    fTriggerCrates;  ///< The map of trigger crate per their ID
-    AliMpExMap    fLocalBoards;    ///< The map of local board per their ID
     TArrayI       fManuList12[16]; ///< Arrays of 1st manu in bus
     TArrayI       fManuBridge2[16]; ///< Arrays of manu number before the bridge in buspatch
-    AliMpGlobalCrate* fGlobalCrate;  ///< Global Crate Object 
+    AliMpRegionalTrigger fRegionalTrigger; ///< Regional trigger
         
-  ClassDef(AliMpDDLStore,3)  // The manager class for definition of detection element types
+  ClassDef(AliMpDDLStore,5)  // The manager class for definition of detection element types
 };
 
 #endif //ALI_MP_DDL_STORE_H