CGEM BOSS 6.6.5.h
BESIII Offline Software System
Loading...
Searching...
No Matches
CgemSim-01-00-41/CgemSim/BesCgemConstruction.hh
Go to the documentation of this file.
1//-------------------------------------------------------------------------------------//
2// BOOST --- BESIII Object_Oriented Simulation Tool //
3//-------------------------------------------------------------------------------------//
4/*
5 * =====================================================================================
6 *
7 * Filename: BesCgemConstruciton.hh
8 * Description:
9 * Conventions:
10 * m_* : normal member of class
11 * sm_* : static member of class
12 * m_M_* : class data member, material of each layer
13 * m_N_* : class data member, number of layers (CgemLayer,GemFoil)
14 * m_R_* : class data member, radius of each (material) layer, and so on
15 * m_L_* : class data member, length of each layer or hole pitch
16 * m_T_* : class data member, thickness of each (material) layer
17 * m_A_* : class data member, angle of anode VStrip
18 * Version: CgemSim-01-00-00
19 * Created: 12/16/2013 08:59:21 AM
20 * Revision: CgemSim-00-00-01(in CMT version CgemBoss-0.0.1 written by xiuql)
21 * Compiler: gcc
22 * Author: [email protected]
23 * Organization: DG1,EPC,IHEP
24 * History:
25 * <Num> <Author> <Time> <Version> <Remark>
26 * 0 juxd 20131216 00-01-00 created,
27 *
28 * =====================================================================================
29 */
30
31//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
32#ifndef BesCgemConstruction_h
33#define BesCgemConstruction_h 1
34
35/* Header file: BOSS */
36#include "BesSubdetector.hh"
37#include "BesCgemSD.hh"
39
40
41/* Header file: Geant4 */
42#include "globals.hh"
43#include "G4Material.hh"
44#include "G4VisAttributes.hh"
45
46class G4LogicalVolume;
47class G4VPhysicalVolume;
48
49//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
51{
52 public:
55
56 void Construct(G4LogicalVolume*);
57
58 private:
59 G4LogicalVolume* ConstructFromCode(G4LogicalVolume*,BesCgemSD*);
60 void ConstructPassiveElements(G4LogicalVolume*);
61 void ConstructMaterial();
62 void Print(G4LogicalVolume *f_LV);
63
64 CgemGeomSvc* m_cgem_geomsvc;
65
66 BesCgemSD *m_CgemSD;
67 BesCgemSD *m_CuSD;
68
69 // G4LogicalVolume* lv_Cgem_logic;
70
71 /* Material of Cgem */
72 G4Material *m_M_Cu;
73 //G4Material *m_M_dummy;
74 G4Material *m_M_cable;
75 G4Material *m_M_Permaglas;
76 G4Material *m_M_Aluminum;
77 G4Material *m_M_Au;
78 G4Material *m_M_Air;
79 G4Material *m_M_CgemGas;
80 G4Material *m_M_Honeycomb;
81 G4Material *m_M_Rohacell;
82 G4Material *m_M_Peek;
83 G4Material *m_M_Kapton;
84 G4Material *m_M_Epoxy;
85 G4Material *m_M_CarbonFiber;
86 /* for effective density */
87
88 G4Material *m_M_Cu_GEMFoils;
89 G4Material *m_M_Cu_AnodeStripX;
90 G4Material *m_M_Cu_AnodeStripV;
91 G4Material *m_M_Kapton_GEMFoils;
92 G4Material *m_M_Kapton_StripV;
93
94
95 /*Option to activate checking volume overlaps*/
96 G4bool m_CheckOverlaps;
97 G4bool m_CreateHole;
98 static const int NMATERIALS_CATHODE =13;
99 static const int NMATERIALS_ANODE = 18;
100 static const int NMATERIALS_FOIL = 3;
101};
102
103//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
104#endif
void Construct(G4LogicalVolume *)