9#include <boost/python/class.hpp>
10#include <boost/python/register_ptr_to_python.hpp>
19 register_ptr_to_python<std::shared_ptr<IPeakFunction>>();
20 class_<IPeakFunction, bases<IFunction1D>, std::shared_ptr<IPeakFunctionAdapter>, boost::noncopyable>(
21 "IPeakFunction",
"Base class for peak Fit functions")
24 (arg(
"self"), arg(
"vec_x")),
25 "Calculate the values of the function for the given x values. The "
26 "output should be stored in the out array")
31 "Returns the integral intensity error of the peak function due to uncertainties in uncorrelated fit "
34 "Changes the integral intensity of the peak function by setting its "
39 "Gets the parameter name that determines the peak width.")
41 "Gets the parameter name that determiness the peak centre.");
void export_IPeakFunction()
This is a specialization of IFunction for functions of one real argument.
virtual void setHeight(const double h)=0
Sets the parameters such that height == h.
virtual void setCentre(const double c)=0
Sets the parameters such that centre == c.
An interface to a peak function, which extend the interface of IFunctionWithLocation by adding method...
virtual void setIntensity(const double newIntensity)
Sets the integral intensity of the peak.
virtual std::string getWidthParameterName() const
Get the name of the parameter that is changed when the fwhm is changed.
std::string getCentreParameterName() const
Get name of parameter that is associated to centre.
virtual double fwhm() const =0
Returns the peak FWHM.
virtual void setFwhm(const double w)=0
Sets the parameters such that FWHM = w.
virtual double intensity() const
Returns the integral intensity of the peak.
virtual double intensityError() const
Error in the integrated intensity of the peak due to uncertainties in the values of the fit parameter...
Provides a layer class for boost::python to allow C++ virtual functions to be overridden in a Python ...
void functionLocal(double *out, const double *xValues, const size_t nData) const override
Implemented Base-class method.