Belle II Software  release-05-01-25
VXDGeoLadderPar.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Benjamin Schwenker *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 
13 #include <TObject.h>
14 #include <string>
15 #include <vector>
16 
17 #include <vxd/dbobjects/VXDGeoSensorPlacementPar.h>
18 
19 
20 namespace Belle2 {
31  class VXDGeoLadderPar: public TObject {
32  public:
34  VXDGeoLadderPar(int layerID = 0, double shift = 0, double radius = 0,
35  double slantedAngle = 0, double slantedRadius = 0,
36  double glueSize = -1, const std::string& glueMaterial = ""):
37  m_layerID(layerID), m_shift(shift), m_radius(radius),
38  m_slantedAngle(slantedAngle), m_slantedRadius(slantedRadius),
39  m_glueSize(glueSize), m_glueMaterial(glueMaterial) {}
41  ~VXDGeoLadderPar() {}
42 
44  int getLayerID() const { return m_layerID; }
46  void setLayerID(int layerID) { m_layerID = layerID; }
48  double getShift() const { return m_shift; }
50  void setShift(double shift) { m_shift = shift; }
52  double getRadius() const { return m_radius; }
54  void setRadius(double radius) { m_radius = radius; }
56  double getSlantedAngle() const { return m_slantedAngle; }
58  void setSlantedAngle(double slantedAngle) { m_slantedAngle = slantedAngle; }
60  double getSlantedRadius() const { return m_slantedRadius; }
62  void setSlantedRadius(double slantedRadius) { m_slantedRadius = slantedRadius; }
64  double getGlueSize() const { return m_glueSize; }
66  void setGlueSize(double glueSize) { m_glueSize = glueSize; }
68  const std::string& getGlueMaterial() const { return m_glueMaterial; }
70  void setGlueMaterial(const std::string& glueMaterial) { m_glueMaterial = glueMaterial; }
72  const std::vector<VXDGeoSensorPlacementPar>& getSensors() const { return m_sensors; }
74  void addSensor(const VXDGeoSensorPlacementPar& sensor) { m_sensors.push_back(sensor); }
75  private:
76 
78  int m_layerID;
80  double m_shift;
82  double m_radius;
84  double m_slantedAngle;
88  double m_glueSize;
90  std::string m_glueMaterial;
92  std::vector<VXDGeoSensorPlacementPar> m_sensors;
93 
95  };
97 } // end of namespace Belle2
98 
Belle2::VXDGeoLadderPar::m_radius
double m_radius
Radius where to place the ladder.
Definition: VXDGeoLadderPar.h:90
Belle2::VXDGeoLadderPar::setShift
void setShift(double shift)
set the shift along the u coordinate for all sensors in the ladder
Definition: VXDGeoLadderPar.h:58
Belle2::VXDGeoLadderPar::ClassDef
ClassDef(VXDGeoLadderPar, 5)
ClassDef, must be the last term before the closing {}.
Belle2::VXDGeoLadderPar::setGlueSize
void setGlueSize(double glueSize)
set the additional glue size, e.g.
Definition: VXDGeoLadderPar.h:74
Belle2::VXDGeoLadderPar
The Class for VXD Ladder payload.
Definition: VXDGeoLadderPar.h:39
Belle2::VXDGeoLadderPar::VXDGeoLadderPar
VXDGeoLadderPar(int layerID=0, double shift=0, double radius=0, double slantedAngle=0, double slantedRadius=0, double glueSize=-1, const std::string &glueMaterial="")
Constructor.
Definition: VXDGeoLadderPar.h:42
Belle2::VXDGeoLadderPar::getSensors
const std::vector< VXDGeoSensorPlacementPar > & getSensors() const
get list of sensors
Definition: VXDGeoLadderPar.h:80
Belle2::VXDGeoLadderPar::getLayerID
int getLayerID() const
get the layer id
Definition: VXDGeoLadderPar.h:52
Belle2::VXDGeoLadderPar::m_glueSize
double m_glueSize
Oversize of the glue between the ladders, <0 means no glue.
Definition: VXDGeoLadderPar.h:96
Belle2::VXDGeoLadderPar::getGlueMaterial
const std::string & getGlueMaterial() const
get the glue material
Definition: VXDGeoLadderPar.h:76
Belle2::VXDGeoLadderPar::setSlantedAngle
void setSlantedAngle(double slantedAngle)
set the slant angle for slanted sensors
Definition: VXDGeoLadderPar.h:66
Belle2::VXDGeoLadderPar::~VXDGeoLadderPar
~VXDGeoLadderPar()
Destructor.
Definition: VXDGeoLadderPar.h:49
Belle2::VXDGeoLadderPar::m_slantedAngle
double m_slantedAngle
Angle of the module with respect to the global z-axis for slanted sensors.
Definition: VXDGeoLadderPar.h:92
Belle2::VXDGeoLadderPar::m_layerID
int m_layerID
ID of the ladder inside the layer.
Definition: VXDGeoLadderPar.h:86
Belle2::VXDGeoLadderPar::m_sensors
std::vector< VXDGeoSensorPlacementPar > m_sensors
list of all sensors to be placed in the ladder
Definition: VXDGeoLadderPar.h:100
Belle2::VXDGeoLadderPar::addSensor
void addSensor(const VXDGeoSensorPlacementPar &sensor)
add a sensor to the list of sensors in the ladder
Definition: VXDGeoLadderPar.h:82
Belle2::VXDGeoLadderPar::getSlantedRadius
double getSlantedRadius() const
get the radius for slanted sensors
Definition: VXDGeoLadderPar.h:68
Belle2::VXDGeoLadderPar::setRadius
void setRadius(double radius)
set the radius of all sensors except slanted ones
Definition: VXDGeoLadderPar.h:62
Belle2::VXDGeoLadderPar::setGlueMaterial
void setGlueMaterial(const std::string &glueMaterial)
set the glue material
Definition: VXDGeoLadderPar.h:78
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::VXDGeoLadderPar::getSlantedAngle
double getSlantedAngle() const
get the slant angle for slanted sensors
Definition: VXDGeoLadderPar.h:64
Belle2::VXDGeoLadderPar::m_shift
double m_shift
Shift of the ladder along local u.
Definition: VXDGeoLadderPar.h:88
Belle2::VXDGeoLadderPar::getRadius
double getRadius() const
get the radius of all sensors except slanted ones
Definition: VXDGeoLadderPar.h:60
Belle2::VXDGeoLadderPar::m_glueMaterial
std::string m_glueMaterial
name of the Material used as glue
Definition: VXDGeoLadderPar.h:98
Belle2::VXDGeoLadderPar::getShift
double getShift() const
get the shift along the u coordinate for all sensors in the ladder
Definition: VXDGeoLadderPar.h:56
Belle2::VXDGeoSensorPlacementPar
The Class for VXD Sensor Placement payload.
Definition: VXDGeoSensorPlacementPar.h:37
Belle2::VXDGeoLadderPar::setSlantedRadius
void setSlantedRadius(double slantedRadius)
set the radius for slanted sensors
Definition: VXDGeoLadderPar.h:70
Belle2::VXDGeoLadderPar::getGlueSize
double getGlueSize() const
get the additional glue size, e.g.
Definition: VXDGeoLadderPar.h:72
Belle2::VXDGeoLadderPar::m_slantedRadius
double m_slantedRadius
Radius of the center of the active area for slanted sensors.
Definition: VXDGeoLadderPar.h:94
Belle2::VXDGeoLadderPar::setLayerID
void setLayerID(int layerID)
set the layer id
Definition: VXDGeoLadderPar.h:54