Belle II Software development
VXDPolyConePar.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10
11#include <TObject.h>
12#include <string>
13
14
15namespace Belle2 {
25 class VXDPolyConePlanePar: public TObject {
26 public:
28 VXDPolyConePlanePar(double posZ = 0, double innerRadius = 0, double outerRadius = 0):
29 m_posZ(posZ), m_innerRadius(innerRadius), m_outerRadius(outerRadius)
30 {}
31
33 double getPosZ(void) const { return m_posZ; }
35 double getInnerRadius(void) const { return m_innerRadius; }
37 double getOuterRadius(void) const { return m_outerRadius; }
38
39 private:
41 double m_posZ;
46
48 };
49
50
55 class VXDPolyConePar: public TObject {
56 public:
58 VXDPolyConePar(const std::string& name = "", const std::string& material = "", double minPhi = 0, double maxPhi = 0,
59 bool doCutOut = false, double cutOutWidth1 = 0, double cutOutWidth2 = 0, double cutOutHeight = 0, double cutOutDepth = 0):
60 m_name(name), m_material(material), m_minPhi(minPhi), m_maxPhi(maxPhi), m_doCutOut(doCutOut), m_cutOutWidth1(cutOutWidth1),
61 m_cutOutWidth2(cutOutWidth2),
62 m_cutOutHeight(cutOutHeight), m_cutOutDepth(cutOutDepth)
63 {}
64
66 std::string getName(void) const { return m_name; }
68 std::string getMaterial(void) const { return m_material; }
70 double getMinPhi(void) const { return m_minPhi; }
72 double getMaxPhi(void) const { return m_maxPhi; }
74 bool getDoCutOut(void) const { return m_doCutOut; }
76 //double getCutOutWidth(void) const { return m_cutOutWidth; }
78 double getCutOutWidth1(void) const { return m_cutOutWidth1; }
80 double getCutOutWidth2(void) const { return m_cutOutWidth2; }
82 double getCutOutHeight(void) const { return m_cutOutHeight; }
84 double getCutOutDepth(void) const { return m_cutOutDepth; }
86 std::vector<VXDPolyConePlanePar>& getPlanes(void) { return m_planes; }
88 const std::vector<VXDPolyConePlanePar>& getPlanes(void) const { return m_planes; }
89
90 private:
92 std::string m_name;
94 std::string m_material;
96 double m_minPhi;
98 double m_maxPhi;
102 //double m_cutOutWidth;
112 std::vector<VXDPolyConePlanePar> m_planes;
113
115 };
116
117
119} // end of namespace Belle2
120
The Class for VXD PolyCone, possibly with coutouts.
std::vector< VXDPolyConePlanePar > m_planes
Planes.
std::vector< VXDPolyConePlanePar > & getPlanes(void)
Get planes.
std::string getMaterial(void) const
Get material name.
double m_cutOutDepth
CutOut Depth in mm.
VXDPolyConePar(const std::string &name="", const std::string &material="", double minPhi=0, double maxPhi=0, bool doCutOut=false, double cutOutWidth1=0, double cutOutWidth2=0, double cutOutHeight=0, double cutOutDepth=0)
Constructor.
std::string m_material
Material name.
const std::vector< VXDPolyConePlanePar > & getPlanes(void) const
Get planes.
bool m_doCutOut
doCutOut flag
double m_minPhi
minPhi in rad
double m_cutOutWidth2
CutOut Width2 in mm.
double getMinPhi(void) const
Get MinPhi in rad.
std::string getName(void) const
Get name.
ClassDef(VXDPolyConePar, 6)
ClassDef, must be the last term before the closing {}.
double getCutOutWidth2(void) const
Get CutOut Width2 in mm.
double m_cutOutWidth1
CutOut Width in mm.
double getMaxPhi(void) const
Get MaxPhi in rad.
double getCutOutHeight(void) const
Get CutOut Height in mm.
double m_cutOutHeight
CutOut Height in mm.
bool getDoCutOut(void) const
Get doCutOut flag.
double getCutOutWidth1(void) const
Get CutOut Width in mm.
std::string m_name
Name.
double getCutOutDepth(void) const
Get CutOut Depth in mm.
double m_maxPhi
maxPhi in rad
The Class for VXD Polycone Plane.
double m_innerRadius
InnerRadius in mm.
double m_posZ
PosZ in mm.
ClassDef(VXDPolyConePlanePar, 5)
ClassDef, must be the last term before the closing {}.
double getOuterRadius(void) const
Get OuterRadius in mm.
double getInnerRadius(void) const
Get InnerRadius in mm.
double getPosZ(void) const
Get PosZ in mm.
VXDPolyConePlanePar(double posZ=0, double innerRadius=0, double outerRadius=0)
Constructor.
double m_outerRadius
OuterRadius in mm.
Abstract base class for different kinds of events.