Mantid
Loading...
Searching...
No Matches
MultiDomainFunction.cpp
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2018 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
9#include <boost/python/class.hpp>
10#include <boost/python/register_ptr_to_python.hpp>
11
14using namespace boost::python;
15
17
19
20 register_ptr_to_python<std::shared_ptr<MultiDomainFunction>>();
21
22 class_<MultiDomainFunction, bases<CompositeFunction>, boost::noncopyable>("MultiDomainFunction",
23 "Multi-Domain Fit functions")
24 .def("nFunctions", &MultiDomainFunction::nFunctions, arg("self"), "Get the number of member functions.")
25 .def("__len__", &MultiDomainFunction::nFunctions, arg("self"), "Get the number of member functions.")
26 .def("getFunction", &MultiDomainFunction::getFunction, (arg("self"), arg("i")), "Get the i-th function.")
27 .def("__getitem__", &MultiDomainFunction::getFunction, (arg("self"), arg("i")), "Get the i-th function.")
28 .def("add", &MultiDomainFunction::addFunction, (arg("self"), arg("function")), "Add a member function.")
29 .def("setDomainIndex", &MultiDomainFunction::setDomainIndex, (arg("self"), arg("funIndex"), arg("domainIndex")),
30 "Associate a function and a domain.");
31}
#define GET_POINTER_SPECIALIZATION(TYPE)
Definition: GetPointer.h:17
void export_MultiDomainFunction()
A composite function is a function containing other functions.
virtual size_t addFunction(IFunction_sptr f)
Add a function at the back of the internal function list.
std::size_t nFunctions() const override
Number of functions.
IFunction_sptr getFunction(std::size_t i) const override
Returns the pointer to i-th function.
A composite function defined on a CompositeDomain.
void setDomainIndex(size_t funIndex, size_t domainIndex)
Associate a function and a domain.