 |
Belle II Software
release-05-02-19
|
14 #ifndef CSIGEOMETRYPAR_H
15 #define CSIGEOMETRYPAR_H
18 #include <G4String.hh>
19 #include <G4Material.hh>
21 #include <CLHEP/Geometry/Transform3D.h>
22 #include <CLHEP/Vector/ThreeVector.h>
26 typedef int CsiIdentifier ;
28 typedef CLHEP::HepRotation RotationMatrix;
29 typedef CLHEP::Hep3Vector ThreeVector;
31 typedef HepGeom::Transform3D Transform3D;
34 typedef HepGeom::RotateY3D RotateY3D;
35 typedef HepGeom::RotateZ3D RotateZ3D;
37 typedef HepGeom::Translate3D Translate3D;
74 void Print(
const int cid,
int debuglevel = 80);
104 TVector3 pos(_hepTV.x(), _hepTV.y(), _hepTV.z());
TVector3 ConvertToTVector3(ThreeVector _hepTV)
Converts to a ROOT TVector3.
TVector3 GetPositionTV3(int cid)
Get the position of the crystal in a root TVector3.
void read()
Gets geometry parameters from gearbox.
double GetMaterialProperty(int cid, const char *propertyname)
Get material property.
int GetEnclosureID(int cid)
Get Enclosure ID from cell ID.
void PrintAll(int debuglevel=80)
Print all crystals information.
int m_cellID
The Cell ID information.
static CsiGeometryPar * Instance()
Static method to get a reference to the CsiGeometryPar instance.
The Class for CSI Geometry Parameters.
ThreeVector GetPosition(int cid)
Get the position of the crystal.
std::vector< int > m_phiID
The Phi ID information.
std::vector< TVector3 > m_OrientationTV3
Orientation of the crystal (as ROOT TVector3)
std::vector< int > m_BoxID
The index of the enclosure.
CsiGeometryPar()
Constructor.
std::vector< ThreeVector > m_Position
Position of the nominal centre of the crystal (as a HEP ThreeVector)
std::vector< ThreeVector > m_Orientation
Orientation of the crystal (as a HEP ThreeVector)
int GetSlotID(int cid)
Get Slot ID in the Enclosure from cell ID.
Abstract base class for different kinds of events.
double GetTauFast(int cid)
Get crystal fast time constant.
static CsiGeometryPar * m_B4CsiGeometryParDB
Pointer that saves the instance of this class.
double GetTauSlow(int cid)
Get crystal slow time constant.
std::vector< int > m_thetaID
The Theta ID information.
int CsiVolNameToCellID(const G4String VolumeName)
Get Cell Id.
TVector3 GetOrientationTV3(int cid)
Get the orientation of the crystal in a root TVector3.
G4Material * GetMaterial(int cid)
Get pointer to the Geant4 Material.
virtual ~CsiGeometryPar()
Destructor.
std::vector< TVector3 > m_PositionTV3
Position of the nominal centre of the crystal (as a ROOT TVector3)
std::vector< int > m_SlotID
The slot index of the crystal in the enclosure.
void Print(const int cid, int debuglevel=80)
Print crystal information.
ThreeVector GetOrientation(int cid)
Get the position of the crystal.