]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSv11GeometrySPD.h
Macro for SDD dE/dx calibration (from Leonardo and Riccardo)
[u/mrichter/AliRoot.git] / ITS / AliITSv11GeometrySPD.h
index 363a84e04b86d8747bbfd10973afd51310c606d1..926402703eeb8900fb599fb852b75292f231a19e 100644 (file)
  * $Id$
  */
 
+#include <TArrayD.h>
 #include <TGeoManager.h>
 #include <TVirtualMC.h>
 #include <TString.h>
 #include <TArrayI.h>
 #include <TPolyLine.h>
 #include <TPolyMarker.h>
-#include <AliITSv11Geometry.h>
+#include "AliITSv11Geometry.h"
 
 class TGeoVolume;
 class TGeoCompositeShape;
 
+using std::istream;
+
 class AliITSv11GeometrySPD : public AliITSv11Geometry
 {
  public:
@@ -54,8 +57,10 @@ class AliITSv11GeometrySPD : public AliITSv11Geometry
         {return (lay==1) ? GetSenstiveVolumeName1():GetSenstiveVolumeName2();}
     // get medium
     virtual TGeoMedium* GetMedium(const char* mediumName,
-                                  TGeoManager *mgr = gGeoManager) const;
+                                  const TGeoManager *mgr = gGeoManager) const;
     // retrieve the mounting location and rotation needed to mount an SPD stave
+    virtual Int_t GetSPDsectorX0Size() const
+        {return fSPDsectorX0.GetSize();}
     virtual Bool_t GetSectorMountingPoints(Int_t index, Double_t &x0,
                                Double_t &y0, Double_t &x1, Double_t &y1) const;
     // displace the staves on the carbon fiber sector
@@ -96,6 +101,7 @@ class AliITSv11GeometrySPD : public AliITSv11Geometry
     virtual TList* CreateConeModule(Bool_t sideC, const Double_t angle,
                                    TGeoManager *mgr = gGeoManager) const;
     virtual void CreateCones(TGeoVolume *moth) const;
+/*    virtual*/ void CreateServices(TGeoVolume *moth) const;
     // a half-stave (put together ladders + MCM + bus, and add clips
     // if requested)
     virtual TGeoVolumeAssembly* CreateHalfStave(Bool_t isRight, Int_t layer,
@@ -146,6 +152,9 @@ class AliITSv11GeometrySPD : public AliITSv11Geometry
     Bool_t CFHolePoints(Double_t s,Double_t r1,Double_t r2,Double_t l,
                         Double_t &x,Double_t &y)const;
 
+    // create the cooling tubes going from the manifolds to the staves
+    void CreateCoolingTubes(TGeoVolume *moth, Bool_t sideC) const;
+
     /* Data members */
 
     static const Double_t fgkGapLadder;// thicknes of the empty (air) gap left