BOSS 7.0.2
BESIII Offline Software System
Loading...
Searching...
No Matches
Muc/MucGeoCreateAlg/MucGeoCreateAlg-00-01-00/MucGeoCreateAlg/MucGeoMgr.h
Go to the documentation of this file.
1//------------------------------------------------------------------------------|
2// [File ]: MucGeoMgr.h |
3// [Brief ]: Header file of MUC geometry manager class |
4// [Author]: Xie Yuguang, <[email protected]> |
5// [Date ]: Mar 28, 2006 |
6//------------------------------------------------------------------------------|
7
8#ifndef MUC_GEO_MGR_ALG_H
9#define MUC_GEO_MGR_ALG_H
10
11#include<iostream>
12#include<string>
13
14#include "GaudiKernel/MsgStream.h"
15#include "GaudiKernel/StatusCode.h"
16#include "GaudiKernel/IMessageSvc.h"
17
18#include "MucGeoCreateAlg/MucGeoConst.h"
19#include "MucGeoCreateAlg/MucEntity.h"
20#include "MucGeoCreateAlg/MucAbsorber.h"
21#include "MucGeoCreateAlg/MucGap.h"
22#include "MucGeoCreateAlg/MucBox.h"
23#include "MucGeoCreateAlg/MucStripPlane.h"
24#include "MucGeoCreateAlg/MucStrip.h"
25#include "MucGeoCreateAlg/MucRpc.h"
26#include "MucGeoCreateAlg/MucBoxCover.h"
27#include "MucGeoCreateAlg/MucBakelite.h"
28#include "MucGeoCreateAlg/MucGas.h"
29#include "MucGeoCreateAlg/MucIdTransform.h"
30
31/*
32#include "TH1F.h"
33#include "TGeometry.h"
34#include "TGeoManager.h"
35#include "TGeoVolume.h"
36#include "TGeoMaterial.h"
37#include "TGeoMedium.h"
38#include "TGeoBBox.h"
39#include "TCanvas.h"
40*/
41
42using namespace std;
43
44const unsigned int ENTITY_NUM = 9;
45
46class MucGeoMgr
47{
48 public:
49 MucGeoMgr( const std::string createFlag, bool alignFlag, const std::string alignFile );
51
52 StatusCode CreateEntities();
53 StatusCode CreateRootGeo();
55
56 MucAbsorber *GetAbsorber( int part, int segment, int layer, int id );
57 MucGap *GetGap( int part, int segment, int layer, int id );
58 MucBox *GetBox( int part, int segment, int layer, int id );
59 MucStripPlane *GetStripPlane( int part, int segment, int layer, int id );
60 MucStrip *GetStrip( int part, int segment, int layer, int id );
61 MucRpc *GetRpc( int part, int segment, int layer, int upDown, int id );
62 MucGas *GetGas( int part, int segment, int layer, int upDown, int rpcId, int id );
63 MucBakelite *GetBakelite( int part, int segment, int layer, int upDown, int rpcId, int id );
64 MucBoxCover *GetBoxCover( int part, int segment, int layer, int upDown, int id );
65
66 IMessageSvc *msgSvc;
67
68 protected:
69
70 StatusCode CreateAbsorber();
71 StatusCode CreateGap();
72 StatusCode CreateBox();
73 StatusCode CreateStripPlane();
74 StatusCode CreateStrip();
75 StatusCode CreateRpc();
76 StatusCode CreateGas();
77 StatusCode CreateBakelite();
78 StatusCode CreateBoxCover();
79
80 StatusCode InitOffset();
81 bool CheckBoxOffset( int part, int segment, int layer, int axis, double offset);
82 bool CheckStripPlaneOffset( int part, int segment, int layer, int axis, double offset);
83
84 private:
85
86 bool m_AlignFlag;
87 std::string m_CreateFlag;
88 std::string m_AlignFile;
89 double m_BoxOffset[PART_MAX][B_SEG_NUM][B_LAY_NUM][3];
90 double m_StripPlaneOffset[PART_MAX][B_SEG_NUM][B_LAY_NUM][3];
91
92 MucIdTransform* m_IdTr;
93
94 MucAbsorber *m_MucAbsorber;
95 MucGap *m_MucGap;
96 MucBox *m_MucBox;
97 MucStripPlane *m_MucStripPlane;
98 MucStrip *m_MucStrip;
99 MucRpc *m_MucRpc;
100 MucBoxCover *m_MucBoxCover;
101 MucBakelite *m_MucBakelite;
102 MucGas *m_MucGas;
103
104 //TGeoManager *geoMgr;
105
106};
107
108#endif
bool CheckStripPlaneOffset(int part, int segment, int layer, int axis, double offset)
MucGap * GetGap(int part, int segment, int layer, int id)
StatusCode CreateRpc()
MucAbsorber * GetAbsorber(int part, int segment, int layer, int id)
StatusCode CreateGas()
MucStripPlane * GetStripPlane(int part, int segment, int layer, int id)
MucGeoMgr(const std::string createFlag, bool alignFlag, const std::string alignFile)
MucGas * GetGas(int part, int segment, int layer, int upDown, int rpcId, int id)
StatusCode InitOffset()
StatusCode CreateGap()
StatusCode CreateAbsorber()
StatusCode CreateOnlineStripGeo()
StatusCode CreateBoxCover()
MucBoxCover * GetBoxCover(int part, int segment, int layer, int upDown, int id)
MucBakelite * GetBakelite(int part, int segment, int layer, int upDown, int rpcId, int id)
StatusCode CreateBakelite()
StatusCode CreateStripPlane()
MucStrip * GetStrip(int part, int segment, int layer, int id)
StatusCode CreateStrip()
MucBox * GetBox(int part, int segment, int layer, int id)
bool CheckBoxOffset(int part, int segment, int layer, int axis, double offset)
StatusCode CreateBox()
StatusCode CreateEntities()
StatusCode CreateRootGeo()
MucRpc * GetRpc(int part, int segment, int layer, int upDown, int id)