]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMD.h
This update includes the FMD detector algorithm classes.
[u/mrichter/AliRoot.git] / FMD / AliFMD.h
index d55e13d559511323d7512090f52f9baec9808abb..13a611e5badeb8458e28a16f1ff10c16f0eb5c94 100644 (file)
@@ -7,6 +7,11 @@
  *
  * See cxx source for full Copyright notice                               
  */
+/** @file    AliFMD.h
+    @author  Christian Holm Christensen <cholm@nbi.dk>
+    @date    Sun Mar 26 17:59:37 2006
+    @brief   Declaration of AliFMD detector driver 
+*/
 /** @mainpage ALICE FMD Off-line code 
     
     @b Contents 
@@ -16,6 +21,7 @@
       - @ref sim   (see also @ref FMD_sim)
       - @ref rec   (see also @ref FMD_rec)
       - @ref util  (see also @ref FMD_util)
+    - @ref script  (see also @ref FMD_script)
     - @ref quick
     - @ref authors
     
       dummy) calibration and alignment         data.  These derive from
       TTask.  
 
+    @section script Scripts 
+    
+    Most scripts live in @c FMD/scripts.  The notiable exceptions are 
+    @ref Simulate.C, @ref Reconstruct.C, and @ref Config.C 
+
     @section quick Quick start 
 
     First, install ROOT.  Then Install TGeant3: 
 #ifndef ALIDETECTOR_H  
 # include <AliDetector.h>
 #endif
-#ifndef ROOT_TBranch
-# include <TBranch.h>
-#endif
 class TBranch;
 class TClonesArray;
 class TBrowser;
@@ -280,15 +288,8 @@ public:
       @param name  Name of object.
       @param title Title of object. */
   AliFMD(const char *name, const char *title);
-  /** Copy constructor 
-      @param other Object to copy from */
-  AliFMD(const AliFMD& other);
   /** Destructor */
   virtual ~AliFMD(); 
-  /** Assignment operator 
-      @param other Object to assign from
-      @return Reference to this object  */
-  AliFMD& operator=(const AliFMD& other);
   /** Wheter to make a detailed geometry
       @param use If true, make detailed geometry  */
   void UseDetailed(Bool_t use=kTRUE) { fDetailed = use; }
@@ -299,6 +300,10 @@ public:
       AliFMDGeometry to construct the geometry.  This in turn calls
       AliFMDGeometryBuilder.   */
   virtual void   CreateGeometry();
+  /** Create entries for alignable volumes associating the symbolic volume
+      name with the corresponding volume path. Needs to be syncronized with
+      eventual changes in the geometry.   */
+  virtual void  AddAlignableVolumes() const;
   /** Create the tracking mediums used by the FMD.  This associates
       the tracking mediums defined with the FMD in the
       TVirtualMCApplication (AliMC). 
@@ -336,7 +341,7 @@ public:
   virtual        void   DrawDetector();
   /** Calculate the distance from the mouse to the FMD on the screen
       Dummy routine */
-  virtual        Int_t  DistanceToPrimitive(Int_t px, Int_t py);
+  virtual        Int_t  DistancetoPrimitive(Int_t px, Int_t py);
   /** Store x, y, z of all hits in memory for display. 
       Normally, the hits are drawn using TPolyMarker3D - however, that
       is not very useful for the FMD.  Therefor, this member function
@@ -440,7 +445,8 @@ public:
                                         UShort_t strip=0, 
                                         UShort_t count1=0, 
                                         Short_t  count2=-1, 
-                                        Short_t  count3=-1);
+                                        Short_t  count3=-1, 
+                                        Short_t  count4=-1);
   /** Add a digit to the Digit tree 
       @param digits
       - digits[0]  [UShort_t] Detector #
@@ -467,7 +473,8 @@ public:
                                          Float_t  edep=0,
                                          UShort_t count1=0, 
                                          Short_t  count2=-1, 
-                                         Short_t  count3=-1);
+                                         Short_t  count3=-1,
+                                         Short_t  count4=-1);
   /** @}*/
 
   /** @{ */
@@ -529,7 +536,16 @@ protected:
   };  
 
   TObjArray*         fBad;                  //! debugging - bad hits 
-  
+
+private:  
+  /** Copy constructor 
+      @param other Object to copy from */
+  AliFMD(const AliFMD& other);
+  /** Assignment operator 
+      @param other Object to assign from
+      @return Reference to this object  */
+  AliFMD& operator=(const AliFMD& other);
+
   ClassDef(AliFMD,11)     // Base class FMD entry point
 };