 |
Belle II Software
release-05-02-19
|
13 #include <top/dbobjects/TOPGeoBase.h>
14 #include <geometry/dbobjects/GeoOpticalSurface.h>
29 class TOPGeoBarSegment:
public TOPGeoBase {
47 const std::string& material,
48 const std::string& name =
"TOPBarSegment"):
TOPGeoBase(name),
57 virtual void setGlue(
double thickness,
const std::string& material)
70 const std::string& material)
82 void setSurface(
const GeoOpticalSurface& surface,
double sigmaAlpha)
93 void setVendorData(
const std::string& vendor,
const std::string& serialNumber)
209 virtual void print(
const std::string& title =
"Bar segment geometry parameters")
const override;
222 std::vector<std::pair<double, double> >& contour)
const;
const std::string & getMaterial() const
Returns bar segment material name.
void setVendorData(const std::string &vendor, const std::string &serialNumber)
Sets vendor's name and serial number.
TOPGeoBarSegment()
Default constructor.
float m_thickness
bar segment thickness
const std::string & getGlueMaterial() const
Returns glue material name (glue on -z side)
ClassDefOverride(TOPGeoBarSegment, 3)
ClassDef.
double getLength() const
Returns bar segment length.
std::string m_material
bar segment material name
std::string m_glueMaterial
glue material name
Geometry parameters of a quartz bar segment.
GeoOpticalSurface m_surface
optical surface
float m_glueThickness
glue thickness
Base class for geometry parameters.
float m_length
bar segment length
const std::string & getBrokenGlueMaterial() const
Returns material name which represents broken glue.
double getFullLength() const
Returns bar segment length including glue.
std::string m_brokenGlueMaterial
broken glue material name
std::string m_vendor
vendor's name
virtual void setGlueDelamination(double fraction, double angle, const std::string &material)
Sets glue to be broken (delaminated)
const std::string & getSerialNumber() const
Returns serial number.
double getBrokenGlueFraction() const
Returns fraction of the delaminated surface.
float m_brokenAngle
angle of broken (delaminated) glue
Represent an optical finish of a surface.
virtual void print(const std::string &title="Bar segment geometry parameters") const override
Print the content of the class.
Abstract base class for different kinds of events.
const GeoOpticalSurface & getSurface() const
Returns optical surface.
float m_sigmaAlpha
geant4 parameter for surface roughness
static double s_unit
conversion unit for length
virtual double getGlueThickness() const
Returns glue thickness (glue on -z side)
double getWidth() const
Returns bar segment width.
virtual void setGlue(double thickness, const std::string &material)
Sets glue parameters (for glue on -z side)
virtual bool isConsistent() const override
Check for consistency of data members.
double getReflectivity(const GeoOpticalSurface &surface, double energy) const
Returns reflectivity of optical surface at given photon energy.
float m_brokenFraction
fraction of broken (delaminated) glue
float m_width
bar segment width
std::string m_serialNumber
serial number
void setSurface(const GeoOpticalSurface &surface, double sigmaAlpha)
Sets optical surface.
std::vector< std::pair< double, double > > getBrokenGlueContour() const
Returns the x-y contour of broken glue.
double getBrokenGlueAngle() const
Returns angle of the delaminated surface.
const std::string & getVendor() const
Returns vendor's name.
void constructContour(double A, double B, double fraction, double angle, std::vector< std::pair< double, double > > &contour) const
Construct a 2D contour.
double getSurfaceReflectivity(double energy) const
Returns surface reflectivity at given photon energy.
double getSigmaAlpha() const
Returns geant4 parameter describing surface roughness.
double getThickness() const
Returns bar segment thickness.