16#include <boost/python/object.hpp>
19namespace PythonInterface {
28#if defined(_MSC_VER) && _MSC_VER >= 1900
32class IFunction1DAdapter :
public API::ParamFunction,
public API::IFunction1D,
public IFunctionAdapter {
53 void function1D(
double *out,
const double *xValues,
const size_t nData)
const override;
55 boost::python::object
function1D(
const boost::python::object &xvals)
const;
This is a specialization of IFunction for functions of one real argument.
Represents the Jacobian in IFitFunction::functionDeriv.
Implements the part of IFunction interface dealing with parameters.
Provides a layer class for boost::python to allow C++ virtual functions to be overridden in a Python ...
IFunction1DAdapter & operator=(const IFunction1DAdapter &)=delete
Disable assignment operator.
IFunction1DAdapter(const IFunction1DAdapter &)=delete
Disable copy operator - The PyObject must be supplied to construct the object.
void functionDeriv1D(API::Jacobian *out, const double *xValues, const size_t nData) override
Derivatives of function with respect to active parameters (C++ override)
void function1D(double *out, const double *xValues, const size_t nData) const override
Translates between the C++ signature & the Python signature called by Fit.
Provides a layer to hook into the protected functions of IFunction.
Helper class which provides the Collimation Length for SANS instruments.