BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Interface for one-dimensional axes. More...
Public Member Functions | |
IAxis (const std::string &name) | |
constructors More... | |
virtual | ~IAxis () |
destructor More... | |
virtual Bin1D | bin (size_t index) const =0 |
retrieve a 1d bin for the given index More... | |
virtual std::vector< double > | binBoundaries () const |
virtual double | binCenter (size_t index) const =0 |
virtual std::vector< double > | binCenters () const |
double | center () const |
Returns midpoint of axis. More... | |
virtual IAxis * | clone () const =0 |
clone function More... | |
virtual bool | contains (double value) const |
Returns true if axis contains given point. More... | |
virtual IAxis * | createClippedAxis (double left, double right) const |
Creates a new clipped axis. More... | |
virtual size_t | findClosestIndex (double value) const =0 |
find bin index which is best match for given value More... | |
std::string | getName () const |
retrieve the label of the axis More... | |
virtual double | lowerBound () const =0 |
Returns value of first point of axis. More... | |
bool | operator!= (const IAxis &right) const |
bool | operator== (const IAxis &right) const |
test for equality More... | |
virtual double | operator[] (size_t index) const =0 |
indexed accessor retrieves a sample More... | |
void | setName (std::string name) |
Sets the axis label. More... | |
virtual size_t | size () const =0 |
retrieve the number of bins More... | |
double | span () const |
Returns distance from first to last point. More... | |
virtual double | upperBound () const =0 |
Returns value of last point of axis. More... | |
Protected Member Functions | |
virtual bool | equals (const IAxis &other) const |
virtual void | print (std::ostream &ostr) const =0 |
Private Member Functions | |
IAxis (const IAxis &) | |
IAxis & | operator= (const IAxis &) |
Private Attributes | |
std::string | m_name |
axis name More... | |
Friends | |
std::ostream & | operator<< (std::ostream &ostr, const IAxis &m) |
|
private |
|
pure virtual |
retrieve a 1d bin for the given index
Implemented in PointwiseAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
Referenced by RegionOfInterest::clipAxisToRoi(), DataUtils::coordinateFromBinf(), DataUtils::coordinateToBinf(), RectangularDetector::createPixel(), SphericalDetector::createPixel(), and HistoUtils::FindPeaks().
|
virtual |
Reimplemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
|
pure virtual |
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
|
virtual |
Reimplemented in PointwiseAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
Definition at line 22 of file IAxis.cpp.
Referenced by Histogram1D::binCenters(), and OutputDataReadWriteNumpyTXT::write1DRepresentation().
double IAxis::center | ( | ) | const |
Returns midpoint of axis.
Definition at line 47 of file IAxis.cpp.
References lowerBound(), and upperBound().
|
pure virtual |
clone function
Implemented in PointwiseAxis, ConstKBinAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
Referenced by IDetector::addAxis(), OutputData< T >::addAxis(), PointwiseAxisItem::init(), DepthProbeSimulation::setBeamParameters(), OffSpecularSimulation::setBeamParameters(), and OutputDataReadWriteINT::writeOutputData().
|
virtual |
Returns true if axis contains given point.
Definition at line 37 of file IAxis.cpp.
References lowerBound(), and upperBound().
Referenced by Histogram1D::crop(), Histogram2D::crop(), Histogram1D::fill(), RectangularDetector::indexOfSpecular(), and SphericalDetector::indexOfSpecular().
|
virtual |
Creates a new clipped axis.
Reimplemented in PointwiseAxis, ConstKBinAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
Definition at line 32 of file IAxis.cpp.
Referenced by DataUtils::createClippedDataSet().
|
protectedvirtual |
Reimplemented in PointwiseAxis, ConstKBinAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
Definition at line 17 of file IAxis.cpp.
References getName().
Referenced by CustomBinAxis::equals(), FixedBinAxis::equals(), VariableBinAxis::equals(), ConstKBinAxis::equals(), PointwiseAxis::equals(), and operator==().
|
pure virtual |
find bin index which is best match for given value
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
Referenced by DataUtils::coordinateToBinf(), Histogram1D::fill(), RectangularDetector::indexOfSpecular(), SphericalDetector::indexOfSpecular(), RegionOfInterest::initFrom(), Histogram2D::projectionX(), and Histogram2D::projectionY().
|
inline |
retrieve the label of the axis
Definition at line 40 of file IAxis.h.
References m_name.
Referenced by OutputData< T >::addAxis(), RegionOfInterest::clipAxisToRoi(), CustomBinAxis::clone(), FixedBinAxis::clone(), VariableBinAxis::clone(), ConstKBinAxis::clone(), PointwiseAxis::clone(), FixedBinAxis::createClippedAxis(), VariableBinAxis::createClippedAxis(), ConstKBinAxis::createClippedAxis(), PointwiseAxis::createClippedAxis(), ImportDataUtils::CreateSimplifiedOutputData(), equals(), CustomBinAxis::print(), FixedBinAxis::print(), VariableBinAxis::print(), ConstKBinAxis::print(), PointwiseAxis::print(), and TransformFromDomain::setAxisItem().
|
pure virtual |
Returns value of first point of axis.
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
Referenced by DepthProbeConverter::DepthProbeConverter(), OffSpecularConverter::OffSpecularConverter(), center(), contains(), IHistogram::getXmin(), IHistogram::getYmin(), RectangularDetector::regionOfInterestPixel(), TransformFromDomain::setAxisItem(), DepthProbeSimulation::setBeamParameters(), OffSpecularSimulation::setBeamParameters(), SpecularSimulation::setScan(), TransformFromDomain::setSphericalDetector(), and span().
|
inline |
|
inline |
|
pure virtual |
indexed accessor retrieves a sample
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
|
protectedpure virtual |
Implemented in PointwiseAxis, ConstKBinAxis, VariableBinAxis, FixedBinAxis, and CustomBinAxis.
|
inline |
|
pure virtual |
retrieve the number of bins
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
Referenced by DepthProbeConverter::DepthProbeConverter(), DepthProbeElement::DepthProbeElement(), OffSpecularConverter::OffSpecularConverter(), OutputData< T >::addAxis(), Histogram2D::addContent(), ConvolutionDetectorResolution::apply1dConvolution(), ConvolutionDetectorResolution::apply2dConvolution(), DepthProbeComputationTerm::compute(), DataUtils::coordinateFromBinf(), DataUtils::create2DArrayfromOutputData(), DepthProbeSimulation::createIntensityData(), DataUtils::createRearrangedDataSet(), ImportDataUtils::CreateSimplifiedOutputData(), HistoUtils::FindPeaks(), DepthProbeSimulation::generateSimulationElements(), IDetector2D::getGlobalIndex(), RectangularDetector::getNbinsX(), IHistogram::getNbinsX(), RectangularDetector::getNbinsY(), IHistogram::getNbinsY(), OutputData< T >::hasSameDimensions(), RegionOfInterest::initFrom(), OffSpecularSimulation::intensityMapSize(), DetectorUtils::isQuadratic(), DepthProbeSimulation::numberOfSimulationElements(), DepthProbeSimulation::rawResults(), TransformFromDomain::setAxisItem(), DepthProbeSimulation::setBeamParameters(), OffSpecularSimulation::setBeamParameters(), DepthProbeSimulation::setRawResults(), TransformFromDomain::setSphericalDetector(), OffSpecularSimulation::transferDetectorImage(), OffSpecularSimulation::transferResultsToIntensityMap(), SpecularBeamItem::updateToData(), OutputDataReadWriteNumpyTXT::write2DRepresentation(), and OutputDataReadWriteINT::writeOutputData().
double IAxis::span | ( | ) | const |
Returns distance from first to last point.
Definition at line 42 of file IAxis.cpp.
References lowerBound(), and upperBound().
Referenced by RectangularDetector::getHeight(), RectangularDetector::getWidth(), and DetectorUtils::isQuadratic().
|
pure virtual |
Returns value of last point of axis.
Implemented in PointwiseAxis, VariableBinAxis, and FixedBinAxis.
Referenced by DepthProbeConverter::DepthProbeConverter(), OffSpecularConverter::OffSpecularConverter(), center(), contains(), IHistogram::getXmax(), IHistogram::getYmax(), TransformFromDomain::setAxisItem(), DepthProbeSimulation::setBeamParameters(), TransformFromDomain::setSphericalDetector(), and span().
|
friend |
|
private |