25 throw std::runtime_error(
"SimulationArea::SimulationArea: null pointer passed"
29 throw std::runtime_error(
30 "SimulationArea::SimulationArea: detector of unspecified dimensionality");
51 return (masks && masks->hasMasks() && masks->isMasked(
detectorIndex(index)));
Defines class DetectorMask.
Defines common detector interface.
Defines class RegionOfInterest.
Defines class SimulationArea.
Abstract detector interface.
virtual const DetectorMask * detectorMask() const =0
Returns detector masks container.
size_t dimension() const
Returns actual dimensionality of the detector (number of defined axes)
size_t totalSize() const
Returns total number of pixels.
virtual const RegionOfInterest * regionOfInterest() const =0
Returns region of interest if exists.
size_t detectorIndex(size_t roiIndex) const
Converts roi index to the detector index.
size_t roiSize() const
Number of detector bins in ROI area.
An iterator for SimulationArea.
Holds iteration logic over active detector channels in the presence of masked areas and RegionOfInter...
virtual bool isMasked(size_t index) const
returns true if given iterator index correspond to masked detector channel
size_t detectorIndex(size_t index) const
Return detector index from iterator index.
SimulationAreaIterator begin()
SimulationAreaIterator end()
SimulationArea(const IDetector *detector)
size_t roiIndex(size_t index) const
Return index in ROI map from iterator index.
const IDetector * m_detector
virtual bool isMasked(size_t) const
returns true if given iterator index correspond to masked detector channel
SimulationRoiArea(const IDetector *detector)