]>
Commit | Line | Data |
---|---|---|
4347b38f | 1 | #ifndef ALIFMDSUBDETECTOR_H |
2 | #define ALIFMDSUBDETECTOR_H | |
0d0e6995 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights |
4 | * reserved. | |
5 | * | |
6 | * Latest changes by Christian Holm Christensen <cholm@nbi.dk> | |
7 | * | |
8 | * See cxx source for full Copyright notice | |
9 | */ | |
42403906 | 10 | //____________________________________________________________________ |
11 | // | |
12 | // Parameters of a sub-detector, and builder of sub detector geometry | |
13 | // | |
4347b38f | 14 | #ifndef ROOT_TObject |
15 | # include <TObject.h> | |
16 | #endif | |
4347b38f | 17 | class TNode; |
18 | class TList; | |
0d0e6995 | 19 | class AliFMDRing; |
4347b38f | 20 | |
21 | ||
22 | //__________________________________________________________________ | |
42403906 | 23 | class AliFMDSubDetector : public TObject |
4347b38f | 24 | { |
4347b38f | 25 | public: |
26 | AliFMDSubDetector(Int_t n); | |
27 | virtual ~AliFMDSubDetector() {} | |
28 | virtual void SetupGeometry(Int_t airId, Int_t kaptionId); | |
29 | virtual void Geometry(const char* mother, Int_t pbRotId, | |
30 | Int_t idRotId, Double_t z=0); | |
31 | virtual void SimpleGeometry(TList* nodes, | |
32 | TNode* mother, | |
33 | Int_t colour, | |
34 | Double_t zMother); | |
35 | ||
36 | virtual void Gsatt(); | |
37 | virtual void Draw(Option_t* option="BIOL0") const; //*MENU* | |
38 | virtual Bool_t CheckHit(Char_t ring, Int_t module, Double_t x, Double_t y); | |
39 | ||
40 | void SetInner(AliFMDRing* r) { fInner = r; } | |
41 | void SetOuter(AliFMDRing* r) { fOuter = r; } | |
42 | void SetInnerZ(Double_t z) { fInnerZ = z; } | |
43 | void SetOuterZ(Double_t z) { fOuterZ = z; } | |
44 | void SetHoneycombThickness(Double_t t=1) { fHoneycombThickness = t; } | |
0d0e6995 | 45 | void SetInnerHoneyLowR(Double_t r) { fInnerHoneyLowR = r; } |
46 | void SetInnerHoneyHighR(Double_t r) { fInnerHoneyHighR = r; } | |
47 | void SetOuterHoneyLowR(Double_t r) { fOuterHoneyLowR = r; } | |
48 | void SetOuterHoneyHighR(Double_t r) { fOuterHoneyHighR = r; } | |
49 | void SetKaptionThickness(Double_t t=.1) { fKaptionThickness = t; } | |
4347b38f | 50 | |
51 | Double_t GetInnerZ() const { return fInnerZ; } | |
52 | Double_t GetOuterZ() const { return fOuterZ; } | |
53 | AliFMDRing* GetInner() const { return fInner; } | |
54 | AliFMDRing* GetOuter() const { return fOuter; } | |
55 | Double_t GetHoneycombThickness() const { return fHoneycombThickness; } | |
0d0e6995 | 56 | Double_t GetInnerHoneyLowR() const { return fInnerHoneyLowR; } |
57 | Double_t GetInnerHoneyHighR() const { return fInnerHoneyHighR; } | |
58 | Double_t GetOuterHoneyLowR() const { return fOuterHoneyLowR; } | |
59 | Double_t GetOuterHoneyHighR() const { return fOuterHoneyHighR; } | |
4347b38f | 60 | Double_t GetKaptionThickness() const { return fKaptionThickness; } |
61 | Int_t GetId() const { return fId; } | |
62 | Bool_t IsFolder() const { return kTRUE; } | |
63 | ||
42403906 | 64 | protected: |
65 | Int_t fId; // Detector number | |
66 | Double_t fInnerZ; // Position of outer ring along z | |
67 | Double_t fOuterZ; // Position of outer ring along z | |
68 | Double_t fHoneycombThickness; // Thickness of honeycomb plate | |
69 | Double_t fKaptionThickness; // Thickness of kaption of honeycomb | |
70 | Double_t fInnerHoneyLowR; // Inner radius of inner honeycomb | |
71 | Double_t fInnerHoneyHighR; // Outer radius of inner honeycomb | |
72 | Int_t fInnerHoneyTopId; // Volume ID of top of inner honeycomb | |
73 | Int_t fInnerHoneyBottomId; // Volume ID of bottom of inner honeycomb | |
74 | Double_t fOuterHoneyLowR; // Inner radius of outer honeycomb | |
75 | Double_t fOuterHoneyHighR; // Outer radius of outer honeycomb | |
76 | Int_t fOuterHoneyTopId; // Volume ID of top of outer honeycomb | |
77 | Int_t fOuterHoneyBottomId; // Volume ID of bottom of outer honeycomb | |
78 | ||
79 | Int_t fRotationId; // The ID of the sub-detector rotation | |
80 | ||
81 | AliFMDRing* fInner; // Reference to inner ring description | |
82 | AliFMDRing* fOuter; // Reference to outer ring description | |
83 | ||
0d0e6995 | 84 | ClassDef(AliFMDSubDetector, 1) // FMD Sub detector base class |
4347b38f | 85 | }; |
86 | ||
87 | #endif | |
0d0e6995 | 88 | //____________________________________________________________________ |
89 | // | |
90 | // Local Variables: | |
91 | // mode: C++ | |
92 | // End: | |
93 | // | |
94 | // EOF | |
95 | // |