]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOF.h
Working version of the class for the TOF Trigger. For the time being,
[u/mrichter/AliRoot.git] / TOF / AliTOF.h
index 67093cab2c8d73d2b54cd7fa14d03d2d4f5b94ea..844b9ea4b31e3df512ef2ef419112fa6f3e3e895 100644 (file)
@@ -25,24 +25,18 @@ class TFolder ;
 
 #include "TObject.h"
 #include "TTree.h" 
+
 #include "AliDetector.h"
-#include <Riostream.h>
+
 #include "AliTOFSDigitizer.h"
 #include "AliTOFGeometry.h"
-
+#include "AliTOFTrigger.h"
 
 class AliTOF : public AliDetector {
 public:
   AliTOF(); 
   AliTOF(const char *name, const char *title, Option_t *option="noTimeZero");
   virtual ~AliTOF() ;
-
-  static  Int_t NDDL()        { return kNDDL;};
-  static  Int_t NTRM()        { return kNTRM;}
-  static  Int_t NTdc()        { return kNTdc;};
-  static  Int_t NCh()         { return kNCh;};
-  static  Int_t NPadXTRM()    { return kNCh*kNTdc;};
-
 // getters for AliTOF object status
   //Float_t GetTimeRes() const {return fTimeRes;};
   //Float_t GetChrgRes() const {return fChrgRes;};
@@ -50,20 +44,23 @@ public:
   virtual void    SetTreeAddress();
   virtual void    AddHit(Int_t track, Int_t* vol, Float_t* hits);
   virtual void    AddT0Hit(Int_t track, Int_t* vol, Float_t* hits);
+  virtual void    AddDigit(Int_t* /*tracks*/, Int_t* /*vol*/) {};
   virtual void    AddDigit(Int_t* tracks, Int_t* vol, Float_t* digits);
   virtual void    AddSDigit(Int_t tracknum, Int_t* vol, Float_t* digits);
   virtual void    CreateGeometry();
-  virtual void    CreateMaterials();
+  virtual void    CreateMaterials(){};
   virtual void    Init();
   //virtual void    MakeBranch(Option_t* option, const char *file=0);
   virtual void    MakeBranch(Option_t *opt=" ");
   virtual void    Makehits(Bool_t hits=1);
   virtual void    FinishEvent();
   virtual Int_t   IsVersion() const =0;
-  Int_t           DistancetoPrimitive(Int_t px, Int_t py) const;
+  Int_t           DistancetoPrimitive(Int_t px, Int_t py);
   virtual void    StepManager()=0;
   virtual void    TOFpc(Float_t /*xtof*/, Float_t /*ytof*/, Float_t /*zlenC*/,
-                        Float_t /*zlenB*/, Float_t /*zlenA*/, Float_t /*ztof0*/){}
+                        Float_t /*zlenB*/, Float_t /*zlenA*/, Float_t /*ztof0*/){};
+  virtual void    TOFpc(Float_t /*xtof*/,  Float_t /*ytof*/, Float_t /*zlenA*/,
+                       Float_t /*zlenB*/){};
   virtual void    DrawModule() const;
   virtual void    DrawDetectorModules()=0;
   virtual void    DrawDetectorStrips()=0;
@@ -87,6 +84,10 @@ public:
   void CreateSDigitsArray();
   AliTOFGeometry *GetGeometry() const { return fTOFGeometry; }; 
 
+  // Trigger
+  virtual AliTriggerDetector* CreateTriggerDetector() const
+       {return new AliTOFTrigger();}
+
 protected:
   TFolder* fFGeom ;       //  Folder that holds the Geometry definition
   TTask*   fDTask ;       //  TOF Digitizer container
@@ -108,16 +109,6 @@ protected:
  
 private:
 
-  // DAQ characteristics
-  // cfr. TOF-TDR pag. 105 for Glossary
-  // TARODA : TOF-ALICE Read Out and Data Acquisition system
-  enum {
-    kNDDL        =    4, // Number of DDL (Detector Data Link) per sector
-    kNTRM        =   10, // Number of TRM ( Readout Module) per DDL
-    kNTdc        =   30, // Number of Tdc (Time to Digital Converter) per TRM
-    kNCh         =    8  // Number of channels per Tdc
-  };
-
   ClassDef(AliTOF,7)  // Time Of Flight base class
 };