BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
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, <ygxie@mail.ihep.ac.cn> |
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/IMessageSvc.h"
15#include "GaudiKernel/MsgStream.h"
16#include "GaudiKernel/StatusCode.h"
17
30
31/*
32#include "TCanvas.h"
33#include "TGeoBBox.h"
34#include "TGeoManager.h"
35#include "TGeoMaterial.h"
36#include "TGeoMedium.h"
37#include "TGeoVolume.h"
38#include "TGeometry.h"
39#include "TH1F.h"
40*/
41
42using namespace std;
43
44const unsigned int ENTITY_NUM = 9;
45
46class MucGeoMgr {
47public:
48 MucGeoMgr( const std::string createFlag, bool alignFlag, const std::string alignFile );
49 ~MucGeoMgr();
50
51 StatusCode CreateEntities();
52 StatusCode CreateRootGeo();
53 StatusCode CreateOnlineStripGeo();
54
55 MucAbsorber* GetAbsorber( int part, int segment, int layer, int id );
56 MucGap* GetGap( int part, int segment, int layer, int id );
57 MucBox* GetBox( int part, int segment, int layer, int id );
58 MucStripPlane* GetStripPlane( int part, int segment, int layer, int id );
59 MucStrip* GetStrip( int part, int segment, int layer, int id );
60 MucRpc* GetRpc( int part, int segment, int layer, int upDown, int id );
61 MucGas* GetGas( int part, int segment, int layer, int upDown, int rpcId, int id );
62 MucBakelite* GetBakelite( int part, int segment, int layer, int upDown, int rpcId, int id );
63 MucBoxCover* GetBoxCover( int part, int segment, int layer, int upDown, int id );
64
65 IMessageSvc* msgSvc;
66
67protected:
68 StatusCode CreateAbsorber();
69 StatusCode CreateGap();
70 StatusCode CreateBox();
71 StatusCode CreateStripPlane();
72 StatusCode CreateStrip();
73 StatusCode CreateRpc();
74 StatusCode CreateGas();
75 StatusCode CreateBakelite();
76 StatusCode CreateBoxCover();
77
78 StatusCode InitOffset();
79 bool CheckBoxOffset( int part, int segment, int layer, int axis, double offset );
80 bool CheckStripPlaneOffset( int part, int segment, int layer, int axis, double offset );
81
82private:
83 bool m_AlignFlag;
84 double m_BoxOffset[PART_MAX][B_SEG_NUM][B_LAY_NUM][3];
85 double m_StripPlaneOffset[PART_MAX][B_SEG_NUM][B_LAY_NUM][3];
86 std::string m_CreateFlag;
87 std::string m_AlignFile;
88
89 MucIdTransform* m_IdTr;
90
91 MucAbsorber* m_MucAbsorber;
92 MucGap* m_MucGap;
93 MucBox* m_MucBox;
94 MucStripPlane* m_MucStripPlane;
95 MucStrip* m_MucStrip;
96 MucRpc* m_MucRpc;
97 MucBoxCover* m_MucBoxCover;
98 MucBakelite* m_MucBakelite;
99 MucGas* m_MucGas;
100
101 // TGeoManager *geoMgr;
102};
103
104#endif
const unsigned int ENTITY_NUM
Definition MucGeoMgr.h:44
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)
Definition MucGeoMgr.cxx:26
MucGas * GetGas(int part, int segment, int layer, int upDown, int rpcId, int id)
StatusCode InitOffset()
Definition MucGeoMgr.cxx:56
IMessageSvc * msgSvc
Definition MucGeoMgr.h:65
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)