135 return std::string(
"barrel");
139 return std::string(
"layer");
143 return std::string(
"system");
long long int CellID
Useful typedefs to differentiate cell IDs and volume IDs.
IDDecoder()
Default constructor.
static Geometry::DetElement getClosestDaughter(const Geometry::DetElement &det, const Geometry::Position &position)
Helper method to get the closest daughter DetElement to the position starting from the given DetEleme...
Handle class holding a placed volume (also called physical volume)
static std::string systemIdentifier()
Geometry::Position position(const CellID &cellID) const
Returns the global position from a given cell ID.
bool isEndcapNorth() const
void operator=(const IDDecoder &)
Disable assignment operator.
DDSegmentation::CellID CellID
Geometry::DetElement detectorElement(const CellID &cellID) const
Returns the closest detector element in the hierarchy for a given cell ID.
VolumeID volumeID(const CellID &cellID) const
Returns the volume ID of a given cell ID.
BarrelEndcapFlag barrelEndcapFlag(const CellID &cellID) const
Access to the barrel-endcap flag.
Geometry::Readout findReadout(const Geometry::DetElement &det) const
Helper method to find the corresponding Readout object to a DetElement.
Geometry::Position localPosition(const CellID &cellID) const
Returns the local position from a given cell ID.
virtual ~BarrelEndcapFlag()
virtual ~IDDecoder()
Destructor.
bool isEndcapSouth() const
Handle to the implementation of the readout structure of a subdetector.
Geometry::PlacedVolume placement(const CellID &cellID) const
Returns the placement for a given cell ID.
CellID cellIDFromLocal(const Geometry::Position &local, const VolumeID volumeID) const
Returns the cell ID from the local position in the given volume ID.
Geometry::Readout readout(const CellID &cellID) const
Access to the Readout object for a given cell ID.
static std::string barrelIdentifier()
static std::string layerIdentifier()
long int systemIndex(const CellID &cellID) const
Access to the system index.
void neighbours(const CellID &cellID, std::set< CellID > &neighbours) const
Calculates the neighbours of the given cell ID and adds them to the list of neighbours.
long int layerIndex(const CellID &cellID) const
Access to the layer index.
ROOT::Math::XYZVector Position
Geometry::DetElement subDetector(const CellID &cellID) const
Returns the subdetector for a given cell ID.
DDSegmentation::VolumeID VolumeID
Handle class describing a detector element.
Class to support the retrieval of detector elements and volumes given a valid identifier.
Geometry::VolumeManager _volumeManager
bool areNeighbours(const CellID &cellID, const CellID &otherCellID) const
Checks if the given cell IDs are neighbours.
BarrelEndcapFlag(unsigned int val)
BarrelEncapID getValue() const
static IDDecoder & getInstance()
Access to the global IDDecoder instance.
CellID cellID(const Geometry::Position &global) const
Returns the global cell ID from a given global position.