1 #ifndef ALIPIPEUPGRADE_H
2 #define ALIPIPEUPGRADE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 /* $Id: AliPIPEupgrade.h 55648 2012-04-10 10:59:00Z cvetan $*/
8 /////////////////////////////////////////////////////////
9 // ALICE beam pipe geometry //
10 // This version uses TGeo. //
13 // e-mail: andreas.morsch@cern.ch //
14 /////////////////////////////////////////////////////////
21 class AliPIPEupgrade : public AliPIPE {
24 enum constants {kC=6, kAlu=9, kInox=19, kGetter=20, kBe=5, kVac=16,
25 kAir=15, kAlBe=21, kPA = 22};
27 AliPIPEupgrade(Float_t ro=-1, Float_t thick=-1);
28 AliPIPEupgrade(const char *name, const char *title,
29 Float_t ro=-1, Float_t thick=-1);
30 AliPIPEupgrade(Option_t *opt);
31 // virtual ~AliPIPEupgrade() {}
32 virtual void CreateGeometry();
33 virtual void CreateMaterials();
34 virtual Int_t IsVersion() const {return 0;}
35 virtual void SetBeamBackgroundSimulation() {fBeamBackground = kTRUE;}
36 virtual void AddAlignableVolumes() const;
38 Float_t GetRmin() {return fBePipeRmax-fBePipeThick; }
39 Float_t GetRmax() {return fBePipeRmax; }
40 Float_t GetWidth(){return fBePipeThick; }
41 Float_t GetDz() {return fIpHLength; }
44 virtual TGeoPcon* MakeMotherFromTemplate(const TGeoPcon* shape, Int_t imin = -1, Int_t imax = -1, Float_t r0 = 0., Int_t nz =-1);
45 virtual TGeoPcon* MakeInsulationFromTemplate(TGeoPcon* shape);
46 virtual TGeoVolume* MakeBellow(const char* ext, Int_t nc, Float_t rMin, Float_t rMax, Float_t dU, Float_t rPlie, Float_t dPlie);
47 virtual TGeoVolume* MakeBellowCside(const char* ext, Int_t nc, Float_t rMin, Float_t rMax, Float_t rPlie, Float_t dPlie);
49 Bool_t fBeamBackground; // Flag for beam background simulations
50 Bool_t fConeIsBe; // Flag for Material of the "long cone", can be set to Be (std is Alu)
51 Float_t fBePipeRmax; // outer diameter of the Be section
52 Float_t fBePipeThick; // Be section thickness
53 Float_t fIpHLength; // half length of the beampipe around the IP // FixMe: up to now, hardcoded to 57.25cm
55 ClassDef(AliPIPEupgrade, 2) // Class for PIPE version using TGeo