]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Add AliMUONTriggerCircuitNew and AliMUONTriggerCrateStore
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 11 May 2006 14:59:16 +0000 (14:59 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 11 May 2006 14:59:16 +0000 (14:59 +0000)
(Philippe)

MUON/AliMUON.cxx
MUON/AliMUON.h
MUON/AliMUONv1.cxx
MUON/MUONbaseLinkDef.h
MUON/libMUONbase.pkg

index 25b0920f7a3b6cf11eab865891731cb4f238749d..4df500651d4450bd09a4a0e615463d8d8cd82e05 100644 (file)
@@ -58,6 +58,7 @@
 #include "AliMUONRawCluster.h"
 #include "AliMUONTransientDigit.h"
 #include "AliMUONTriggerCircuit.h"
+#include "AliMUONTriggerCircuitNew.h"
 #include "AliMUONGeometry.h"
 #include "AliMUONGeometryTransformer.h"
 #include "AliMUONGeometryBuilder.h"
@@ -103,6 +104,7 @@ AliMUON::AliMUON()
     fSplitLevel(0),
     fChambers(0),
     fTriggerCircuits(0),
+    fTriggerCircuitsNew(0),
     fGeometryBuilder(0),
     fSegmentation(0),
     fAccCut(kFALSE),
@@ -136,6 +138,7 @@ AliMUON::AliMUON(const char *name, const char *title,
     fSplitLevel(0),
     fChambers(0),
     fTriggerCircuits(0),
+    fTriggerCircuitsNew(0),
     fGeometryBuilder(0),
     fSegmentation(0),
     fAccCut(kFALSE),
@@ -201,6 +204,12 @@ AliMUON::AliMUON(const char *name, const char *title,
     for (Int_t circ=0; circ<AliMUONConstants::NTriggerCircuit(); circ++) {
       fTriggerCircuits->AddAt(new AliMUONTriggerCircuit(),circ);          
     }
+
+    fTriggerCircuitsNew = new TObjArray(AliMUONConstants::NTriggerCircuit());
+    for (Int_t circ=0; circ<AliMUONConstants::NTriggerCircuit(); circ++) {
+      fTriggerCircuitsNew->AddAt(new AliMUONTriggerCircuitNew(),circ);          
+    }
+    
 }
 
 //____________________________________________________________________
@@ -228,6 +237,11 @@ AliMUON::~AliMUON()
     fTriggerCircuits->Delete();
     delete fTriggerCircuits;
   }
+  if (fTriggerCircuitsNew){
+    fTriggerCircuitsNew->Delete();
+    delete fTriggerCircuitsNew;
+  }
+  
   delete fMUONData;
   delete fGeometryBuilder;
   delete fSegmentation;
index 27c1a0b890bc4b358a5e4d0cd66aad9a6f8b833d..89c19c2a9082db332284922fc7a52b77fdb55e34 100644 (file)
@@ -26,6 +26,7 @@ class TTree;
 
 class AliLoader;
 class AliMUONTriggerCircuit;
+class AliMUONTriggerCircuitNew;
 class AliMUONData;
 class AliMUONResponse;
 class AliMUONSegmentation;
@@ -118,6 +119,8 @@ class AliMUON : public  AliDetector
     // Return reference to Circuit #id
     virtual AliMUONTriggerCircuit& TriggerCircuit(Int_t id)
       {return *((AliMUONTriggerCircuit *) (*fTriggerCircuits)[id]);}
+    virtual AliMUONTriggerCircuitNew& TriggerCircuitNew(Int_t id)
+       {return *((AliMUONTriggerCircuitNew*) (*fTriggerCircuitsNew)[id]);}
     // Return pointers to digits
     AliMUONRawCluster    *RawCluster(Int_t ichamber, Int_t icathod,
                                     Int_t icluster);
@@ -139,6 +142,7 @@ class AliMUON : public  AliDetector
     Int_t                 fSplitLevel;         // Splitlevel when making branches in outfiles.
     TObjArray*            fChambers;           // List of Tracking Chambers
     TObjArray*            fTriggerCircuits;    // List of Trigger Circuits
+    TObjArray*            fTriggerCircuitsNew;    // List of Trigger Circuits
     AliMUONGeometryBuilder*  fGeometryBuilder; // Geometry builder 
     AliMUONSegmentation*  fSegmentation;       // New segmentation 
    
@@ -165,7 +169,7 @@ class AliMUON : public  AliDetector
     
     AliMUONRawWriter* fRawWriter; //!
     
-    ClassDef(AliMUON,12)  // MUON Detector base class
+    ClassDef(AliMUON,13)  // MUON Detector base class
 };
 #endif
 
index 1b06b1811b4805c13ca46446f5ed9634ae370f2b..40190668676d18c83bbb7bb4fb2cb518b97796c4 100644 (file)
@@ -1,6 +1,6 @@
 /**************************************************************************
  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- *      SigmaEffect_thetadegrees                                                                  *
+ *                                                                        *
  * Author: The ALICE Off-line Project.                                    *
  * Contributors are mentioned in the code where appropriate.              *
  *                                                                        *
@@ -28,6 +28,8 @@
 #include "AliMUONSegmentation.h"
 #include "AliMUONHit.h"
 #include "AliMUONTriggerCircuit.h"
+#include "AliMUONTriggerCircuitNew.h"
+#include "AliMUONTriggerCrateStore.h"
 #include "AliMUONGeometryBuilder.h"    
 #include "AliMUONGeometry.h"   
 #include "AliMUONGeometryTransformer.h"        
@@ -212,7 +214,14 @@ void AliMUONv1::Init()
   for (Int_t i=0; i<AliMUONConstants::NTriggerCircuit(); i++)  {
     AliMUONTriggerCircuit* c = (AliMUONTriggerCircuit*)(fTriggerCircuits->At(i));
     c->Init(i);
-//    c->Print();
+  }
+  
+  AliMUONTriggerCrateStore store;
+  store.ReadFromFile();
+  for (Int_t i=0; i<AliMUONConstants::NTriggerCircuit(); i++)  
+  {
+    AliMUONTriggerCircuitNew* c = (AliMUONTriggerCircuitNew*)(fTriggerCircuitsNew->At(i));
+    c->Init(i,store);
   }
   
 }
index 164afbc3fd7b0857e4697052c7297004672edfb3..990ed65da9f8b58a69c1676c852665881345eaf8 100644 (file)
@@ -33,6 +33,8 @@
 #pragma link C++ class AliMUONChamber+; 
 #pragma link C++ class AliMUONChamberTrigger+; 
 #pragma link C++ class AliMUONTriggerCircuit+; 
+#pragma link C++ class AliMUONTriggerCircuitNew+; 
+#pragma link C++ class AliMUONTriggerCrateStore+; 
 
 // containers
 #pragma link C++ class AliMUONData+; 
index cdd8b62d752427f3e31eeb7dfdef82af685fbc47..f01eef336ad5a9737fd5f65b319dff9a7873958b 100644 (file)
@@ -15,8 +15,10 @@ SRCS:=  AliMUON.cxx AliMUONv1.cxx \
         AliMUONDataInterface.cxx \
         AliMUONLoader.cxx \
         AliMUONChamber.cxx \
+        AliMUONTriggerCrateStore.cxx \
         AliMUONChamberTrigger.cxx \
         AliMUONTriggerCircuit.cxx \
+        AliMUONTriggerCircuitNew.cxx \
         AliMUONData.cxx \
         AliMUONDataIterator.cxx \
         AliMUONVDataIterator.cxx \