15 #ifndef BORNAGAIN_DEVICE_HISTO_SIMULATIONRESULT_H
16 #define BORNAGAIN_DEVICE_HISTO_SIMULATIONRESULT_H
63 #ifdef BORNAGAIN_PYTHON
Defines interface ICoordSystem and possible axis units.
PyObject forward declaration.
Stores radiation power per bin.
Abstract base class for one-dimensional axes.
Interface to provide axis translations to different units for simulation output.
Wrapper around Datafield that also provides unit conversions.
std::vector< double > flatVector(Coords units=Coords::UNDEFINED) const
SimulationResult & operator=(const SimulationResult &other)
const ICoordSystem & converter() const
Returns underlying unit converter.
SimulationResult relativeToMaximum() const
Returns modified SimulationResult: all intensities dvided by maximum intensity.
void setTitle(const std::string &title)
std::unique_ptr< const ICoordSystem > m_coordsys
PyObject * array(Coords units=Coords::UNDEFINED) const
Returns intensity data as Python numpy array.
std::pair< double, double > axisMinMax(size_t i, Coords units=Coords::UNDEFINED) const
std::string axisName(size_t i, Coords units=Coords::UNDEFINED) const
std::unique_ptr< Datafield > m_data
double & operator[](size_t i)
size_t rank() const
Data element access.
Datafield * datafield(Coords units=Coords::UNDEFINED) const
SimulationResult()=default
std::vector< double > convertedBinCenters(Coords units=Coords::UNDEFINED) const