BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
virtual | ~IUnitConverter () |
virtual IUnitConverter * | clone () const =0 |
virtual size_t | dimension () const =0 |
virtual double | calculateMin (size_t i_axis, Axes::Units units_type) const =0 |
virtual double | calculateMax (size_t i_axis, Axes::Units units_type) const =0 |
virtual size_t | axisSize (size_t i_axis) const =0 |
std::string | axisName (size_t i_axis, Axes::Units units_type=Axes::Units::DEFAULT) const |
virtual std::vector< Axes::Units > | availableUnits () const =0 |
virtual Axes::Units | defaultUnits () const =0 |
Axes::Units | substituteDefaultUnits (Axes::Units units) const |
virtual std::unique_ptr< IAxis > | createConvertedAxis (size_t i_axis, Axes::Units units) const =0 |
virtual std::unique_ptr< OutputData< double > > | createConvertedData (const OutputData< double > &data, Axes::Units units) const |
virtual void | transferToCPP () |
Protected Member Functions | |
void | checkIndex (size_t i_axis) const |
void | throwUnitsError (std::string method, std::vector< Axes::Units > available) const |
Private Member Functions | |
virtual std::vector< std::map< Axes::Units, std::string > > | createNameMaps () const =0 |
Interface to provide axis translations to different units for simulation output.
Definition at line 51 of file IUnitConverter.h.
|
virtualdefault |
|
pure virtual |
Implements ICloneable.
Implemented in UnitConverter1D, UnitConverterQSpec, UnitConverterConvSpec, DepthProbeConverter, OffSpecularConverter, RectangularConverter, and SphericalConverter.
|
pure virtual |
Implemented in UnitConverter1D, and UnitConverterSimple.
Referenced by checkIndex(), and UnitConverterUtils::createOutputData().
|
pure virtual |
Implemented in UnitConverter1D, and UnitConverterSimple.
|
pure virtual |
Implemented in UnitConverter1D, and UnitConverterSimple.
|
pure virtual |
Implemented in UnitConverterQSpec, UnitConverterConvSpec, and UnitConverterSimple.
std::string IUnitConverter::axisName | ( | size_t | i_axis, |
Axes::Units | units_type = Axes::Units::DEFAULT |
||
) | const |
Definition at line 20 of file IUnitConverter.cpp.
References availableUnits(), createNameMaps(), substituteDefaultUnits(), and throwUnitsError().
Referenced by UnitConverterSimple::addDetectorAxis(), OffSpecularConverter::addDetectorYAxis(), UnitConverterSimple::createConvertedAxis(), UnitConverter1D::createConvertedAxis(), DepthProbeConverter::DepthProbeConverter(), OffSpecularConverter::OffSpecularConverter(), and UnitConverterConvSpec::UnitConverterConvSpec().
|
pure virtual |
Implemented in UnitConverterSimple, UnitConverterQSpec, UnitConverterConvSpec, DepthProbeConverter, RectangularConverter, and SphericalConverter.
Referenced by axisName().
|
pure virtual |
Implemented in UnitConverterQSpec, UnitConverterConvSpec, DepthProbeConverter, OffSpecularConverter, RectangularConverter, and SphericalConverter.
Referenced by UnitConverterSimple::addDetectorAxis(), SimDataPair::initResultArrays(), and substituteDefaultUnits().
Axes::Units IUnitConverter::substituteDefaultUnits | ( | Axes::Units | units | ) | const |
Definition at line 65 of file IUnitConverter.cpp.
References defaultUnits().
Referenced by axisName(), UnitConverterSimple::calculateMax(), UnitConverter1D::calculateMax(), UnitConverterSimple::calculateMin(), UnitConverter1D::calculateMin(), and UnitConverter1D::createConvertedAxis().
|
pure virtual |
Implemented in UnitConverter1D, and UnitConverterSimple.
Referenced by createConvertedData(), and UnitConverterUtils::createOutputData().
|
virtual |
Creates OutputData array in converter units.
Reimplemented in UnitConverter1D.
Definition at line 36 of file IUnitConverter.cpp.
References createConvertedAxis(), OutputData< T >::getRank(), and OutputData< T >::getRawDataVector().
|
protected |
Definition at line 46 of file IUnitConverter.cpp.
References dimension().
Referenced by UnitConverterSimple::axisSize(), UnitConverterConvSpec::axisSize(), UnitConverterQSpec::axisSize(), UnitConverterSimple::calculateMax(), UnitConverter1D::calculateMax(), UnitConverterSimple::calculateMin(), UnitConverter1D::calculateMin(), and UnitConverter1D::createConvertedAxis().
|
protected |
Definition at line 54 of file IUnitConverter.cpp.
References axisUnitName.
Referenced by axisName(), SphericalConverter::calculateValue(), RectangularConverter::calculateValue(), OffSpecularConverter::calculateValue(), DepthProbeConverter::checkUnits(), UnitConverterConvSpec::getTraslatorFrom(), UnitConverterConvSpec::getTraslatorTo(), and UnitConverterQSpec::getTraslatorTo().
|
privatepure virtual |
Implemented in UnitConverterQSpec, UnitConverterConvSpec, DepthProbeConverter, OffSpecularConverter, RectangularConverter, and SphericalConverter.
Referenced by axisName().
|
inlinevirtualinherited |
Used for Python overriding of clone (see swig/tweaks.py)
Definition at line 34 of file ICloneable.h.