During simulation: fill STU region w/ non null time sums
[u/mrichter/AliRoot.git] / FMD / AliFMDDetector.h
index 5654d6f..a707a4f 100644 (file)
@@ -7,10 +7,16 @@
  *
  * See cxx source for full Copyright notice                               
  */
+//__________________________________________________________________
+//
+// Utility class to help implement the FMD geometry.  This provides
+// the interface for the concrete geometry implementations of the FMD
+// sub-detectors. 
 /** @file    AliFMDDetector.h
     @author  Christian Holm Christensen <cholm@nbi.dk>
     @date    Mon Mar 27 12:36:27 2006
     @brief   Sub-detector base class declaration
+    @ingroup FMD_base
 */
 #ifndef ROOT_TNamed
 # include <TNamed.h>
@@ -55,10 +61,6 @@ public:
   void SetInnerZ(Double_t x) { fInnerZ = x; }
   /** @param x Position of outer ring along z */
   void SetOuterZ(Double_t x) { fOuterZ = x; }
-  /** @param x Thickness of honeycomb plate */
-  void SetHoneycombThickness(Double_t x=1) { fHoneycombThickness = x; }
-  /** @param x Thickness of aluminium of honeycomb */
-  void SetAlThickness(Double_t x=.1) { fAlThickness = x; }
   /** @param x Inner radius of inner honeycomb */
   void SetInnerHoneyLowR(Double_t x) { fInnerHoneyLowR = x; }
   /** @param x Outer radius of inner honeycomb */
@@ -74,10 +76,6 @@ public:
   Double_t GetInnerZ() const { return fInnerZ; }
   /** @return Position of outer ring along z */
   Double_t GetOuterZ() const { return fOuterZ; }
-  /** @return Thickness of honeycomb plate */
-  Double_t GetHoneycombThickness() const { return fHoneycombThickness; }
-  /** @return Thickness of aluminium of honeycomb */
-  Double_t GetAlThickness() const { return fAlThickness; }
   /** @return Inner radius of inner honeycomb */
   Double_t GetInnerHoneyLowR() const { return fInnerHoneyLowR; }
   /** @return Outer radius of inner honeycomb */
@@ -129,21 +127,23 @@ public:
       detector.  */
   Bool_t XYZ2Detector(Double_t x, Double_t y, Double_t z, 
                      Char_t& ring, UShort_t& sector, UShort_t& strip) const;
+
+  /** Declare alignable volumes */
+  virtual void SetAlignableVolumes() const;
+   /** Get transformation matrix for a sector in a ring 
+      @param ring   Ring id
+      @param sector Sector numberr 
+      @return Matrix on success, 0 otherwise */
+  TGeoMatrix*   FindTransform(Char_t ring, UShort_t sector) const;
 protected:
   /** Check if we have all transformations for a ring 
       @param ring Ring to check for 
       @return @c true if we got all transforms  */
   Bool_t        HasAllTransforms(Char_t ring) const;
-  /** Get transformation matrix for a sector in a ring 
-      @param ring   Ring id
-      @param sector Sector numberr 
-      @return Matrix on success, 0 otherwise */
-  TGeoMatrix*   FindTransform(Char_t ring, UShort_t sector) const;
   Int_t                fId;                    // Detector number
   Double_t     fInnerZ;                // Position of outer ring along z
   Double_t     fOuterZ;                // Position of outer ring along z
-  Double_t     fHoneycombThickness;    // Thickness of honeycomb plate
-  Double_t     fAlThickness;           // Thickness of aluminium of honeycomb
   Double_t     fInnerHoneyLowR;        // Inner radius of inner honeycomb
   Double_t     fInnerHoneyHighR;       // Outer radius of inner honeycomb
   Double_t     fOuterHoneyLowR;        // Inner radius of outer honeycomb
@@ -153,7 +153,7 @@ protected:
   TObjArray*    fInnerTransforms;       // List of inner module global
   TObjArray*    fOuterTransforms;       // List of outer module global
 
-  ClassDef(AliFMDDetector, 1); // 
+  ClassDef(AliFMDDetector, 2); // 
 };
 
 #endif