]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUON.h
Buffer Size can be defined
[u/mrichter/AliRoot.git] / MUON / AliMUON.h
index 1b2a9aae8ee9ddd3f65ba713069ad6dcedd01c3d..1318690afb8114052da9825717388efc1c8b4972 100644 (file)
@@ -9,22 +9,25 @@
 //  Manager and hits classes for set:MUON     //
 ////////////////////////////////////////////////
 #include "AliDetector.h"
-#include "AliMUONTriggerCircuit.h" // cp
+// #include "AliMUONTriggerCircuit.h" // cp
 
 class AliMUONChamber;
 class AliMUONLocalTrigger;
 class AliMUONGlobalTrigger;
 class AliMUONTriggerCircuit;
 class AliMUONTriggerDecision;
-class AliMUONSegmentation;
+class AliSegmentation;
 class AliMUONResponse;
+class AliMUONMerger;
 class AliMUONHit;
 class AliMUONPadHit;
 class AliMUONRawCluster;
-class AliMUONClusterFinder;
+class AliMUONClusterFinderVS;
 class AliMUONReconstHit;
+class AliMUONMerger;
+
 class TVector;
-class TObjArray;
+#include "TObjArray.h"
 class TFile;
 class TTree;
 
@@ -50,18 +53,18 @@ class AliMUON : public  AliDetector {
     TClonesArray  *PadHits() {return fPadHits;}
     TClonesArray  *LocalTrigger() {return fLocalTrigger;}
     TClonesArray  *GlobalTrigger() {return fGlobalTrigger;}
-    virtual void   MakeBranch(Option_t *opt=" ");
+    virtual void   MakeBranch(Option_t *opt=" ", const char *file=0);
+    virtual void   MakeBranchInTreeD(TTree *treeD, const char *file=0);
     void           SetTreeAddress();
     virtual void   ResetHits();
     virtual void   ResetDigits();
     virtual void   ResetTrigger();
     virtual void   ResetRawClusters();
     // Cluster Finding
-    virtual void   FindClusters(Int_t event ,Int_t lastEntry);
+    virtual void   Digits2Reco();
+    virtual void   FindClusters();
     // Digitisation 
-    virtual void   Digitise(Int_t nev,Int_t bgrEvent, Option_t *opt1=" ",
-                           Option_t *opt2=" ",Text_t *name=" ");
-    virtual void   SortTracks(Int_t *tracks,Int_t *charges, Int_t ntr);
+    virtual void   SDigits2Digits();      
 // Configuration Methods (per station id)
 //
 // Set Chamber Segmentation Parameters
@@ -77,19 +80,23 @@ class AliMUON : public  AliDetector {
     virtual void   SetMaxAdc(Int_t id, Int_t p1);
 // Set Segmentation and Response Model
     virtual void   SetSegmentationModel(Int_t id, Int_t isec,
-                                       AliMUONSegmentation *segmentation);
+                                       AliSegmentation *segmentation);
     virtual void   SetResponseModel(Int_t id, AliMUONResponse *response);
     virtual void   SetNsec(Int_t id, Int_t nsec);
 // Set Reconstruction Model
-    virtual void   SetReconstructionModel(Int_t id, AliMUONClusterFinder *reconstruction);
+    virtual void   SetReconstructionModel(Int_t id, AliMUONClusterFinderVS *reconstruction);
+// Set Merger/Digitizer
+    virtual void   SetMerger(AliMUONMerger* merger);
+    virtual AliMUONMerger* Merger();
+    
 // Set Stepping Parameters
     virtual void   SetMaxStepGas(Float_t p1);
     virtual void   SetMaxStepAlu(Float_t p1);
     virtual void   SetMaxDestepGas(Float_t p1);
     virtual void   SetMaxDestepAlu(Float_t p1);
-    virtual void   SetMuonAcc(Bool_t acc=0, Float_t angmin=2, Float_t angmax=9);
+    virtual void   SetAcceptance(Bool_t acc=0, Float_t angmin=2, Float_t angmax=9);
 // Response Simulation
-    virtual void   MakePadHits(Float_t xhit,Float_t yhit,
+    virtual void   MakePadHits(Float_t xhit,Float_t yhit, Float_t zhit,
                               Float_t eloss, Float_t tof, Int_t id);
 // get Trigger answer
     void   Trigger(Int_t nev);
@@ -120,19 +127,21 @@ class AliMUON : public  AliDetector {
     
            
  protected:
+    Int_t                 fNCh;                // Number of chambers   
+    Int_t                 fNTrackingCh;        // Number of tracking chambers
     TObjArray            *fChambers;           // List of Tracking Chambers
-    TObjArray            *fTriggerCircuits;   // List of Trigger Circuits
+    TObjArray            *fTriggerCircuits;    // List of Trigger Circuits
     Int_t                 fNPadHits;           // Number of pad hits
     TClonesArray         *fPadHits;            // List of pad hits
     TObjArray            *fDchambers;          // List of digits
-    Int_t                *fNdch;               // Number of digits
+    Int_t                *fNdch;               // [fNCh] Number of digits per chamber
     TObjArray            *fRawClusters;        // List of raw clusters
-    Int_t                *fNrawch;             // Number of raw clusters
+    Int_t                *fNrawch;             // [fNTrackingCh] Number of raw clusters  per chamber
     Int_t                 fNLocalTrigger;      // Number of Local Trigger 
     TClonesArray         *fLocalTrigger;       // List of Local Trigger      
     Int_t                 fNGlobalTrigger;     // Number of Global Trigger
     TClonesArray         *fGlobalTrigger;      // List of Global Trigger  
-
+    
 //
     Bool_t   fAccCut;          //Transport acceptance cut
     Float_t  fAccMin;          //Minimum acceptance cut used during transport
@@ -152,25 +161,9 @@ class AliMUON : public  AliDetector {
    Int_t fCurIterPad;        // Current pad index
 // Background eent for event mixing
    Text_t *fFileName;           // ! File with background hits
-   TTree *fTrH1;                // Hits Tree for background event
-   TClonesArray *fHits2;        // List of hits for one track only
-   TClonesArray *fPadHits2;     // List of clusters for one track only
+   AliMUONMerger *fMerger;   // ! pointer to merger
 
-   ClassDef(AliMUON,1)  //Hits manager for set:MUON
+   ClassDef(AliMUON,2)  // MUON Detector base class
 };
 #endif
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-