 |
Belle II Software
release-05-01-25
|
13 #include <arich/dbobjects/ARICHGeoBase.h>
16 #include <TRotation.h>
30 class ARICHGeoMasterVolume:
public ARICHGeoBase {
61 void print(
const std::string& title =
"ARICH Master Volume geometry parameters")
const override;
72 void setPlacement(
double x,
double y,
double z,
double rx,
double ry,
double rz);
81 void setVolume(
double innerR,
double outerR,
double length,
const std::string& material) {
m_innerR = innerR;
m_outerR = outerR;
m_length = length; m_material = material;};
140 const std::string&
getMaterial()
const {
return m_material;}
142 TVector3 pointToGlobal(
const TVector3& point)
const;
143 TVector3 momentumToGlobal(
const TVector3& momentum)
const;
144 TVector3 pointToLocal(
const TVector3& point)
const;
145 TVector3 momentumToLocal(
const TVector3& momentum)
const;
163 std::string m_material;
165 mutable TRotation* m_rotation = 0 ;
166 mutable TRotation* m_rotationInverse = 0;
167 mutable TVector3* m_translation = 0;
const std::string & getMaterial() const
Get material of ARICH master volume.
bool isConsistent() const override
Check of geometry parameters consistency.
double getOuterRadius() const
Get ARICH master volume outer radius.
double getRotationX() const
Get angle of rotation around X axis.
double m_rz
rotation around z-axis
~ARICHGeoMasterVolume()
Destructor.
double m_length
tube length
double getRotationY() const
Get angle of rotation around Y axis.
TRotation getRotation() const
Get rotation matrix of ARICH master volume in global Belle II coordinates.
double getRotationZ() const
Get angle of rotation around Z axis.
TVector3 getPosition() const
Get position of ARICH master volume center point in global Belle II coordinates.
double getLength() const
Get ARICH master volume length.
static double s_unit
conversion unit for length
void setPlacement(double x, double y, double z, double rx, double ry, double rz)
Sets positioning of ARICH master volume in global Belle II coordinate system.
Abstract base class for different kinds of events.
void setVolume(double innerR, double outerR, double length, const std::string &material)
Sets parameters of ARICH master volume.
ClassDefOverride(ARICHGeoMasterVolume, 1)
ClassDef.
double getInnerRadius() const
Get ARICH master volume inner radius.
double m_rx
rotation around x-axis
ARICHGeoMasterVolume()
Default constructor.
Geometry parameters of ARICH Master volume (envelope)
double m_outerR
tube outer radius
void print(const std::string &title="ARICH Master Volume geometry parameters") const override
Print the content of the class.
double m_innerR
tube inner radius
double m_ry
rotation around y-axis