8#ifndef PANDORA_SUB_DETECTOR_H
9#define PANDORA_SUB_DETECTOR_H 1
18template<
typename T,
typename S>
class PandoraObjectFactory;
41 SubDetectorLayer(
const float closestDistanceToIp,
const float nRadiationLengths,
const float nInteractionLengths);
197 m_closestDistanceToIp(closestDistanceToIp),
198 m_nRadiationLengths(nRadiationLengths),
199 m_nInteractionLengths(nInteractionLengths)
207 return m_closestDistanceToIp;
214 return m_nRadiationLengths;
221 return m_nInteractionLengths;
Header file for pandora object creation classes.
PandoraObjectFactory class.
float m_nRadiationLengths
Absorber material in front of layer, units radiation lengths.
float GetNRadiationLengths() const
Get the absorber material in front of layer, units radiation lengths.
float m_nInteractionLengths
Absorber material in front of layer, units interaction lengths.
float m_closestDistanceToIp
Closest distance of the layer from the interaction point, units mm.
float GetNInteractionLengths() const
Get the absorber material in front of layer, units interaction lengths.
float GetClosestDistanceToIp() const
Get the closest distance of the layer from the interaction point, units mm.
SubDetectorLayer(const float closestDistanceToIp, const float nRadiationLengths, const float nInteractionLengths)
Constructor.
const std::string & GetSubDetectorName() const
Get the sub detector name, uniquely specifying the sub detector.
SubDetectorLayerVector m_subDetectorLayerVector
The vector of layer parameters for the sub detector section.
float m_innerZCoordinate
Inner cylindrical polar z coordinate, origin interaction point, units mm.
bool m_isMirroredInZ
Whether a second sub detector exists, equivalent to a reflection in z=0 plane.
float m_innerPhiCoordinate
Inner cylindrical polar phi coordinate (angle wrt cartesian x axis)
float GetOuterPhiCoordinate() const
Get the outer cylindrical polar phi coordinate (angle wrt cartesian x axis)
unsigned int m_innerSymmetryOrder
Order of symmetry of the innermost edge of sub detector.
float GetInnerRCoordinate() const
Get the inner cylindrical polar r coordinate, origin interaction point, units mm.
unsigned int m_outerSymmetryOrder
Order of symmetry of the outermost edge of sub detector.
unsigned int GetOuterSymmetryOrder() const
Get the order of symmetry of the outermost edge of sub detector.
float GetInnerPhiCoordinate() const
Get the inner cylindrical polar phi coordinate (angle wrt cartesian x axis)
SubDetectorType GetSubDetectorType() const
Get the sub detector type, e.g. ECAL_BARREL, HCAL_ENDCAP, TPC, etc.
float GetOuterRCoordinate() const
Get the outer cylindrical polar r coordinate, origin interaction point, units mm.
virtual ~SubDetector()
Destructor.
unsigned int GetInnerSymmetryOrder() const
Get the order of symmetry of the innermost edge of subdetector.
float m_outerZCoordinate
Outer cylindrical polar z coordinate, origin interaction point, units mm.
float m_outerPhiCoordinate
Outer cylindrical polar phi coordinate (angle wrt cartesian x axis)
float GetOuterZCoordinate() const
Get the outer cylindrical polar z coordinate, origin interaction point, units mm.
unsigned int m_nLayers
The number of layers in the sub detector section.
unsigned int GetNLayers() const
Get the number of layers in the sub detector.
float m_outerRCoordinate
Outer cylindrical polar r coordinate, origin interaction point, units mm.
SubDetectorType m_subDetectorType
The sub detector type, e.g. ECAL_BARREL, HCAL_ENDCAP, TPC, etc.
float m_innerRCoordinate
Inner cylindrical polar r coordinate, origin interaction point, units mm.
std::vector< SubDetectorLayer > SubDetectorLayerVector
std::string m_subDetectorName
The sub detector name, must uniquely specify a single sub detector.
bool IsMirroredInZ() const
Whether a second sub detector exists, equivalent to a reflection in z=0 plane.
const SubDetectorLayerVector & GetSubDetectorLayerVector() const
Get the vector of layer parameters for the sub detector.
float GetInnerZCoordinate() const
Get the inner cylindrical polar z coordinate, origin interaction point, units mm.
SubDetectorType
Subdetector type enum.