Fixes for #86059: Install data when ALICE_ROOT does not point to source (Christian)
[u/mrichter/AliRoot.git] / MUON / AliMUONDDLTrigger.cxx
index 6488c6f..06334ec 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
+
+/* $Id$ */
  
+#include <TClonesArray.h>
+
 #include "AliMUONDDLTrigger.h"
+#include "AliMUONLocalStruct.h"
+#include "AliMUONRegHeader.h"
+#include "AliMUONDarcHeader.h"
+
+
+//-----------------------------------------------------------------------------
+/// \class AliMUONDDLTrigger
+///
+/// One DDL for trigger part of the MUON spectrometer.
+/// 
+/// \author C. Finck
+//-----------------------------------------------------------------------------
 
+/// \cond CLASSIMP
 ClassImp(AliMUONDDLTrigger)
+/// \endcond
+
+
+//___________________________________________
+AliMUONDDLTrigger::AliMUONDDLTrigger(TRootIOCtor* /*dummy*/)
+:  TObject(),
+fDarcHeader(0x0)
+{
+  ///ctor
+}
+
 //___________________________________________
 AliMUONDDLTrigger::AliMUONDDLTrigger()
   :  TObject(),
-     fddlWord(),
-     fGlobalInput(),
-     fGlobalOutput(0),
-     fEndOfDDL(0xDEADFACE)
+     fDarcHeader(new AliMUONDarcHeader())
 {
-  //ctor
+  ///ctor
 }
 
 //___________________________________________
 AliMUONDDLTrigger::~AliMUONDDLTrigger()
 {
-  //dtor
+  ///dtor
+  delete fDarcHeader;
+
+}
+
+//___________________________________________
+void AliMUONDDLTrigger::AddRegHeader(const AliMUONRegHeader& regHeader)
+{
+  /// adding regional header informations 
+  /// in the given TClonesArray
+  ///
+  TClonesArray* regHeaderArray = (TClonesArray*)fDarcHeader->GetRegHeaderArray();
+
+  TClonesArray &eventArray = *regHeaderArray;
+  new(eventArray[eventArray.GetEntriesFast()]) AliMUONRegHeader(regHeader);
+}
+
+//___________________________________________
+void AliMUONDDLTrigger::AddLocStruct(const AliMUONLocalStruct& loc, Int_t iReg)
+{
+  /// adding local card informations 
+  /// for a given regional structure
+  /// using TClonesArrays
+
+  AliMUONRegHeader* regHeader = (AliMUONRegHeader*)fDarcHeader->GetRegHeaderEntry(iReg);
+
+  TClonesArray* localArray = (TClonesArray*)regHeader->GetLocalArray();
+
+  TClonesArray &locArray = *localArray;
+  new(locArray[locArray.GetEntriesFast()]) AliMUONLocalStruct(loc);
 }