BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Simulation/BOOST/EmcSim/include/EmcSim/BesEmcEndGeometry.hh
Go to the documentation of this file.
1#ifndef BesEmcEndGeometry_h
2#define BesEmcEndGeometry_h 1
3
4#include "G4ThreeVector.hh"
5#include "globals.hh"
8class EmcGdmlWriter;
9
11public:
14 friend class BesEmcConstruction;
15 friend class BesEmcDigitizer;
16 friend class EmcGdmlWriter;
17
18public:
21 void Exchange( G4int cry1, G4int cry2 );
22 void ExchangeSector7( G4int cry1, G4int cry2 );
23 void ReflectX();
24 void Zoom( const G4ThreeVector pos[8], const G4double factor );
25 void ModifyForCasing( G4ThreeVector pos[8], G4int CryNb );
26 G4ThreeVector ComputeDimAndPos( const G4int, const G4int, const G4int );
27
28public:
29 inline G4int GetCryNumInOneLayer( G4int num ) { return cryNumInOneLayer[num]; }
30
31private:
32 G4double WorldRmin1;
33 G4double WorldRmax1;
34 G4double WorldRmin2;
35 G4double WorldRmax2;
36 G4double WorldDz;
37 G4double WorldZPosition;
38
39 G4double SectorRmin1;
40 G4double SectorRmax1;
41 G4double SectorRmin2;
42 G4double SectorRmax2;
43 G4double SectorDz;
44 G4double SectorZPosition;
45
46 G4double fTyvekThickness;
47 G4double fAlThickness;
48 G4double fMylarThickness;
49 G4double totalThickness;
50 G4double CrystalLength;
51
52private:
53 G4double param[35][24];
54 G4double penta[5][6];
55 G4int cryNumInOneLayer[6];
56 G4int pentaInOneSector[5];
57 G4ThreeVector fPnt[35][8]; // 8 point of one crystal
58 G4ThreeVector fPnt1[35][8];
59 G4ThreeVector cryPoint[8];
60 G4ThreeVector zoomPoint[8];
61};
62
63#endif
void Exchange(G4int cry1, G4int cry2)
void ExchangeSector7(G4int cry1, G4int cry2)
void ModifyForCasing(G4ThreeVector pos[8], G4int CryNb)
void Zoom(const G4ThreeVector pos[8], const G4double factor)
G4ThreeVector ComputeDimAndPos(const G4int, const G4int, const G4int)
void ComputeParameters()