]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMDGeometryBuilder.h
Some changes to make it possible to run the DA's
[u/mrichter/AliRoot.git] / FMD / AliFMDGeometryBuilder.h
index 888a4484e8b1d00f56660b3c62bdbd80156c5859..5fa3879d187206e389f45f05996d8b1dcff4f58d 100644 (file)
@@ -85,36 +85,71 @@ protected:
       fCopper(o.fCopper), 
       fSteel(o.fSteel)
   {}
-  /** Assignment operator */
+  /** 
+   * Assignment operator 
+   *
+   * @return Reference to this object
+   */  
   AliFMDGeometryBuilder& operator=(const AliFMDGeometryBuilder&){return *this;}
-  /** Make a ring volume 
-      @param r Ring geometry 
-      @return  Ring volume */
-  virtual TGeoVolume* RingGeometry(AliFMDRing* r);
 
-  /** Make a honey comb shape from passed parameters.
-      @param id       Detector identifier (1,2, or 3)
-      @param ring     Ring identifier ('I' or 'O')
-      @param r1       Inner radius
-      @param r2       Outer radius
-      @param w        width 
-      @param t        Thickness of material 
-      @param c        Clearing from horizontal. 
-      @return Pointer to newly allocated composite shape. */ 
+  /** 
+   * Make a polygonic extrusion shape based on verticies passed in @a
+   * verticies 
+   * 
+   * @param verticies List of verticies
+   * @param thick     Thickness
+   * 
+   * @return newly allocated polygonic extrusion shape
+   */
+  virtual TGeoShape* MakeXTRU(const TObjArray& verticies, Double_t thick) const;
+  
+  /** 
+   * Make a ring volume 
+   * 
+   * @param r Ring geometry 
+   *
+   * @return  Ring volume 
+   */
+  virtual TGeoVolume* RingGeometry(const AliFMDRing* r);
+
+  /** 
+   * Make a honey comb shape from passed parameters.
+   *
+   * @param id       Detector identifier (1,2, or 3)
+   * @param ring     Ring identifier ('I' or 'O')
+   * @param r1       Inner radius
+   * @param r2       Outer radius
+   * @param w        width 
+   * @param t        Thickness of material 
+   * @param c        Clearing from horizontal. 
+   *
+   * @return Pointer to newly allocated composite shape. 
+   */ 
   virtual TGeoShape* HoneycombShape(Int_t id, Char_t ring,
                                    double r1, double r2, 
                                    double w, double t, double c=0.3);
-  /** Make a detector volume 
-      @param d Detector geometry 
-      @param motherTop Mother volume (detector volume)
-      @param motherBot Mother volume (detector volume)
-      @param zmother Z position of mother 
-      @param innerTop Inner ring volume 
-      @param innerBot Inner ring volume 
-      @param outerTop Outer ring volume 
-      @param outerBot Outer ring volume 
-      @return  Detector volume */
-  virtual TGeoVolume* DetectorGeometry(AliFMDDetector* d, 
+  /** 
+   * Get the tension box volume
+   * 
+   * 
+   * @return 
+   */
+  virtual TGeoVolume* TensionBox();
+  /** 
+   * Make a detector volume 
+   *
+   * @param d Detector geometry 
+   * @param motherTop Mother volume (detector volume)
+   * @param motherBot Mother volume (detector volume)
+   * @param zmother Z position of mother 
+   * @param innerTop Inner ring volume 
+   * @param innerBot Inner ring volume 
+   * @param outerTop Outer ring volume 
+   * @param outerBot Outer ring volume 
+   *
+   * @return  Detector volume 
+   */
+  virtual TGeoVolume* DetectorGeometry(const AliFMDDetector* d, 
                                       TGeoVolume* motherTop, 
                                       TGeoVolume* motherBot, 
                                       Double_t    zmother, 
@@ -122,34 +157,45 @@ protected:
                                       TGeoVolume* innerBot, 
                                       TGeoVolume* outerTop=0,
                                       TGeoVolume* outerBot=0);
-  /** Make FMD1 volume 
-      @param d Detector geometry 
-      @param innerTop Inner ring volume 
-      @param innerBot Inner ring volume 
-      @return FMD1 volume  */
-  virtual TGeoVolume* FMD1Geometry(AliFMD1* d, 
+  /** 
+   * Make FMD1 volume 
+   *
+   * @param d Detector geometry 
+   * @param innerTop Inner ring volume 
+   * @param innerBot Inner ring volume 
+   * @return FMD1 volume  
+   */
+  virtual TGeoVolume* FMD1Geometry(const AliFMD1* d, 
                                   TGeoVolume* innerTop,
                                   TGeoVolume* innerBot);
-  /** Make FMD2 volume 
-      @param d Detector geometry 
-      @param innerTop Inner ring volume 
-      @param innerBot Inner ring volume 
-      @param outerTop Outer ring volume 
-      @param outerBot Outer ring volume 
-      @return FMD2 volume  */
-  virtual TGeoVolume* FMD2Geometry(AliFMD2* d, 
+  /** 
+   * Make FMD2 volume 
+   *
+   * @param d Detector geometry 
+   * @param innerTop Inner ring volume 
+   * @param innerBot Inner ring volume 
+   * @param outerTop Outer ring volume 
+   * @param outerBot Outer ring volume 
+   *
+   * @return FMD2 volume  
+   */
+  virtual TGeoVolume* FMD2Geometry(const AliFMD2* d, 
                                   TGeoVolume* innerTop, 
                                   TGeoVolume* innerBot, 
                                   TGeoVolume* outerTop,
                                   TGeoVolume* outerBot);
-  /** Make FMD3 volume 
-      @param d Detector geometry 
-      @param innerTop Inner ring volume 
-      @param innerBot Inner ring volume 
-      @param outerTop Outer ring volume 
-      @param outerBot Outer ring volume 
-      @return FMD3 volume  */
-  virtual TGeoVolume* FMD3Geometry(AliFMD3* d, 
+  /**
+   * Make FMD3 volume 
+   *
+   * @param d Detector geometry 
+   * @param innerTop Inner ring volume 
+   * @param innerBot Inner ring volume 
+   * @param outerTop Outer ring volume 
+   * @param outerBot Outer ring volume 
+   *
+   * @return FMD3 volume  
+   */
+  virtual TGeoVolume* FMD3Geometry(const AliFMD3* d, 
                                   TGeoVolume* innerTop, 
                                   TGeoVolume* innerBot, 
                                   TGeoVolume* outerTop,