12#include "MantidKernel/DllConfig.h"
22using DataXY = std::pair<double, double>;
44 std::vector<DataXY>::const_iterator findIndexOfNextLargerValue(
double key)
const;
45 std::vector<DataXY>::const_iterator cbegin()
const;
46 std::vector<DataXY>::const_iterator cend()
const;
54 void addPoint(
const double &xx,
const double &yy);
57 double value(
const double &at)
const;
66 void setXUnit(
const std::string &unit);
69 void setYUnit(
const std::string &unit);
81 void printSelf(std::ostream &os)
const;
double value
The value of the point.
BuilderMethod< ArgType > m_method
const std::vector< Type > & m_data
Provide interpolation over a series of points.
void setMethod(const std::string &method)
set interpolation method
std::vector< DataXY > m_data
internal storage of x and y values
std::string getMethod() const
get interpolation method
virtual ~Interpolation()=default
bool containData() const
return false if no data has been added
std::string m_method
method used for doing the interpolation
Unit_sptr getYUnit() const
get y-axis unit
Unit_sptr getXUnit() const
get x-axis unit
Unit_sptr m_yUnit
unit of y-axis
Unit_sptr m_xUnit
unit of x-axis
MANTID_KERNEL_DLL std::ostream & operator<<(std::ostream &, CPUTimer &)
Convenience function to provide for easier debug printing.
MANTID_KERNEL_DLL std::istream & operator>>(std::istream &, Interpolation &)
Reads in parameter value.
std::shared_ptr< Unit > Unit_sptr
Shared pointer to the Unit base class.
std::pair< double, double > DataXY
Helper class which provides the Collimation Length for SANS instruments.