]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/AliEMCALSpaceFrame.h
adding separate primary vertex and V0 finder components (Timur)
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALSpaceFrame.h
1 #ifndef ALIEMCALSPACEFRAME_H
2 #define ALIEMCALSPACEFRAME_H
3 /* Copyright(c) 2008, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 /////////////////////////////////////////////////
8 //          class for EMCAL Space Frame        //
9 //              Author: Ryan M. Ward           //                                                   
10 //     California Polytechnic State Univeristy //                                                   
11 //               rmward@calpoly.edu            // 
12 /////////////////////////////////////////////////
13
14 #include <TNamed.h> 
15
16 class AliEMCALSpaceFrame : public TNamed
17 {
18   
19 public:
20
21   AliEMCALSpaceFrame();
22   virtual      ~AliEMCALSpaceFrame() {}
23
24   AliEMCALSpaceFrame(const AliEMCALSpaceFrame& calFrame);
25   AliEMCALSpaceFrame & operator = (const AliEMCALSpaceFrame & /*rvalue*/) {
26     Fatal("operator =", "not implemented");
27     return *this;
28   }
29   
30   //This method assembles the Geometries and places them into the
31   //Alice master volume
32   void CreateGeometry();
33
34 protected:
35   
36 private:
37
38   //space frame parameters from "SINGLE FRAME ASSEMBLY 27D624H.pdf"
39   //provided by Lawrence Berkeley Labs, USA
40   Int_t fNumCross;                  // Total number of cross beams including end pieces
41   Int_t fNumSubSets;                // Total Number of Cross Beam sections in each Half Section
42   Double_t fTotalHalfWidth;         // Half the width of each Half Section 
43   Double_t fBeginPhi;               // Begining Phi of Cal Frame
44   Double_t fEndPhi;                 // Ending Phi of Cal Frame
45   Double_t fTotalPhi;               // Total Phi range of Cal Frame
46   Double_t fBeginRadius;            // Begining Radius of Cal Frame
47   Double_t fHalfFrameTrans;         // z-direction translation for each half frame
48   //flange and rib dimensions
49   Double_t fFlangeHeight;           // Ending Radius of Flange (Flange is a TGeoTubeSeg)
50   Double_t fFlangeWidth;            // Thickness of Flange in z-direction
51   Double_t fRibHeight;              // Ending Radius of Rib
52   Double_t fRibWidth;               // Thickness of Rib in z-direction 
53   //cross beam sections - Cross beams come in two sections- top and bottom
54   Double_t fCrossBottomWidth;       // Width along z direction
55   Double_t fCrossTopWidth;          // Width along z direction
56   Double_t fCrossBottomHeight;      // Tangental thickness relative to CalFrame arc
57   Double_t fCrossBottomRadThick;    // Radial thickness relative to center of geometry
58   Double_t fCrossBeamArcLength;     // For calulating placement of
59   Double_t fCrossBottomStartRadius; // Radial position relative to center of geometry
60   Double_t fCrossTopHeight;         // Tangental thickness relative to the center of geometry
61   Double_t fCrossTopRadThick;       // Radial thickness relative to CalFrame arc
62   Double_t fCrossTopStart;          // Radial position relative to center of geometry
63   Double_t fEndRadius;              // Ending Radius of Mother Volume
64   Double_t fEndBeamRadThick;        // Radial Thickness of the End Beams
65   Double_t fEndBeamBeginRadius;     // Starting Radius for End Beams
66
67   ClassDef(AliEMCALSpaceFrame,1)  //Class for EMCAL Space Frame
68 };
69
70 #endif  //ALIEMCALSPACEFRAME_H