FairRoot/PandaRoot
PndGeoHypGeCrystalWithoutCapsule.h
Go to the documentation of this file.
1 // ******** Header of class to build HypGe encapsulated HPGe Crystal needed to build cluster detectors *************
2 // by steinen@kph.uni-mainz.de
3 
4 #ifndef PNDGEOHYPGECRYSTALWITHOUTCAPSULE_H
5 #define PNDGEOHYPGECRYSTALWITHOUTCAPSULE_H
6 
7 #include "TGeoMedium.h"
8 #include "TGeoTube.h"
9 #include "TGeoPgon.h"
10 #include "TGeoTorus.h"
11 #include "TGeoVolume.h"
12 //#include "TGeoVolumeAssembly.h" // does not exist, class in inside TGeoVolume.h
13 #include "TGeoMatrix.h" // all the translations, rotations ..
14 #include "TGeoCompositeShape.h"
15 #include "TMath.h"
16 #include <stdio.h>
17 #include "PndGeoHypGeCrystal.h"
18 
20 {
21 protected:
23  //Media
24  //TGeoMedium *Ge;
25  //TGeoMedium *Al;
26 
27 
29  //Double_t CapsuleThickness;
30  //Double_t InnerScale;
31  //Double_t OuterPgonInnerRadius;
32  //Double_t CapsuleLength;
33  //char *CapsuleName;
34 
35  //TGeoTube *CapsuleOuterTube;
36  //TGeoTube *CapsuleInnerTube;
37  //TGeoPgon *CapsuleOuterPgon;
38  //TGeoPgon *CapsuleInnerPgon;
39  //TGeoTube *CapsuleTopCover;
40  //TGeoTranslation *CapsuleTopZTranslation;
41  //TGeoTranslation *CapsuleInnerZTranslation;
42  //TGeoCompositeShape *CapsuleOuterShape;
43  //TGeoCompositeShape *CapsuleInnerShape;
44  //TGeoCompositeShape *CapsuleCompleteShape; //OuterShape - InnerShape
45  //TGeoVolume *Capsule;
46 
48 
49  //Double_t VacuumThickness;
50  //Double_t CrystalLength;
51  //Double_t CrystalFrontPgonInnerRadius;
52  //Double_t CrystalInnerPgonRadius;
53  //char *CrystalName;
54 
56  //TGeoTube *CrystalTube;
57  //TGeoPgon *CrystalPgon;
59  //TGeoTube *CrystalInnerTube;
60  //TGeoTranslation *CrystalInnerTubeZTranslation;
61  //TGeoTorus *CrystalInnerTubeTorus;
62  //TGeoTranslation *CrystalInnerTubeTorusZTranslation;
63  //TGeoTube *CrystalInnerTubeMiniExtraTube;
64  //TGeoTranslation *CrystalInnerTubeMiniExtraTubeZTranslation;
66  //TGeoTube *CrystalTopRoundingTube;
67  //TGeoTranslation *CrystalTopRoundingTubeZTranslation;
68  //TGeoTorus *CrystalTopRoundingTorus;
69  //TGeoCompositeShape *CrystalTopRoundingTooling;
70  //TGeoTranslation *CrystalTopRoundingToolingZTranslation;
72  //TGeoTube *CrystalGuardRingTube;
73  //TGeoTranslation *CrystalGuardRingTubeZTranslation;
74  //TGeoTorus *CrystalGuardRingTorus;
75  //TGeoTorus *CrystalGuardRingTorusInner;
76  //TGeoTranslation *CrystalGuardRingTorusZTranslation;
77  //TGeoTube *CrystalGuardRingMiniExtraTube;
78  //TGeoTranslation *CrystalGuardRingMiniExtraTubeZTranslation;
80  //TGeoCompositeShape *CrystalShape;
81  //TGeoVolume *Crystal;
82 
84  //TGeoVolumeAssembly *CrystalPlusCapsule;
85  //TGeoCombiTrans *CapsuleCombiTrans;
86  //TGeoCombiTrans *CrystalInsideCapsuleCombiTrans;
87  //Int_t CrystalNumber;
88 
89 
90 
91 
92 
93 
94 
95 public:
97  PndGeoHypGeCrystalWithoutCapsule(TGeoMedium *ExtGe, TGeoMedium *ExtAl,Int_t ExtCrystalNumber);
99 
100  Int_t GetCrystalNumber();
101  Int_t GetNdaughters();
102  void PrintNodes();
103 
104  void PlaceCrystal(TGeoVolume *top, TGeoMatrix* CrystalPlaceAndDirectionTranslation); // places the encapsulated crystal
105 
106 
107  ClassDef(PndGeoHypGeCrystalWithoutCapsule,0); // Class for PndGeoHypGeCrystal
108 };
109 
110 #endif /* !PNDGEOHYPGECRYSTAL_H */
void PlaceCrystal(TGeoVolume *top, TGeoMatrix *CrystalPlaceAndDirectionTranslation)
ClassDef(PndGeoHypGeCrystalWithoutCapsule, 0)
TGeoVolume * top
Double_t