BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
IUnitConverter Class Referenceabstract

Interface to provide axis translations to different units for simulation output. More...

+ Inheritance diagram for IUnitConverter:

Public Member Functions

virtual IUnitConverterclone () 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< IAxiscreateConvertedAxis (size_t i_axis, Axes::Units units) const =0
 
virtual std::unique_ptr< OutputData< double > > createConvertedData (const OutputData< double > &data, Axes::Units units) const
 Creates OutputData array in converter units.
 
- 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)
 

Protected Member Functions

void checkIndex (size_t i_axis) const
 
void throwUnitsError (std::string method, std::vector< Axes::Units > available) const
 

Detailed Description

Interface to provide axis translations to different units for simulation output.

Definition at line 51 of file IUnitConverter.h.


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