13 #ifndef DDREC_CELLIDPOSITIONCONVERTER_H
14 #define DDREC_CELLIDPOSITIONCONVERTER_H
16 #include "DD4hep/Detector.h"
17 #include "DD4hep/Readout.h"
18 #include "DD4hep/VolumeManager.h"
20 #include "DDSegmentation/Segmentation.h"
90 const DetElement&
det=DetElement() )
const;
98 PlacedVolume
findPlacement(
const Position& point,
const PlacedVolume& mother,
double locPos[3], PlacedVolume::VolIDs& volIDs)
const ;
112 Readout
findReadout(
const PlacedVolume& pv)
const ;
134 #endif // DDREC_CELLIDPOSITIONCONVERTER_H
const VolumeManagerContext * findContext(const CellID &cellID) const
Find the context with DetElement, placements etc for a given cellID of a sensitive volume...
VolumeManager _volumeManager
const Detector * _description
void operator=(const CellIDPositionConverter &)=delete
CellID cellID(const Position &global) const
Return the global cellID for the given global position.
CellIDPositionConverter()=delete
Utility for position to cellID and cellID to position conversions.
PlacedVolume findPlacement(const Position &point, const PlacedVolume &mother, double locPos[3], PlacedVolume::VolIDs &volIDs) const
Find the lowest daughter Placement in the given Placement that contains the point (in the coordinate ...
DetElement findDetElement(const Position &global, const DetElement &det=DetElement()) const
Find the DetElement that contains the given point - if no DetElement is found, an invalid DetElement ...
std::vector< double > cellDimensions(const CellID &cell) const
Returns the segmentation.cellDimensions.
CellIDPositionConverter(Detector &description)
The constructor - takes the main description object.
Position position(const CellID &cellID) const
Return the global position for a given cellID of a sensitive volume.
Readout findReadout(const DetElement &det) const
Find the readout object for the given DetElement.
virtual ~CellIDPositionConverter()
Destructor.
Position positionNominal(const CellID &cellID) const
Return the nominal global position for a given cellID of a sensitive volume.
DDSegmentation::CellID CellID
DDSegmentation::VolumeID VolumeID