]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTriggerCrateConfig.cxx
Improving event printout
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerCrateConfig.cxx
index c37dec7497a07ca7a39ea1dc597632cd45dbcb0e..6c2843306714b07408f33c98bc1c67d6efd2a26d 100644 (file)
 ClassImp(AliMUONTriggerCrateConfig)
 /// \endcond
 
-
  //______________________________________________________________________________
-AliMUONTriggerCrateConfig::AliMUONTriggerCrateConfig()
-  : TNamed("Trigger Crate","configuration trigger crate"),
-    fId(0),
+AliMUONTriggerCrateConfig::AliMUONTriggerCrateConfig(AliMpTriggerCrate* mpTriggerCrate)
+  : TObject(),
+    fMpCrate(mpTriggerCrate),
     fMask(0),
     fMode(0),
     fCoinc(0),
-    fLocalBoard(false)
+    fId(0),
+    fLocalBoard()
 {
 /// Standard constructor for Shuttle + DA
+
+  if ( mpTriggerCrate ) {
+    fId = mpTriggerCrate->GetId(); 
+    for ( Int_t i=0; i<mpTriggerCrate->GetNofLocalBoards(); ++i ) {
+      fLocalBoard.Add(mpTriggerCrate->GetLocalBoardId(i));
+    }  
+  }
 }
 
 
  //______________________________________________________________________________
-AliMUONTriggerCrateConfig::AliMUONTriggerCrateConfig(const Char_t* name, UShort_t id, UShort_t mask, UShort_t mode, UShort_t coinc)
-  : TNamed(name, "configuration trigger crate"),
-    fId(id),
-    fMask(mask),
-    fMode(mode),
-    fCoinc(coinc),
-    fLocalBoard(false)
+AliMUONTriggerCrateConfig::AliMUONTriggerCrateConfig(TRootIOCtor* ioCtor)
+  : TObject(),
+    fMpCrate(0x0),
+    fMask(0),
+    fMode(0),
+    fCoinc(0),
+    fId(0),
+    fLocalBoard(ioCtor)
 {
 /// Standard constructor for Shuttle + DA
 }
@@ -73,18 +81,11 @@ AliMUONTriggerCrateConfig::~AliMUONTriggerCrateConfig()
 //______________________________________________________________________________
 Bool_t AliMUONTriggerCrateConfig::AddLocalBoard(Int_t localBoardId)
 {
-/// Add detection element with given detElemId.
-/// Return true if the detection element was added
-
-  if ( HasLocalBoard(localBoardId) ) {
-    AliWarningStream() 
-      << "Local board with Id=" << localBoardId << " already present."
-      << endl;
-    return false;
-  }    
+/// Add local boards with given detElemId.
+/// Return true if the local board was added
 
   fLocalBoard.Add(localBoardId);
-  return true;
+  return fMpCrate->AddLocalBoard(localBoardId);
 }   
 
 
@@ -93,7 +94,7 @@ Int_t AliMUONTriggerCrateConfig::GetNofLocalBoards() const
 {  
 /// Return the number of local board in this crate
 
-  return fLocalBoard.GetSize(); 
+  return fMpCrate->GetNofLocalBoards(); 
 }
 
 //______________________________________________________________________________
@@ -101,10 +102,7 @@ Int_t  AliMUONTriggerCrateConfig::GetLocalBoardId(Int_t index) const
 {  
 /// Return the local board by index (in loop)
 
-  if (index >= 0 && index < fLocalBoard.GetSize())
-      return fLocalBoard.GetValue(index); 
-  else 
-      return 0; // begin at 1
+  return fMpCrate->GetLocalBoardId(index);
 }
 
 //______________________________________________________________________________
@@ -112,6 +110,23 @@ Bool_t  AliMUONTriggerCrateConfig::HasLocalBoard(Int_t localBoardId) const
 {  
 /// Return true if crate has local boardwith given localBoardId
 
-  return fLocalBoard.HasValue(localBoardId); 
+  return fMpCrate->HasLocalBoard(localBoardId); 
 }
 
+
+//______________________________________________________________________________
+Int_t  AliMUONTriggerCrateConfig::GetNofLocalBoardsOld() const 
+{ 
+/// Return the number of local board in this crate from the old
+/// data member. Only for OCDB backward compatibility checking.
+
+  return fLocalBoard.GetSize(); 
+}
+//______________________________________________________________________________
+Int_t  AliMUONTriggerCrateConfig::GetLocalBoardIdOld(Int_t index) const 
+{ 
+/// Return the local board by index (in loop)from the old
+/// data member. Only for OCDB backward compatibility checking.
+
+  return fLocalBoard.GetValue(index); 
+}