BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
SimulationRoiArea Class Reference
Inheritance diagram for SimulationRoiArea:
Collaboration diagram for SimulationRoiArea:

Public Types

using iterator = SimulationAreaIterator
 

Public Member Functions

 SimulationRoiArea (const IDetector *detector)
 
virtual bool isMasked (size_t) const
 
SimulationAreaIterator begin ()
 
SimulationAreaIterator end ()
 
size_t totalSize () const
 
size_t roiIndex (size_t index) const
 
size_t detectorIndex (size_t index) const
 

Protected Attributes

const IDetectorm_detector
 
size_t m_max_index
 

Detailed Description

Holds iteration logic over active detector channels in the presence of ROI.

On the contrary to SimulationArea class, iterates also over masked areas.

Definition at line 61 of file SimulationArea.h.

Member Typedef Documentation

◆ iterator

Definition at line 29 of file SimulationArea.h.

Constructor & Destructor Documentation

◆ SimulationRoiArea()

SimulationRoiArea::SimulationRoiArea ( const IDetector detector)
explicit

Definition at line 69 of file SimulationArea.cpp.

69 : SimulationArea(detector) {}
SimulationArea(const IDetector *detector)

Member Function Documentation

◆ isMasked()

bool SimulationRoiArea::isMasked ( size_t  index) const
virtual

returns true if given iterator index correspond to masked detector channel

Reimplemented from SimulationArea.

Definition at line 71 of file SimulationArea.cpp.

72 {
73  return false;
74 }

◆ begin()

SimulationAreaIterator SimulationArea::begin ( )
inherited

Definition at line 38 of file SimulationArea.cpp.

39 {
40  return SimulationAreaIterator(this, 0);
41 }
An iterator for SimulationArea.

Referenced by IDetector2D::active_indices(), and IDetector::iterate().

◆ end()

SimulationAreaIterator SimulationArea::end ( )
inherited

Definition at line 43 of file SimulationArea.cpp.

44 {
45  return SimulationAreaIterator(this, totalSize());
46 }
size_t totalSize() const

References SimulationArea::totalSize().

Referenced by IDetector2D::active_indices(), and IDetector::iterate().

Here is the call graph for this function:

◆ totalSize()

size_t SimulationArea::totalSize ( ) const
inlineinherited

◆ roiIndex()

size_t SimulationArea::roiIndex ( size_t  index) const
inherited

Return index in ROI map from iterator index.

Definition at line 54 of file SimulationArea.cpp.

55 {
56  return index;
57 }

Referenced by SimulationAreaIterator::roiIndex().

◆ detectorIndex()

size_t SimulationArea::detectorIndex ( size_t  index) const
inherited

Return detector index from iterator index.

Definition at line 59 of file SimulationArea.cpp.

60 {
62  return index;
63 
64  return m_detector->regionOfInterest()->detectorIndex(index);
65 }
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.
const IDetector * m_detector

References RegionOfInterest::detectorIndex(), SimulationArea::m_detector, and IDetector::regionOfInterest().

Referenced by SimulationAreaIterator::detectorIndex(), and SimulationArea::isMasked().

Here is the call graph for this function:

Member Data Documentation

◆ m_detector

const IDetector* SimulationArea::m_detector
protectedinherited

◆ m_max_index

size_t SimulationArea::m_max_index
protectedinherited

Definition at line 49 of file SimulationArea.h.

Referenced by SimulationArea::SimulationArea(), and SimulationArea::totalSize().


The documentation for this class was generated from the following files: