X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=MUON%2FAliMUONSt1GeometryBuilderV2.h;h=72c161f4369b1d533db6c750bbf70df82d7d5f46;hp=5586aece6f4a67093d998123805c60782946b480;hb=a5f5f349272b37c6a65a4a3d4daa1fe22de8e39a;hpb=71a2d3aa63e94daa0244d8d6d1c7c162ae29a374 diff --git a/MUON/AliMUONSt1GeometryBuilderV2.h b/MUON/AliMUONSt1GeometryBuilderV2.h index 5586aece6f4..72c161f4369 100644 --- a/MUON/AliMUONSt1GeometryBuilderV2.h +++ b/MUON/AliMUONSt1GeometryBuilderV2.h @@ -16,23 +16,7 @@ #include "AliMUONVGeometryBuilder.h" -#include "AliMpContainers.h" - -#ifdef WITH_ROOT - #include "TExMap.h" -#endif - -#ifdef WITH_STL - #include -#endif - -#ifdef WITH_ROOT - typedef TExMap SpecialMap; -#endif - -#ifdef WITH_STL - typedef map SpecialMap; -#endif +#include // typedef Float_t GReal_t; // for AliGeant3 typedef Double_t GReal_t; // for VirtualMC @@ -53,6 +37,7 @@ class AliMUONSt1GeometryBuilderV2 : public AliMUONVGeometryBuilder virtual void CreateMaterials(); virtual void CreateGeometry(); + virtual void SetVolumes(); virtual void SetTransformations(); virtual void SetSensitiveVolumes(); @@ -118,6 +103,7 @@ class AliMUONSt1GeometryBuilderV2 : public AliMUONVGeometryBuilder static const char* fgkQuadrantMLayerName;///< prefix for automatic volume naming static const char* fgkQuadrantNLayerName;///< prefix for automatic volume naming static const char* fgkQuadrantFLayerName;///< prefix for automatic volume naming + static const char* fgkQuadrantMFLayerName; ///< prefix for automatic volume naming static const char* fgkDaughterName; ///< prefix for automatic volume naming static const Int_t fgkFoamBoxNameOffset; ///< coefficient for automatic volume naming static const Int_t fgkFR4BoxNameOffset; ///< coefficient for automatic volume naming @@ -129,20 +115,26 @@ class AliMUONSt1GeometryBuilderV2 : public AliMUONVGeometryBuilder void CreateHole(); void CreateDaughterBoard(); void CreateInnerLayers(); + void CreateSpacer0(); + void CreateSpacer(); void CreateQuadrant(Int_t chamber); void CreateFoamBox(Int_t segNumber, const TVector2& dimensions); void CreatePlaneSegment(Int_t segNumber, const TVector2& dimensions, Int_t nofHoles); + void CreateQuadrantLayersAsVolumes(Int_t chamber); + void CreateQuadrantLayersAsAssemblies(Int_t chamber); void CreateFrame(Int_t chamber); void PlaceInnerLayers(Int_t chamber); - void PlaceSector(AliMpSector* sector, SpecialMap specialMap, + void PlaceSpacer0(Int_t chamber); + void PlaceSector(const AliMpSector* sector, TExMap specialMap, const TVector3& where, Bool_t reflectZ, Int_t chamber); TString QuadrantEnvelopeName(Int_t chamber, Int_t quadrant) const; TString QuadrantMLayerName(Int_t chamber) const; TString QuadrantNLayerName(Int_t chamber) const; TString QuadrantFLayerName(Int_t chamber) const; + TString QuadrantMFLayerName(Int_t chamber) const; TString PlaneSegmentName(Int_t segNumber) const; TString FoamBoxName(Int_t segNumber) const; TString FR4BoxName(Int_t segNumber) const; @@ -181,6 +173,10 @@ inline GReal_t AliMUONSt1GeometryBuilderV2::TotalHz() const inline TString AliMUONSt1GeometryBuilderV2::QuadrantMLayerName(Int_t chamber) const { return Form("%s%d",fgkQuadrantMLayerName,chamber); } +/// Return middle quadrant frame layer name for chamber \a chamber +inline TString AliMUONSt1GeometryBuilderV2::QuadrantMFLayerName(Int_t chamber) const +{ return Form("%s%d",fgkQuadrantMFLayerName,chamber); } + /// Return nearer quadrant layer name for chamber \a chamber inline TString AliMUONSt1GeometryBuilderV2::QuadrantNLayerName(Int_t chamber) const { return Form("%s%d",fgkQuadrantNLayerName,chamber); }