BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Abstract detector interface. More...
Public Types | |
using | const_iterator = const SimulationAreaIterator & |
Public Member Functions | |
IDetector * | clone () const override=0 |
virtual void | init (const Beam &) |
Inits detector with the beam settings. | |
void | addAxis (const IAxis &axis) |
const IAxis & | getAxis (size_t index) const |
size_t | dimension () const |
Returns actual dimensionality of the detector (number of defined axes) | |
size_t | axisBinIndex (size_t index, size_t selected_axis) const |
Calculate axis index for given global index. | |
size_t | totalSize () const |
Returns total number of pixels. | |
virtual const DetectorMask * | detectorMask () const =0 |
Returns detector masks container. | |
void | setAnalyzerProperties (const kvector_t direction, double efficiency, double total_transmission) |
Sets the polarization analyzer characteristics of the detector. | |
void | setDetectorResolution (const IDetectorResolution &p_detector_resolution) |
Sets the detector resolution. | |
void | setResolutionFunction (const IResolutionFunction2D &resFunc) |
void | applyDetectorResolution (OutputData< double > *p_intensity_map) const |
Applies the detector resolution to the given intensity maps. | |
void | removeDetectorResolution () |
Removes detector resolution function. | |
const IDetectorResolution * | detectorResolution () const |
Returns a pointer to detector resolution object. | |
std::unique_ptr< OutputData< double > > | createDetectorMap () const |
Returns empty detector map in given axes units. | |
virtual const RegionOfInterest * | regionOfInterest () const =0 |
Returns region of interest if exists. | |
virtual void | resetRegionOfInterest ()=0 |
Resets region of interest making whole detector plane available for the simulation. | |
const DetectionProperties & | detectionProperties () const |
Returns detection properties. | |
OutputData< double > * | createDetectorIntensity (const std::vector< SimulationElement > &elements) const |
Returns new intensity map with detector resolution applied. More... | |
virtual Axes::Units | defaultAxesUnits () const |
Return default axes units. | |
size_t | numberOfSimulationElements () const |
Returns number of simulation elements. | |
std::vector< const INode * > | getChildren () const override |
Returns a vector of children (const). | |
void | iterate (std::function< void(const_iterator)> func, bool visit_masks=false) const |
Public Member Functions inherited from ICloneable | |
ICloneable (const ICloneable &)=delete | |
ICloneable (ICloneable &&)=default | |
virtual void | transferToCPP () |
Used for Python overriding of clone (see swig/tweaks.py) | |
Public Member Functions inherited from INode | |
INode (const NodeMeta &meta, const std::vector< double > &PValues) | |
virtual void | accept (INodeVisitor *visitor) const =0 |
Calls the INodeVisitor's visit method. | |
virtual std::string | treeToString () const |
Returns multiline string representing tree structure below the node. | |
void | registerChild (INode *node) |
virtual void | setParent (const INode *newParent) |
const INode * | parent () const |
INode * | parent () |
int | copyNumber (const INode *node) const |
Returns copyNumber of child, which takes into account existence of children with same name. | |
std::string | displayName () const |
Returns display name, composed from the name of node and it's copy number. | |
ParameterPool * | createParameterTree () const |
Creates new parameter pool, with all local parameters and those of its children. | |
Public Member Functions inherited from IParameterized | |
IParameterized (const std::string &name="") | |
IParameterized (const IParameterized &other) | |
IParameterized & | operator= (const IParameterized &other)=delete |
ParameterPool * | parameterPool () const |
Returns pointer to the parameter pool. | |
std::string | parametersToString () const |
Returns multiline string representing available parameters. | |
RealParameter & | registerParameter (const std::string &name, double *parpointer) |
void | registerVector (const std::string &base_name, kvector_t *p_vec, const std::string &units="nm") |
void | setParameterValue (const std::string &name, double value) |
void | setVectorValue (const std::string &base_name, kvector_t value) |
RealParameter * | parameter (const std::string &name) const |
Returns parameter with given 'name'. | |
virtual void | onChange () |
Action to be taken in inherited class when a parameter has changed. | |
void | removeParameter (const std::string &name) |
void | removeVector (const std::string &base_name) |
void | setName (const std::string &name) |
const std::string & | getName () const |
Protected Member Functions | |
IDetector (const IDetector &other) | |
void | clear () |
virtual std::string | axisName (size_t index) const =0 |
Returns the name for the axis with given index. | |
virtual std::unique_ptr< IAxis > | createAxis (size_t index, size_t n_bins, double min, double max) const |
Generates an axis with correct name and default binning for given index. | |
Additional Inherited Members | |
Static Public Member Functions inherited from IParameterized | |
static std::string | XComponentName (const std::string &base_name) |
static std::string | YComponentName (const std::string &base_name) |
static std::string | ZComponentName (const std::string &base_name) |
Protected Attributes inherited from INode | |
const size_t | m_NP |
std::vector< double > | m_P |
Abstract detector interface.
Definition at line 35 of file IDetector.h.
OutputData< double > * IDetector::createDetectorIntensity | ( | const std::vector< SimulationElement > & | elements | ) | const |
Returns new intensity map with detector resolution applied.
Map will be cropped to ROI if ROI is present.
Definition at line 148 of file IDetector.cpp.