From 263a1a3704b60c49f5ff9ee64b19a532aa8e0467 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de> Date: Mon, 6 Jul 2020 21:46:41 +0200 Subject: [PATCH] Fit/CMake: simplify, and regenerate bindings --- Core/CMakeLists.txt | 1 - Fit/CMakeLists.txt | 67 +- Wrap/swig/libBornAgainFit.i | 26 +- auto/Wrap/libBornAgainFit.py | 470 +++--- auto/Wrap/libBornAgainFit_wrap.cpp | 2230 ++++++++++++++-------------- 5 files changed, 1395 insertions(+), 1399 deletions(-) diff --git a/Core/CMakeLists.txt b/Core/CMakeLists.txt index fc4242e2c66..8ea2e9bbf82 100644 --- a/Core/CMakeLists.txt +++ b/Core/CMakeLists.txt @@ -25,7 +25,6 @@ set(include_dirs ${BUILD_INC_DIR} ${CMAKE_SOURCE_DIR}/Wrap ${CORE_SOURCE_DIRS} - ${BornAgainFit_INCLUDE_DIRS} ) file(GLOB source_files "*/*.cpp") diff --git a/Fit/CMakeLists.txt b/Fit/CMakeLists.txt index b5e3ec97154..7b6234b5d6c 100644 --- a/Fit/CMakeLists.txt +++ b/Fit/CMakeLists.txt @@ -2,7 +2,7 @@ # CMakeLists.txt file for building libBornAgainFit library ############################################################################ -set(library_name BornAgainFit) +set(lib BornAgainFit) # --- source and include files ------ set(FIT_SOURCE_DIRS @@ -21,10 +21,6 @@ if(BORNAGAIN_PYTHON) set(AUTO_DIR ${CMAKE_SOURCE_DIR}/auto/Wrap) file(MAKE_DIRECTORY ${AUTO_DIR}) - include_directories(${AUTO_DIR}) - - set(swig_include_dirs ${CMAKE_SOURCE_DIR}/Wrap ${FIT_SOURCE_DIRS}) - include_directories(${swig_include_dirs}) if(BORNAGAIN_GENERATE_BINDINGS) @@ -47,12 +43,10 @@ if(BORNAGAIN_PYTHON) message(FATAL_ERROR "Could NOT find SWIG input ${FNAM}") endif() endforeach() - set(swig_dependencies ${swig_dependencies} ${AUTO_DIR}/doxygen_fit.i) + list(APPEND swig_dependencies ${AUTO_DIR}/doxygen_fit.i) - set(SWIG_FLAGS "-c++;-python;-o;${AUTO_DIR}/libBornAgainFit_wrap.cpp;-outdir;${TMP_DIR}") - foreach(dir ${swig_include_dirs}) - list(APPEND SWIG_FLAGS "-I${dir}") - endforeach(dir) + set(SWIG_FLAGS "-c++;-python;-o;${AUTO_DIR}/libBornAgainFit_wrap.cpp;-outdir;${TMP_DIR}" + ";-I${CMAKE_SOURCE_DIR}") add_custom_command ( OUTPUT ${AUTO_DIR}/libBornAgainFit.py @@ -72,7 +66,7 @@ if(BORNAGAIN_PYTHON) endif(BORNAGAIN_GENERATE_BINDINGS) add_custom_target ( - ${library_name}_python + ${lib}_python COMMAND ${CMAKE_COMMAND} -E copy ${AUTO_DIR}/libBornAgainFit.py ${CMAKE_BINARY_DIR}/lib/libBornAgainFit.py COMMAND ${CMAKE_COMMAND} -E copy ${AUTO_DIR}/libBornAgainFit.py @@ -97,45 +91,46 @@ if(WIN32) endif() # --- making library --------- -add_library(${library_name} SHARED ${source_files}) -set_target_properties(${library_name} PROPERTIES PREFIX ${libprefix} SUFFIX ${libsuffix}) -set(${library_name}_LIBRARY_TYPE SHARED) +add_library(${lib} SHARED ${source_files}) +set_target_properties(${lib} PROPERTIES PREFIX ${libprefix} SUFFIX ${libsuffix}) +set(${lib}_LIBRARY_TYPE SHARED) if(BORNAGAIN_PYTHON) - add_dependencies(${library_name} ${library_name}_python) + add_dependencies(${lib} ${lib}_python) endif() # exposing library name and list of include directories outside -set(${library_name}_INCLUDE_DIRS ${include_dirs} PARENT_SCOPE) -set(${library_name}_LIBRARY ${library_name} PARENT_SCOPE) +set(${lib}_INCLUDE_DIRS ${include_dirs} PARENT_SCOPE) +set(${lib}_LIBRARY ${lib} PARENT_SCOPE) # --- dependencies --------- -target_include_directories(${library_name} PUBLIC ${RootMinimizers_INCLUDE_DIRS}) -target_include_directories(${library_name} PUBLIC ${CMAKE_SOURCE_DIR}) -target_link_libraries(${library_name} ${RootMinimizers_LIBRARY} ${Boost_LIBRARIES}) +target_include_directories(${lib} + PUBLIC ${RootMinimizers_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}) +target_link_libraries(${lib} ${RootMinimizers_LIBRARY} ${Boost_LIBRARIES}) if(BORNAGAIN_PYTHON) - include_directories(${Python_INCLUDE_DIRS} ${Python_NumPy_INCLUDE_DIRS}) - target_link_libraries(${library_name} ${Python_LIBRARIES}) + target_include_directories(${lib} + PUBLIC ${Python_INCLUDE_DIRS} ${Python_NumPy_INCLUDE_DIRS}) + target_link_libraries(${lib} ${Python_LIBRARIES}) endif() # --- custom actions # python in windows required .pyd extention for the library name if(WIN32 AND BORNAGAIN_PYTHON) ADD_CUSTOM_COMMAND( - TARGET ${library_name} + TARGET ${lib} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy - ${CMAKE_BINARY_DIR}/bin/${libprefix}${library_name}${libsuffix} - ${CMAKE_BINARY_DIR}/lib/${libprefix}${library_name}".pyd" + ${CMAKE_BINARY_DIR}/bin/${libprefix}${lib}${libsuffix} + ${CMAKE_BINARY_DIR}/lib/${libprefix}${lib}".pyd" ) # for functional tests ADD_CUSTOM_COMMAND( - TARGET ${library_name} + TARGET ${lib} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy - ${CMAKE_BINARY_DIR}/bin/${libprefix}${library_name}${libsuffix} - ${CMAKE_BINARY_DIR}/lib/${libprefix}${library_name}${libsuffix} + ${CMAKE_BINARY_DIR}/bin/${libprefix}${lib}${libsuffix} + ${CMAKE_BINARY_DIR}/lib/${libprefix}${lib}${libsuffix} ) endif() @@ -143,27 +138,29 @@ endif() if(APPLE AND BORNAGAIN_APPLE_BUNDLE) # set(link_flags "-Wl,-rpath,@loader_path/../..") set(link_flags "-Wl,-rpath,@loader_path/../../Frameworks") - set_target_properties(${library_name} PROPERTIES LINK_FLAGS ${link_flags}) + set_target_properties(${lib} PROPERTIES LINK_FLAGS ${link_flags}) endif() # ----------------------------------------------- # installation # ----------------------------------------------- -install (TARGETS ${library_name} DESTINATION ${destination_lib} COMPONENT Libraries) +install (TARGETS ${lib} DESTINATION ${destination_lib} COMPONENT Libraries) install (FILES ${fitkernel_include_files} DESTINATION ${destination_include} COMPONENT Headers) -install (FILES ${CMAKE_BINARY_DIR}/lib/lib${library_name}.py DESTINATION ${destination_lib} COMPONENT Libraries) # required by SWIG +install (FILES ${CMAKE_BINARY_DIR}/lib/lib${lib}.py + DESTINATION ${destination_lib} COMPONENT Libraries) # required by SWIG install (FILES ${include_files} DESTINATION ${destination_include} COMPONENT Headers) if(WIN32) if(BORNAGAIN_PYTHON) ADD_CUSTOM_COMMAND( - TARGET ${library_name} + TARGET ${lib} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy - ${CMAKE_BINARY_DIR}/bin/${libprefix}${library_name}${libsuffix} - ${CMAKE_BINARY_DIR}/lib/${libprefix}${library_name}".pyd" + ${CMAKE_BINARY_DIR}/bin/${libprefix}${lib}${libsuffix} + ${CMAKE_BINARY_DIR}/lib/${libprefix}${lib}".pyd" ) - install(FILES ${CMAKE_BINARY_DIR}/lib/${libprefix}${library_name}.pyd DESTINATION ${destination_lib} COMPONENT Libraries) + install(FILES ${CMAKE_BINARY_DIR}/lib/${libprefix}${lib}.pyd + DESTINATION ${destination_lib} COMPONENT Libraries) endif() endif() diff --git a/Wrap/swig/libBornAgainFit.i b/Wrap/swig/libBornAgainFit.i index ffc854e8047..9dc8fed0cdf 100644 --- a/Wrap/swig/libBornAgainFit.i +++ b/Wrap/swig/libBornAgainFit.i @@ -31,7 +31,8 @@ %include "ignores.i" %include "renameFit.i" %include "directors.i" -%include "../../auto/Wrap/doxygen_fit.i" + +%include "auto/Wrap/doxygen_fit.i" %template(vdouble1d_t) std::vector<double>; %template(vdouble2d_t) std::vector< std::vector<double> >; @@ -56,7 +57,7 @@ import_array(); #define BORNAGAIN_PYTHON #endif -%import "WinDllMacros.h" +%import "Wrap/WinDllMacros.h" %{ #include "Fit/Tools/RealLimits.h" @@ -75,16 +76,15 @@ import_array(); // The following goes verbatim from libBornAgainFit.i to libBornAgainFit_wrap.cxx. // Note that the order matters, as base classes must be included before derived classes. -%include "RealLimits.h" -%include "AttLimits.h" -%include "Parameter.h" -%include "Parameters.h" -%include "IMinimizer.h" -%include "MinimizerCatalogue.h" -%include "MinimizerFactory.h" - -%include "PyCallback.h" -%include "MinimizerResult.h" -%include "Minimizer.h" +%include "Fit/Tools/RealLimits.h" +%include "Fit/Tools/AttLimits.h" +%include "Fit/Kernel/Parameter.h" +%include "Fit/Kernel/Parameters.h" +%include "Fit/Kernel/PyCallback.h" +%include "Fit/Kernel/MinimizerResult.h" +%include "Fit/Kernel/Minimizer.h" +%include "Fit/Minimizer/IMinimizer.h" +%include "Fit/Minimizer/MinimizerCatalogue.h" +%include "Fit/Minimizer/MinimizerFactory.h" %include "extendFit.i" diff --git a/auto/Wrap/libBornAgainFit.py b/auto/Wrap/libBornAgainFit.py index 804284749c3..47fefc9f14c 100644 --- a/auto/Wrap/libBornAgainFit.py +++ b/auto/Wrap/libBornAgainFit.py @@ -1837,241 +1837,6 @@ class Parameters(object): # Register Parameters in _libBornAgainFit: _libBornAgainFit.Parameters_swigregister(Parameters) -class IMinimizer(object): - r""" - - - Pure virtual interface for all kind minimizers. - - C++ includes: IMinimizer.h - - """ - - thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") - - def __init__(self, *args, **kwargs): - raise AttributeError("No constructor defined - class is abstract") - __repr__ = _swig_repr - __swig_destroy__ = _libBornAgainFit.delete_IMinimizer - - def minimizerName(self): - r""" - minimizerName(IMinimizer self) -> std::string - virtual std::string IMinimizer::minimizerName() const =0 - - return name of the minimizer - - """ - return _libBornAgainFit.IMinimizer_minimizerName(self) - - def algorithmName(self): - r""" - algorithmName(IMinimizer self) -> std::string - virtual std::string IMinimizer::algorithmName() const =0 - - return name of the minimization algorithm - - """ - return _libBornAgainFit.IMinimizer_algorithmName(self) - - def minimize_scalar(self, arg2, arg3): - r""" - minimize_scalar(IMinimizer self, fcn_scalar_t arg2, Parameters arg3) -> MinimizerResult - Fit::MinimizerResult IMinimizer::minimize_scalar(fcn_scalar_t, Fit::Parameters) - - run minimization - - """ - return _libBornAgainFit.IMinimizer_minimize_scalar(self, arg2, arg3) - - def minimize_residual(self, arg2, arg3): - r""" - minimize_residual(IMinimizer self, fcn_residual_t arg2, Parameters arg3) -> MinimizerResult - Fit::MinimizerResult IMinimizer::minimize_residual(fcn_residual_t, Fit::Parameters) - - """ - return _libBornAgainFit.IMinimizer_minimize_residual(self, arg2, arg3) - - def clear(self): - r""" - clear(IMinimizer self) - virtual void IMinimizer::clear() - - clear resources (parameters) for consecutives minimizations - - """ - return _libBornAgainFit.IMinimizer_clear(self) - - def minValue(self): - r""" - minValue(IMinimizer self) -> double - double IMinimizer::minValue() const - - Returns minimum function value. - - """ - return _libBornAgainFit.IMinimizer_minValue(self) - - def setOptions(self, options): - r""" - setOptions(IMinimizer self, std::string const & options) - void IMinimizer::setOptions(const std::string &options) - - Sets option string to the minimizer. - - """ - return _libBornAgainFit.IMinimizer_setOptions(self, options) - -# Register IMinimizer in _libBornAgainFit: -_libBornAgainFit.IMinimizer_swigregister(IMinimizer) - -class MinimizerCatalogue(object): - r""" - - - Hard-coded information about all minimizers available. - - C++ includes: MinimizerCatalogue.h - - """ - - thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") - __repr__ = _swig_repr - - def __init__(self): - r""" - __init__(MinimizerCatalogue self) -> MinimizerCatalogue - MinimizerCatalogue::MinimizerCatalogue() - - """ - _libBornAgainFit.MinimizerCatalogue_swiginit(self, _libBornAgainFit.new_MinimizerCatalogue()) - - def toString(self): - r""" - toString(MinimizerCatalogue self) -> std::string - std::string MinimizerCatalogue::toString() const - - Returns multiline string representing catalogue content. - - """ - return _libBornAgainFit.MinimizerCatalogue_toString(self) - - def minimizerNames(self): - r""" - minimizerNames(MinimizerCatalogue self) -> vector_string_t - std::vector< std::string > MinimizerCatalogue::minimizerNames() const - - """ - return _libBornAgainFit.MinimizerCatalogue_minimizerNames(self) - - def algorithmNames(self, minimizerName): - r""" - algorithmNames(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t - std::vector< std::string > MinimizerCatalogue::algorithmNames(const std::string &minimizerName) const - - Returns list of algorithms defined for the minimizer with a given name. - - """ - return _libBornAgainFit.MinimizerCatalogue_algorithmNames(self, minimizerName) - - def algorithmDescriptions(self, minimizerName): - r""" - algorithmDescriptions(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t - std::vector< std::string > MinimizerCatalogue::algorithmDescriptions(const std::string &minimizerName) const - - Returns list of algorithm's descriptions for the minimizer with a given name . - - """ - return _libBornAgainFit.MinimizerCatalogue_algorithmDescriptions(self, minimizerName) - - def minimizerInfo(self, minimizerName): - r""" - minimizerInfo(MinimizerCatalogue self, std::string const & minimizerName) -> MinimizerInfo const & - const MinimizerInfo & MinimizerCatalogue::minimizerInfo(const std::string &minimizerName) const - - Returns info for minimizer with given name. - - """ - return _libBornAgainFit.MinimizerCatalogue_minimizerInfo(self, minimizerName) - __swig_destroy__ = _libBornAgainFit.delete_MinimizerCatalogue - -# Register MinimizerCatalogue in _libBornAgainFit: -_libBornAgainFit.MinimizerCatalogue_swigregister(MinimizerCatalogue) - -class MinimizerFactory(object): - r""" - - - Factory to create minimizers. - - C++ includes: MinimizerFactory.h - - """ - - thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") - __repr__ = _swig_repr - - @staticmethod - def createMinimizer(*args): - r"""createMinimizer(std::string const & minimizerName, std::string const & algorithmType="", std::string const & optionString="") -> IMinimizer""" - return _libBornAgainFit.MinimizerFactory_createMinimizer(*args) - - @staticmethod - def printCatalogue(): - r"""printCatalogue()""" - return _libBornAgainFit.MinimizerFactory_printCatalogue() - - @staticmethod - def catalogueToString(): - r"""catalogueToString() -> std::string""" - return _libBornAgainFit.MinimizerFactory_catalogueToString() - - @staticmethod - def catalogueDetailsToString(): - r"""catalogueDetailsToString() -> std::string""" - return _libBornAgainFit.MinimizerFactory_catalogueDetailsToString() - - @staticmethod - def catalogue(): - r"""catalogue() -> MinimizerCatalogue""" - return _libBornAgainFit.MinimizerFactory_catalogue() - - def __init__(self): - r""" - __init__(MinimizerFactory self) -> MinimizerFactory - - - Factory to create minimizers. - - C++ includes: MinimizerFactory.h - - """ - _libBornAgainFit.MinimizerFactory_swiginit(self, _libBornAgainFit.new_MinimizerFactory()) - __swig_destroy__ = _libBornAgainFit.delete_MinimizerFactory - -# Register MinimizerFactory in _libBornAgainFit: -_libBornAgainFit.MinimizerFactory_swigregister(MinimizerFactory) - -def MinimizerFactory_createMinimizer(*args): - r"""MinimizerFactory_createMinimizer(std::string const & minimizerName, std::string const & algorithmType="", std::string const & optionString="") -> IMinimizer""" - return _libBornAgainFit.MinimizerFactory_createMinimizer(*args) - -def MinimizerFactory_printCatalogue(): - r"""MinimizerFactory_printCatalogue()""" - return _libBornAgainFit.MinimizerFactory_printCatalogue() - -def MinimizerFactory_catalogueToString(): - r"""MinimizerFactory_catalogueToString() -> std::string""" - return _libBornAgainFit.MinimizerFactory_catalogueToString() - -def MinimizerFactory_catalogueDetailsToString(): - r"""MinimizerFactory_catalogueDetailsToString() -> std::string""" - return _libBornAgainFit.MinimizerFactory_catalogueDetailsToString() - -def MinimizerFactory_catalogue(): - r"""MinimizerFactory_catalogue() -> MinimizerCatalogue""" - return _libBornAgainFit.MinimizerFactory_catalogue() - class PyCallback(object): r""" @@ -2316,6 +2081,241 @@ class Minimizer(object): # Register Minimizer in _libBornAgainFit: _libBornAgainFit.Minimizer_swigregister(Minimizer) +class IMinimizer(object): + r""" + + + Pure virtual interface for all kind minimizers. + + C++ includes: IMinimizer.h + + """ + + thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") + + def __init__(self, *args, **kwargs): + raise AttributeError("No constructor defined - class is abstract") + __repr__ = _swig_repr + __swig_destroy__ = _libBornAgainFit.delete_IMinimizer + + def minimizerName(self): + r""" + minimizerName(IMinimizer self) -> std::string + virtual std::string IMinimizer::minimizerName() const =0 + + return name of the minimizer + + """ + return _libBornAgainFit.IMinimizer_minimizerName(self) + + def algorithmName(self): + r""" + algorithmName(IMinimizer self) -> std::string + virtual std::string IMinimizer::algorithmName() const =0 + + return name of the minimization algorithm + + """ + return _libBornAgainFit.IMinimizer_algorithmName(self) + + def minimize_scalar(self, arg2, arg3): + r""" + minimize_scalar(IMinimizer self, fcn_scalar_t arg2, Parameters arg3) -> MinimizerResult + Fit::MinimizerResult IMinimizer::minimize_scalar(fcn_scalar_t, Fit::Parameters) + + run minimization + + """ + return _libBornAgainFit.IMinimizer_minimize_scalar(self, arg2, arg3) + + def minimize_residual(self, arg2, arg3): + r""" + minimize_residual(IMinimizer self, fcn_residual_t arg2, Parameters arg3) -> MinimizerResult + Fit::MinimizerResult IMinimizer::minimize_residual(fcn_residual_t, Fit::Parameters) + + """ + return _libBornAgainFit.IMinimizer_minimize_residual(self, arg2, arg3) + + def clear(self): + r""" + clear(IMinimizer self) + virtual void IMinimizer::clear() + + clear resources (parameters) for consecutives minimizations + + """ + return _libBornAgainFit.IMinimizer_clear(self) + + def minValue(self): + r""" + minValue(IMinimizer self) -> double + double IMinimizer::minValue() const + + Returns minimum function value. + + """ + return _libBornAgainFit.IMinimizer_minValue(self) + + def setOptions(self, options): + r""" + setOptions(IMinimizer self, std::string const & options) + void IMinimizer::setOptions(const std::string &options) + + Sets option string to the minimizer. + + """ + return _libBornAgainFit.IMinimizer_setOptions(self, options) + +# Register IMinimizer in _libBornAgainFit: +_libBornAgainFit.IMinimizer_swigregister(IMinimizer) + +class MinimizerCatalogue(object): + r""" + + + Hard-coded information about all minimizers available. + + C++ includes: MinimizerCatalogue.h + + """ + + thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") + __repr__ = _swig_repr + + def __init__(self): + r""" + __init__(MinimizerCatalogue self) -> MinimizerCatalogue + MinimizerCatalogue::MinimizerCatalogue() + + """ + _libBornAgainFit.MinimizerCatalogue_swiginit(self, _libBornAgainFit.new_MinimizerCatalogue()) + + def toString(self): + r""" + toString(MinimizerCatalogue self) -> std::string + std::string MinimizerCatalogue::toString() const + + Returns multiline string representing catalogue content. + + """ + return _libBornAgainFit.MinimizerCatalogue_toString(self) + + def minimizerNames(self): + r""" + minimizerNames(MinimizerCatalogue self) -> vector_string_t + std::vector< std::string > MinimizerCatalogue::minimizerNames() const + + """ + return _libBornAgainFit.MinimizerCatalogue_minimizerNames(self) + + def algorithmNames(self, minimizerName): + r""" + algorithmNames(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t + std::vector< std::string > MinimizerCatalogue::algorithmNames(const std::string &minimizerName) const + + Returns list of algorithms defined for the minimizer with a given name. + + """ + return _libBornAgainFit.MinimizerCatalogue_algorithmNames(self, minimizerName) + + def algorithmDescriptions(self, minimizerName): + r""" + algorithmDescriptions(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t + std::vector< std::string > MinimizerCatalogue::algorithmDescriptions(const std::string &minimizerName) const + + Returns list of algorithm's descriptions for the minimizer with a given name . + + """ + return _libBornAgainFit.MinimizerCatalogue_algorithmDescriptions(self, minimizerName) + + def minimizerInfo(self, minimizerName): + r""" + minimizerInfo(MinimizerCatalogue self, std::string const & minimizerName) -> MinimizerInfo const & + const MinimizerInfo & MinimizerCatalogue::minimizerInfo(const std::string &minimizerName) const + + Returns info for minimizer with given name. + + """ + return _libBornAgainFit.MinimizerCatalogue_minimizerInfo(self, minimizerName) + __swig_destroy__ = _libBornAgainFit.delete_MinimizerCatalogue + +# Register MinimizerCatalogue in _libBornAgainFit: +_libBornAgainFit.MinimizerCatalogue_swigregister(MinimizerCatalogue) + +class MinimizerFactory(object): + r""" + + + Factory to create minimizers. + + C++ includes: MinimizerFactory.h + + """ + + thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") + __repr__ = _swig_repr + + @staticmethod + def createMinimizer(*args): + r"""createMinimizer(std::string const & minimizerName, std::string const & algorithmType="", std::string const & optionString="") -> IMinimizer""" + return _libBornAgainFit.MinimizerFactory_createMinimizer(*args) + + @staticmethod + def printCatalogue(): + r"""printCatalogue()""" + return _libBornAgainFit.MinimizerFactory_printCatalogue() + + @staticmethod + def catalogueToString(): + r"""catalogueToString() -> std::string""" + return _libBornAgainFit.MinimizerFactory_catalogueToString() + + @staticmethod + def catalogueDetailsToString(): + r"""catalogueDetailsToString() -> std::string""" + return _libBornAgainFit.MinimizerFactory_catalogueDetailsToString() + + @staticmethod + def catalogue(): + r"""catalogue() -> MinimizerCatalogue""" + return _libBornAgainFit.MinimizerFactory_catalogue() + + def __init__(self): + r""" + __init__(MinimizerFactory self) -> MinimizerFactory + + + Factory to create minimizers. + + C++ includes: MinimizerFactory.h + + """ + _libBornAgainFit.MinimizerFactory_swiginit(self, _libBornAgainFit.new_MinimizerFactory()) + __swig_destroy__ = _libBornAgainFit.delete_MinimizerFactory + +# Register MinimizerFactory in _libBornAgainFit: +_libBornAgainFit.MinimizerFactory_swigregister(MinimizerFactory) + +def MinimizerFactory_createMinimizer(*args): + r"""MinimizerFactory_createMinimizer(std::string const & minimizerName, std::string const & algorithmType="", std::string const & optionString="") -> IMinimizer""" + return _libBornAgainFit.MinimizerFactory_createMinimizer(*args) + +def MinimizerFactory_printCatalogue(): + r"""MinimizerFactory_printCatalogue()""" + return _libBornAgainFit.MinimizerFactory_printCatalogue() + +def MinimizerFactory_catalogueToString(): + r"""MinimizerFactory_catalogueToString() -> std::string""" + return _libBornAgainFit.MinimizerFactory_catalogueToString() + +def MinimizerFactory_catalogueDetailsToString(): + r"""MinimizerFactory_catalogueDetailsToString() -> std::string""" + return _libBornAgainFit.MinimizerFactory_catalogueDetailsToString() + +def MinimizerFactory_catalogue(): + r"""MinimizerFactory_catalogue() -> MinimizerCatalogue""" + return _libBornAgainFit.MinimizerFactory_catalogue() + class ParametersIterator(object): diff --git a/auto/Wrap/libBornAgainFit_wrap.cpp b/auto/Wrap/libBornAgainFit_wrap.cpp index b271c28638a..9355e2dffbc 100644 --- a/auto/Wrap/libBornAgainFit_wrap.cpp +++ b/auto/Wrap/libBornAgainFit_wrap.cpp @@ -20076,197 +20076,258 @@ SWIGINTERN PyObject *Parameters_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObjec return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_delete_IMinimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_new_PyCallback__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; + PyObject *arg1 = (PyObject *) 0 ; + PyCallback::CallbackType arg2 ; + int val2 ; + int ecode2 = 0 ; + PyCallback *result = 0 ; - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, SWIG_POINTER_DISOWN | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IMinimizer" "', argument " "1"" of type '" "IMinimizer *""'"); + if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; + arg1 = swig_obj[0]; + ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_PyCallback" "', argument " "2"" of type '" "PyCallback::CallbackType""'"); + } + arg2 = static_cast< PyCallback::CallbackType >(val2); + if ( arg1 != Py_None ) { + /* subclassed */ + result = (PyCallback *)new SwigDirector_PyCallback(arg1,arg2); + } else { + result = (PyCallback *)new PyCallback(arg2); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - delete arg1; - resultobj = SWIG_Py_Void(); + + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PyCallback, SWIG_POINTER_NEW | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_minimizerName(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_new_PyCallback__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; + PyObject *arg1 = (PyObject *) 0 ; + PyCallback *result = 0 ; + + if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; + arg1 = swig_obj[0]; + if ( arg1 != Py_None ) { + /* subclassed */ + result = (PyCallback *)new SwigDirector_PyCallback(arg1); + } else { + result = (PyCallback *)new PyCallback(); + } + + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PyCallback, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_new_PyCallback(PyObject *self, PyObject *args) { + Py_ssize_t argc; + PyObject *argv[3] = { + 0 + }; + + if (!(argc = SWIG_Python_UnpackTuple(args, "new_PyCallback", 0, 2, argv))) SWIG_fail; + --argc; + if (argc == 1) { + int _v; + _v = (argv[0] != 0); + if (_v) { + return _wrap_new_PyCallback__SWIG_1(self, argc, argv); + } + } + if (argc == 2) { + int _v; + _v = (argv[0] != 0); + if (_v) { + { + int res = SWIG_AsVal_int(argv[1], NULL); + _v = SWIG_CheckState(res); + } + if (_v) { + return _wrap_new_PyCallback__SWIG_0(self, argc, argv); + } + } + } + +fail: + SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_PyCallback'.\n" + " Possible C/C++ prototypes are:\n" + " PyCallback::PyCallback(PyCallback::CallbackType)\n" + " PyCallback::PyCallback(PyObject *)\n"); + return 0; +} + + +SWIGINTERN PyObject *_wrap_delete_PyCallback(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + PyCallback *arg1 = (PyCallback *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - std::string result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, SWIG_POINTER_DISOWN | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimizerName" "', argument " "1"" of type '" "IMinimizer const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PyCallback" "', argument " "1"" of type '" "PyCallback *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - result = ((IMinimizer const *)arg1)->minimizerName(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + arg1 = reinterpret_cast< PyCallback * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_algorithmName(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_PyCallback_callback_type(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; + PyCallback *arg1 = (PyCallback *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - std::string result; + PyCallback::CallbackType result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_algorithmName" "', argument " "1"" of type '" "IMinimizer const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_callback_type" "', argument " "1"" of type '" "PyCallback const *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - result = ((IMinimizer const *)arg1)->algorithmName(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + arg1 = reinterpret_cast< PyCallback * >(argp1); + result = (PyCallback::CallbackType)((PyCallback const *)arg1)->callback_type(); + resultobj = SWIG_From_int(static_cast< int >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_minimize_scalar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_PyCallback_call_scalar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; - fcn_scalar_t arg2 ; - Fit::Parameters arg3 ; + PyCallback *arg1 = (PyCallback *) 0 ; + Fit::Parameters arg2 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 ; int res2 = 0 ; - void *argp3 ; - int res3 = 0 ; - PyObject *swig_obj[3] ; - Fit::MinimizerResult result; + PyObject *swig_obj[2] ; + Swig::Director *director = 0; + bool upcall = false; + double result; - if (!SWIG_Python_UnpackTuple(args, "IMinimizer_minimize_scalar", 3, 3, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "PyCallback_call_scalar", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimize_scalar" "', argument " "1"" of type '" "IMinimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_call_scalar" "', argument " "1"" of type '" "PyCallback *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); + arg1 = reinterpret_cast< PyCallback * >(argp1); { - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_fcn_scalar_t, 0 | 0); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_minimize_scalar" "', argument " "2"" of type '" "fcn_scalar_t""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PyCallback_call_scalar" "', argument " "2"" of type '" "Fit::Parameters""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_scalar" "', argument " "2"" of type '" "fcn_scalar_t""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PyCallback_call_scalar" "', argument " "2"" of type '" "Fit::Parameters""'"); } else { - fcn_scalar_t * temp = reinterpret_cast< fcn_scalar_t * >(argp2); + Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp2); arg2 = *temp; if (SWIG_IsNewObj(res2)) delete temp; } } - { - res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); - if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "IMinimizer_minimize_scalar" "', argument " "3"" of type '" "Fit::Parameters""'"); - } - if (!argp3) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_scalar" "', argument " "3"" of type '" "Fit::Parameters""'"); + director = SWIG_DIRECTOR_CAST(arg1); + upcall = (director && (director->swig_get_self()==swig_obj[0])); + try { + if (upcall) { + result = (double)(arg1)->PyCallback::call_scalar(arg2); } else { - Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp3); - arg3 = *temp; - if (SWIG_IsNewObj(res3)) delete temp; + result = (double)(arg1)->call_scalar(arg2); } + } catch (Swig::DirectorException&) { + SWIG_fail; } - result = (arg1)->minimize_scalar(arg2,arg3); - resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); + resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_minimize_residual(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_PyCallback_call_residuals(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; - fcn_residual_t arg2 ; - Fit::Parameters arg3 ; + PyCallback *arg1 = (PyCallback *) 0 ; + Fit::Parameters arg2 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 ; int res2 = 0 ; - void *argp3 ; - int res3 = 0 ; - PyObject *swig_obj[3] ; - Fit::MinimizerResult result; + PyObject *swig_obj[2] ; + Swig::Director *director = 0; + bool upcall = false; + std::vector< double,std::allocator< double > > result; - if (!SWIG_Python_UnpackTuple(args, "IMinimizer_minimize_residual", 3, 3, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "PyCallback_call_residuals", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimize_residual" "', argument " "1"" of type '" "IMinimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_call_residuals" "', argument " "1"" of type '" "PyCallback *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); + arg1 = reinterpret_cast< PyCallback * >(argp1); { - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_fcn_residual_t, 0 | 0); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_minimize_residual" "', argument " "2"" of type '" "fcn_residual_t""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PyCallback_call_residuals" "', argument " "2"" of type '" "Fit::Parameters""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_residual" "', argument " "2"" of type '" "fcn_residual_t""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PyCallback_call_residuals" "', argument " "2"" of type '" "Fit::Parameters""'"); } else { - fcn_residual_t * temp = reinterpret_cast< fcn_residual_t * >(argp2); + Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp2); arg2 = *temp; if (SWIG_IsNewObj(res2)) delete temp; } } - { - res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); - if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "IMinimizer_minimize_residual" "', argument " "3"" of type '" "Fit::Parameters""'"); - } - if (!argp3) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_residual" "', argument " "3"" of type '" "Fit::Parameters""'"); + director = SWIG_DIRECTOR_CAST(arg1); + upcall = (director && (director->swig_get_self()==swig_obj[0])); + try { + if (upcall) { + result = (arg1)->PyCallback::call_residuals(arg2); } else { - Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp3); - arg3 = *temp; - if (SWIG_IsNewObj(res3)) delete temp; + result = (arg1)->call_residuals(arg2); } + } catch (Swig::DirectorException&) { + SWIG_fail; } - result = (arg1)->minimize_residual(arg2,arg3); - resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); + resultobj = swig::from(static_cast< std::vector< double,std::allocator< double > > >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_clear(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_disown_PyCallback(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; + PyCallback *arg1 = (PyCallback *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_clear" "', argument " "1"" of type '" "IMinimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "disown_PyCallback" "', argument " "1"" of type '" "PyCallback *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - (arg1)->clear(); + arg1 = reinterpret_cast< PyCallback * >(argp1); + { + Swig::Director *director = SWIG_DIRECTOR_CAST(arg1); + if (director) director->swig_disown(); + } + resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -20274,197 +20335,188 @@ fail: } -SWIGINTERN PyObject *_wrap_IMinimizer_minValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *PyCallback_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *obj; + if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; + SWIG_TypeNewClientData(SWIGTYPE_p_PyCallback, SWIG_NewClientData(obj)); + return SWIG_Py_Void(); +} + +SWIGINTERN PyObject *PyCallback_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + return SWIG_Python_InitShadowInstance(args); +} + +SWIGINTERN PyObject *_wrap_new_MinimizerResult(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - double result; + Fit::MinimizerResult *result = 0 ; - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minValue" "', argument " "1"" of type '" "IMinimizer const *""'"); - } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - result = (double)((IMinimizer const *)arg1)->minValue(); - resultobj = SWIG_From_double(static_cast< double >(result)); + if (!SWIG_Python_UnpackTuple(args, "new_MinimizerResult", 0, 0, 0)) SWIG_fail; + result = (Fit::MinimizerResult *)new Fit::MinimizerResult(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_NEW | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_IMinimizer_setOptions(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setParameters(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IMinimizer *arg1 = (IMinimizer *) 0 ; - std::string *arg2 = 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + Fit::Parameters *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; - int res2 = SWIG_OLDOBJ ; + void *argp2 = 0 ; + int res2 = 0 ; PyObject *swig_obj[2] ; - if (!SWIG_Python_UnpackTuple(args, "IMinimizer_setOptions", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setParameters", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_setOptions" "', argument " "1"" of type '" "IMinimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setParameters" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); } - arg1 = reinterpret_cast< IMinimizer * >(argp1); - { - std::string *ptr = (std::string *)0; - res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_setOptions" "', argument " "2"" of type '" "std::string const &""'"); - } - if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_setOptions" "', argument " "2"" of type '" "std::string const &""'"); - } - arg2 = ptr; + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerResult_setParameters" "', argument " "2"" of type '" "Fit::Parameters const &""'"); } - (arg1)->setOptions((std::string const &)*arg2); + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerResult_setParameters" "', argument " "2"" of type '" "Fit::Parameters const &""'"); + } + arg2 = reinterpret_cast< Fit::Parameters * >(argp2); + (arg1)->setParameters((Fit::Parameters const &)*arg2); resultobj = SWIG_Py_Void(); - if (SWIG_IsNewObj(res2)) delete arg2; return resultobj; fail: - if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *IMinimizer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *obj; - if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_IMinimizer, SWIG_NewClientData(obj)); - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject *_wrap_new_MinimizerCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_parameters(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *result = 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + Fit::Parameters result; - if (!SWIG_Python_UnpackTuple(args, "new_MinimizerCatalogue", 0, 0, 0)) SWIG_fail; - result = (MinimizerCatalogue *)new MinimizerCatalogue(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerCatalogue, SWIG_POINTER_NEW | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_parameters" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); + } + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + result = ((Fit::MinimizerResult const *)arg1)->parameters(); + resultobj = SWIG_NewPointerObj((new Fit::Parameters(static_cast< const Fit::Parameters& >(result))), SWIGTYPE_p_Fit__Parameters, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerCatalogue_toString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setMinValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + double arg2 ; void *argp1 = 0 ; int res1 = 0 ; - PyObject *swig_obj[1] ; - std::string result; + double val2 ; + int ecode2 = 0 ; + PyObject *swig_obj[2] ; - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setMinValue", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_toString" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setMinValue" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); - result = ((MinimizerCatalogue const *)arg1)->toString(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setMinValue" "', argument " "2"" of type '" "double""'"); + } + arg2 = static_cast< double >(val2); + (arg1)->setMinValue(arg2); + resultobj = SWIG_Py_Void(); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerCatalogue_minimizerNames(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_minValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - std::vector< std::string,std::allocator< std::string > > result; + double result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_minimizerNames" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_minValue" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); - result = ((MinimizerCatalogue const *)arg1)->minimizerNames(); - resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + result = (double)((Fit::MinimizerResult const *)arg1)->minValue(); + resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerCatalogue_algorithmNames(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_toString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; - std::string *arg2 = 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - int res2 = SWIG_OLDOBJ ; - PyObject *swig_obj[2] ; - std::vector< std::string,std::allocator< std::string > > result; + PyObject *swig_obj[1] ; + std::string result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_algorithmNames", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); - } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); - { - std::string *ptr = (std::string *)0; - res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "2"" of type '" "std::string const &""'"); - } - if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "2"" of type '" "std::string const &""'"); - } - arg2 = ptr; + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_toString" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); } - result = ((MinimizerCatalogue const *)arg1)->algorithmNames((std::string const &)*arg2); - resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); - if (SWIG_IsNewObj(res2)) delete arg2; + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + result = ((Fit::MinimizerResult const *)arg1)->toString(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); return resultobj; fail: - if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerCatalogue_algorithmDescriptions(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setReport(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; std::string *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; int res2 = SWIG_OLDOBJ ; PyObject *swig_obj[2] ; - std::vector< std::string,std::allocator< std::string > > result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_algorithmDescriptions", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setReport", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setReport" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); { std::string *ptr = (std::string *)0; res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerResult_setReport" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerResult_setReport" "', argument " "2"" of type '" "std::string const &""'"); } arg2 = ptr; } - result = ((MinimizerCatalogue const *)arg1)->algorithmDescriptions((std::string const &)*arg2); - resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); + (arg1)->setReport((std::string const &)*arg2); + resultobj = SWIG_Py_Void(); if (SWIG_IsNewObj(res2)) delete arg2; return resultobj; fail: @@ -20473,58 +20525,57 @@ fail: } -SWIGINTERN PyObject *_wrap_MinimizerCatalogue_minimizerInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setDuration(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; - std::string *arg2 = 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + double arg2 ; void *argp1 = 0 ; int res1 = 0 ; - int res2 = SWIG_OLDOBJ ; + double val2 ; + int ecode2 = 0 ; PyObject *swig_obj[2] ; - MinimizerInfo *result = 0 ; - if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_minimizerInfo", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setDuration", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); - } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); - { - std::string *ptr = (std::string *)0; - res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "2"" of type '" "std::string const &""'"); - } - if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "2"" of type '" "std::string const &""'"); - } - arg2 = ptr; + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setDuration" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); } - result = (MinimizerInfo *) &((MinimizerCatalogue const *)arg1)->minimizerInfo((std::string const &)*arg2); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerInfo, 0 | 0 ); - if (SWIG_IsNewObj(res2)) delete arg2; + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setDuration" "', argument " "2"" of type '" "double""'"); + } + arg2 = static_cast< double >(val2); + (arg1)->setDuration(arg2); + resultobj = SWIG_Py_Void(); return resultobj; fail: - if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *_wrap_delete_MinimizerCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setNumberOfCalls(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + int arg2 ; void *argp1 = 0 ; int res1 = 0 ; - PyObject *swig_obj[1] ; + int val2 ; + int ecode2 = 0 ; + PyObject *swig_obj[2] ; - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setNumberOfCalls", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerCatalogue" "', argument " "1"" of type '" "MinimizerCatalogue *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setNumberOfCalls" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); } - arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); - delete arg1; + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setNumberOfCalls" "', argument " "2"" of type '" "int""'"); + } + arg2 = static_cast< int >(val2); + (arg1)->setNumberOfCalls(arg2); resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -20532,47 +20583,129 @@ fail: } -SWIGINTERN PyObject *MinimizerCatalogue_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *obj; - if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_MinimizerCatalogue, SWIG_NewClientData(obj)); - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject *MinimizerCatalogue_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerResult_setNumberOfGradientCalls(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + int arg2 ; + void *argp1 = 0 ; + int res1 = 0 ; + int val2 ; + int ecode2 = 0 ; + PyObject *swig_obj[2] ; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setNumberOfGradientCalls", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setNumberOfGradientCalls" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + } + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); + if (!SWIG_IsOK(ecode2)) { + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setNumberOfGradientCalls" "', argument " "2"" of type '" "int""'"); + } + arg2 = static_cast< int >(val2); + (arg1)->setNumberOfGradientCalls(arg2); + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_delete_MinimizerResult(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerResult" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + } + arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *MinimizerResult_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *obj; + if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; + SWIG_TypeNewClientData(SWIGTYPE_p_Fit__MinimizerResult, SWIG_NewClientData(obj)); + return SWIG_Py_Void(); +} + +SWIGINTERN PyObject *MinimizerResult_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_new_Minimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - std::string *arg1 = 0 ; + Fit::Minimizer *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "new_Minimizer", 0, 0, 0)) SWIG_fail; + result = (Fit::Minimizer *)new Fit::Minimizer(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Fit__Minimizer, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_delete_Minimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Minimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + } + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { + PyObject *resultobj = 0; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; std::string *arg2 = 0 ; std::string *arg3 = 0 ; - int res1 = SWIG_OLDOBJ ; + std::string *arg4 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; int res2 = SWIG_OLDOBJ ; int res3 = SWIG_OLDOBJ ; - IMinimizer *result = 0 ; + int res4 = SWIG_OLDOBJ ; - if ((nobjs < 3) || (nobjs > 3)) SWIG_fail; - { - std::string *ptr = (std::string *)0; - res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); - } - if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); - } - arg1 = ptr; + if ((nobjs < 4) || (nobjs > 4)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); } + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); { std::string *ptr = (std::string *)0; res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } arg2 = ptr; } @@ -20580,232 +20713,144 @@ SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_0(PyObject *SW std::string *ptr = (std::string *)0; res3 = SWIG_AsPtr_std_string(swig_obj[2], &ptr); if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MinimizerFactory_createMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } arg3 = ptr; } - result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1,(std::string const &)*arg2,(std::string const &)*arg3); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); - if (SWIG_IsNewObj(res1)) delete arg1; + { + std::string *ptr = (std::string *)0; + res4 = SWIG_AsPtr_std_string(swig_obj[3], &ptr); + if (!SWIG_IsOK(res4)) { + SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Minimizer_setMinimizer" "', argument " "4"" of type '" "std::string const &""'"); + } + if (!ptr) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "4"" of type '" "std::string const &""'"); + } + arg4 = ptr; + } + (arg1)->setMinimizer((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4); + resultobj = SWIG_Py_Void(); if (SWIG_IsNewObj(res2)) delete arg2; if (SWIG_IsNewObj(res3)) delete arg3; + if (SWIG_IsNewObj(res4)) delete arg4; return resultobj; fail: - if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; if (SWIG_IsNewObj(res3)) delete arg3; + if (SWIG_IsNewObj(res4)) delete arg4; return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - std::string *arg1 = 0 ; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; std::string *arg2 = 0 ; - int res1 = SWIG_OLDOBJ ; + std::string *arg3 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; int res2 = SWIG_OLDOBJ ; - IMinimizer *result = 0 ; + int res3 = SWIG_OLDOBJ ; - if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; + if ((nobjs < 3) || (nobjs > 3)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + } + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); { std::string *ptr = (std::string *)0; - res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } - arg1 = ptr; + arg2 = ptr; } { std::string *ptr = (std::string *)0; - res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + res3 = SWIG_AsPtr_std_string(swig_obj[2], &ptr); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } - arg2 = ptr; + arg3 = ptr; } - result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1,(std::string const &)*arg2); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); - if (SWIG_IsNewObj(res1)) delete arg1; + (arg1)->setMinimizer((std::string const &)*arg2,(std::string const &)*arg3); + resultobj = SWIG_Py_Void(); if (SWIG_IsNewObj(res2)) delete arg2; + if (SWIG_IsNewObj(res3)) delete arg3; return resultobj; fail: - if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; + if (SWIG_IsNewObj(res3)) delete arg3; return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_2(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_2(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - std::string *arg1 = 0 ; - int res1 = SWIG_OLDOBJ ; - IMinimizer *result = 0 ; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + std::string *arg2 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + int res2 = SWIG_OLDOBJ ; - if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; + if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + } + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); { std::string *ptr = (std::string *)0; - res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } - arg1 = ptr; + arg2 = ptr; } - result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); - if (SWIG_IsNewObj(res1)) delete arg1; + (arg1)->setMinimizer((std::string const &)*arg2); + resultobj = SWIG_Py_Void(); + if (SWIG_IsNewObj(res2)) delete arg2; return resultobj; fail: - if (SWIG_IsNewObj(res1)) delete arg1; + if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer(PyObject *self, PyObject *args) { - Py_ssize_t argc; - PyObject *argv[4] = { - 0 - }; +SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_3(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { + PyObject *resultobj = 0; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + IMinimizer *arg2 = (IMinimizer *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 = 0 ; + int res2 = 0 ; - if (!(argc = SWIG_Python_UnpackTuple(args, "MinimizerFactory_createMinimizer", 0, 3, argv))) SWIG_fail; - --argc; - if (argc == 1) { - int _v; - int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_MinimizerFactory_createMinimizer__SWIG_2(self, argc, argv); - } + if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); } - if (argc == 2) { - int _v; - int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_MinimizerFactory_createMinimizer__SWIG_1(self, argc, argv); - } - } - } - if (argc == 3) { - int _v; - int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - int res = SWIG_AsPtr_std_string(argv[2], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_MinimizerFactory_createMinimizer__SWIG_0(self, argc, argv); - } - } - } - } - -fail: - SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'MinimizerFactory_createMinimizer'.\n" - " Possible C/C++ prototypes are:\n" - " MinimizerFactory::createMinimizer(std::string const &,std::string const &,std::string const &)\n" - " MinimizerFactory::createMinimizer(std::string const &,std::string const &)\n" - " MinimizerFactory::createMinimizer(std::string const &)\n"); - return 0; -} - - -SWIGINTERN PyObject *_wrap_MinimizerFactory_printCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - - if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_printCatalogue", 0, 0, 0)) SWIG_fail; - MinimizerFactory::printCatalogue(); - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogueToString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - std::string result; - - if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogueToString", 0, 0, 0)) SWIG_fail; - result = MinimizerFactory::catalogueToString(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogueDetailsToString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - std::string result; - - if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogueDetailsToString", 0, 0, 0)) SWIG_fail; - result = MinimizerFactory::catalogueDetailsToString(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - MinimizerCatalogue *result = 0 ; - - if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogue", 0, 0, 0)) SWIG_fail; - result = (MinimizerCatalogue *) &MinimizerFactory::catalogue(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_new_MinimizerFactory(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - MinimizerFactory *result = 0 ; - - if (!SWIG_Python_UnpackTuple(args, "new_MinimizerFactory", 0, 0, 0)) SWIG_fail; - result = (MinimizerFactory *)new MinimizerFactory(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerFactory, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_delete_MinimizerFactory(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - MinimizerFactory *arg1 = (MinimizerFactory *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerFactory, SWIG_POINTER_DISOWN | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerFactory" "', argument " "1"" of type '" "MinimizerFactory *""'"); + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< MinimizerFactory * >(argp1); - delete arg1; + arg2 = reinterpret_cast< IMinimizer * >(argp2); + (arg1)->setMinimizer(arg2); resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -20813,377 +20858,161 @@ fail: } -SWIGINTERN PyObject *MinimizerFactory_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *obj; - if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_MinimizerFactory, SWIG_NewClientData(obj)); - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject *MinimizerFactory_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - return SWIG_Python_InitShadowInstance(args); -} - -SWIGINTERN PyObject *_wrap_new_PyCallback__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { - PyObject *resultobj = 0; - PyObject *arg1 = (PyObject *) 0 ; - PyCallback::CallbackType arg2 ; - int val2 ; - int ecode2 = 0 ; - PyCallback *result = 0 ; - - if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; - arg1 = swig_obj[0]; - ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_PyCallback" "', argument " "2"" of type '" "PyCallback::CallbackType""'"); - } - arg2 = static_cast< PyCallback::CallbackType >(val2); - if ( arg1 != Py_None ) { - /* subclassed */ - result = (PyCallback *)new SwigDirector_PyCallback(arg1,arg2); - } else { - result = (PyCallback *)new PyCallback(arg2); - } - - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PyCallback, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_new_PyCallback__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { - PyObject *resultobj = 0; - PyObject *arg1 = (PyObject *) 0 ; - PyCallback *result = 0 ; - - if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; - arg1 = swig_obj[0]; - if ( arg1 != Py_None ) { - /* subclassed */ - result = (PyCallback *)new SwigDirector_PyCallback(arg1); - } else { - result = (PyCallback *)new PyCallback(); - } - - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PyCallback, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_new_PyCallback(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer(PyObject *self, PyObject *args) { Py_ssize_t argc; - PyObject *argv[3] = { + PyObject *argv[5] = { 0 }; - if (!(argc = SWIG_Python_UnpackTuple(args, "new_PyCallback", 0, 2, argv))) SWIG_fail; + if (!(argc = SWIG_Python_UnpackTuple(args, "Minimizer_setMinimizer", 0, 4, argv))) SWIG_fail; --argc; - if (argc == 1) { + if (argc == 2) { int _v; - _v = (argv[0] != 0); + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + _v = SWIG_CheckState(res); if (_v) { - return _wrap_new_PyCallback__SWIG_1(self, argc, argv); + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IMinimizer, 0); + _v = SWIG_CheckState(res); + if (_v) { + return _wrap_Minimizer_setMinimizer__SWIG_3(self, argc, argv); + } } } if (argc == 2) { int _v; - _v = (argv[0] != 0); + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + _v = SWIG_CheckState(res); if (_v) { - { - int res = SWIG_AsVal_int(argv[1], NULL); - _v = SWIG_CheckState(res); - } + int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); + _v = SWIG_CheckState(res); if (_v) { - return _wrap_new_PyCallback__SWIG_0(self, argc, argv); + return _wrap_Minimizer_setMinimizer__SWIG_2(self, argc, argv); } } } - -fail: - SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_PyCallback'.\n" - " Possible C/C++ prototypes are:\n" - " PyCallback::PyCallback(PyCallback::CallbackType)\n" - " PyCallback::PyCallback(PyObject *)\n"); - return 0; -} - - -SWIGINTERN PyObject *_wrap_delete_PyCallback(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - PyCallback *arg1 = (PyCallback *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, SWIG_POINTER_DISOWN | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PyCallback" "', argument " "1"" of type '" "PyCallback *""'"); - } - arg1 = reinterpret_cast< PyCallback * >(argp1); - delete arg1; - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_PyCallback_callback_type(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - PyCallback *arg1 = (PyCallback *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - PyCallback::CallbackType result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_callback_type" "', argument " "1"" of type '" "PyCallback const *""'"); - } - arg1 = reinterpret_cast< PyCallback * >(argp1); - result = (PyCallback::CallbackType)((PyCallback const *)arg1)->callback_type(); - resultobj = SWIG_From_int(static_cast< int >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_PyCallback_call_scalar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - PyCallback *arg1 = (PyCallback *) 0 ; - Fit::Parameters arg2 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 ; - int res2 = 0 ; - PyObject *swig_obj[2] ; - Swig::Director *director = 0; - bool upcall = false; - double result; - - if (!SWIG_Python_UnpackTuple(args, "PyCallback_call_scalar", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_call_scalar" "', argument " "1"" of type '" "PyCallback *""'"); - } - arg1 = reinterpret_cast< PyCallback * >(argp1); - { - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PyCallback_call_scalar" "', argument " "2"" of type '" "Fit::Parameters""'"); - } - if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PyCallback_call_scalar" "', argument " "2"" of type '" "Fit::Parameters""'"); - } else { - Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp2); - arg2 = *temp; - if (SWIG_IsNewObj(res2)) delete temp; - } - } - director = SWIG_DIRECTOR_CAST(arg1); - upcall = (director && (director->swig_get_self()==swig_obj[0])); - try { - if (upcall) { - result = (double)(arg1)->PyCallback::call_scalar(arg2); - } else { - result = (double)(arg1)->call_scalar(arg2); - } - } catch (Swig::DirectorException&) { - SWIG_fail; - } - resultobj = SWIG_From_double(static_cast< double >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_PyCallback_call_residuals(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - PyCallback *arg1 = (PyCallback *) 0 ; - Fit::Parameters arg2 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 ; - int res2 = 0 ; - PyObject *swig_obj[2] ; - Swig::Director *director = 0; - bool upcall = false; - std::vector< double,std::allocator< double > > result; - - if (!SWIG_Python_UnpackTuple(args, "PyCallback_call_residuals", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PyCallback_call_residuals" "', argument " "1"" of type '" "PyCallback *""'"); - } - arg1 = reinterpret_cast< PyCallback * >(argp1); - { - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PyCallback_call_residuals" "', argument " "2"" of type '" "Fit::Parameters""'"); - } - if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PyCallback_call_residuals" "', argument " "2"" of type '" "Fit::Parameters""'"); - } else { - Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp2); - arg2 = *temp; - if (SWIG_IsNewObj(res2)) delete temp; - } - } - director = SWIG_DIRECTOR_CAST(arg1); - upcall = (director && (director->swig_get_self()==swig_obj[0])); - try { - if (upcall) { - result = (arg1)->PyCallback::call_residuals(arg2); - } else { - result = (arg1)->call_residuals(arg2); + if (argc == 3) { + int _v; + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + _v = SWIG_CheckState(res); + if (_v) { + int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); + _v = SWIG_CheckState(res); + if (_v) { + int res = SWIG_AsPtr_std_string(argv[2], (std::string**)(0)); + _v = SWIG_CheckState(res); + if (_v) { + return _wrap_Minimizer_setMinimizer__SWIG_1(self, argc, argv); + } + } + } + } + if (argc == 4) { + int _v; + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + _v = SWIG_CheckState(res); + if (_v) { + int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); + _v = SWIG_CheckState(res); + if (_v) { + int res = SWIG_AsPtr_std_string(argv[2], (std::string**)(0)); + _v = SWIG_CheckState(res); + if (_v) { + int res = SWIG_AsPtr_std_string(argv[3], (std::string**)(0)); + _v = SWIG_CheckState(res); + if (_v) { + return _wrap_Minimizer_setMinimizer__SWIG_0(self, argc, argv); + } + } + } } - } catch (Swig::DirectorException&) { - SWIG_fail; } - resultobj = swig::from(static_cast< std::vector< double,std::allocator< double > > >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_disown_PyCallback(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - PyCallback *arg1 = (PyCallback *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_PyCallback, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "disown_PyCallback" "', argument " "1"" of type '" "PyCallback *""'"); - } - arg1 = reinterpret_cast< PyCallback * >(argp1); - { - Swig::Director *director = SWIG_DIRECTOR_CAST(arg1); - if (director) director->swig_disown(); - } - - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *PyCallback_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *obj; - if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_PyCallback, SWIG_NewClientData(obj)); - return SWIG_Py_Void(); -} - -SWIGINTERN PyObject *PyCallback_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - return SWIG_Python_InitShadowInstance(args); -} - -SWIGINTERN PyObject *_wrap_new_MinimizerResult(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - Fit::MinimizerResult *result = 0 ; - if (!SWIG_Python_UnpackTuple(args, "new_MinimizerResult", 0, 0, 0)) SWIG_fail; - result = (Fit::MinimizerResult *)new Fit::MinimizerResult(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_NEW | 0 ); - return resultobj; fail: - return NULL; + SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'Minimizer_setMinimizer'.\n" + " Possible C/C++ prototypes are:\n" + " Fit::Minimizer::setMinimizer(std::string const &,std::string const &,std::string const &)\n" + " Fit::Minimizer::setMinimizer(std::string const &,std::string const &)\n" + " Fit::Minimizer::setMinimizer(std::string const &)\n" + " Fit::Minimizer::setMinimizer(IMinimizer *)\n"); + return 0; } -SWIGINTERN PyObject *_wrap_MinimizerResult_setParameters(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_Minimizer_minimize_cpp(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - Fit::Parameters *arg2 = 0 ; + Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + PyCallback *arg2 = 0 ; + Fit::Parameters *arg3 = 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; int res2 = 0 ; - PyObject *swig_obj[2] ; + void *argp3 = 0 ; + int res3 = 0 ; + PyObject *swig_obj[3] ; + Fit::MinimizerResult result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setParameters", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "Minimizer_minimize_cpp", 3, 3, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setParameters" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_minimize_cpp" "', argument " "1"" of type '" "Fit::Minimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Fit__Parameters, 0 | 0); + arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_PyCallback, 0 ); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerResult_setParameters" "', argument " "2"" of type '" "Fit::Parameters const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_minimize_cpp" "', argument " "2"" of type '" "PyCallback &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerResult_setParameters" "', argument " "2"" of type '" "Fit::Parameters const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_minimize_cpp" "', argument " "2"" of type '" "PyCallback &""'"); } - arg2 = reinterpret_cast< Fit::Parameters * >(argp2); - (arg1)->setParameters((Fit::Parameters const &)*arg2); - resultobj = SWIG_Py_Void(); + arg2 = reinterpret_cast< PyCallback * >(argp2); + res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_minimize_cpp" "', argument " "3"" of type '" "Fit::Parameters const &""'"); + } + if (!argp3) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_minimize_cpp" "', argument " "3"" of type '" "Fit::Parameters const &""'"); + } + arg3 = reinterpret_cast< Fit::Parameters * >(argp3); + result = (arg1)->minimize(*arg2,(Fit::Parameters const &)*arg3); + resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerResult_parameters(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - Fit::Parameters result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_parameters" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); - } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - result = ((Fit::MinimizerResult const *)arg1)->parameters(); - resultobj = SWIG_NewPointerObj((new Fit::Parameters(static_cast< const Fit::Parameters& >(result))), SWIGTYPE_p_Fit__Parameters, SWIG_POINTER_OWN | 0 ); - return resultobj; -fail: - return NULL; +SWIGINTERN PyObject *Minimizer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *obj; + if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; + SWIG_TypeNewClientData(SWIGTYPE_p_Fit__Minimizer, SWIG_NewClientData(obj)); + return SWIG_Py_Void(); } +SWIGINTERN PyObject *Minimizer_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + return SWIG_Python_InitShadowInstance(args); +} -SWIGINTERN PyObject *_wrap_MinimizerResult_setMinValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_delete_IMinimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - double arg2 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; + PyObject *swig_obj[1] ; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setMinValue", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, SWIG_POINTER_DISOWN | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setMinValue" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IMinimizer" "', argument " "1"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setMinValue" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - (arg1)->setMinValue(arg2); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + delete arg1; resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -21191,32 +21020,32 @@ fail: } -SWIGINTERN PyObject *_wrap_MinimizerResult_minValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_minimizerName(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - double result; + std::string result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_minValue" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimizerName" "', argument " "1"" of type '" "IMinimizer const *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - result = (double)((Fit::MinimizerResult const *)arg1)->minValue(); - resultobj = SWIG_From_double(static_cast< double >(result)); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + result = ((IMinimizer const *)arg1)->minimizerName(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerResult_toString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_algorithmName(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -21224,12 +21053,12 @@ SWIGINTERN PyObject *_wrap_MinimizerResult_toString(PyObject *SWIGUNUSEDPARM(sel if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_toString" "', argument " "1"" of type '" "Fit::MinimizerResult const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_algorithmName" "', argument " "1"" of type '" "IMinimizer const *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - result = ((Fit::MinimizerResult const *)arg1)->toString(); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + result = ((IMinimizer const *)arg1)->algorithmName(); resultobj = SWIG_From_std_string(static_cast< std::string >(result)); return resultobj; fail: @@ -21237,93 +21066,129 @@ fail: } -SWIGINTERN PyObject *_wrap_MinimizerResult_setReport(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_minimize_scalar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - std::string *arg2 = 0 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; + fcn_scalar_t arg2 ; + Fit::Parameters arg3 ; void *argp1 = 0 ; int res1 = 0 ; - int res2 = SWIG_OLDOBJ ; - PyObject *swig_obj[2] ; + void *argp2 ; + int res2 = 0 ; + void *argp3 ; + int res3 = 0 ; + PyObject *swig_obj[3] ; + Fit::MinimizerResult result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setReport", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "IMinimizer_minimize_scalar", 3, 3, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setReport" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimize_scalar" "', argument " "1"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); + arg1 = reinterpret_cast< IMinimizer * >(argp1); { - std::string *ptr = (std::string *)0; - res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_fcn_scalar_t, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerResult_setReport" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_minimize_scalar" "', argument " "2"" of type '" "fcn_scalar_t""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_scalar" "', argument " "2"" of type '" "fcn_scalar_t""'"); + } else { + fcn_scalar_t * temp = reinterpret_cast< fcn_scalar_t * >(argp2); + arg2 = *temp; + if (SWIG_IsNewObj(res2)) delete temp; } - if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerResult_setReport" "', argument " "2"" of type '" "std::string const &""'"); + } + { + res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "IMinimizer_minimize_scalar" "', argument " "3"" of type '" "Fit::Parameters""'"); + } + if (!argp3) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_scalar" "', argument " "3"" of type '" "Fit::Parameters""'"); + } else { + Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp3); + arg3 = *temp; + if (SWIG_IsNewObj(res3)) delete temp; } - arg2 = ptr; } - (arg1)->setReport((std::string const &)*arg2); - resultobj = SWIG_Py_Void(); - if (SWIG_IsNewObj(res2)) delete arg2; + result = (arg1)->minimize_scalar(arg2,arg3); + resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); return resultobj; fail: - if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerResult_setDuration(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_minimize_residual(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - double arg2 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; + fcn_residual_t arg2 ; + Fit::Parameters arg3 ; void *argp1 = 0 ; int res1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; + void *argp2 ; + int res2 = 0 ; + void *argp3 ; + int res3 = 0 ; + PyObject *swig_obj[3] ; + Fit::MinimizerResult result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setDuration", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "IMinimizer_minimize_residual", 3, 3, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setDuration" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minimize_residual" "', argument " "1"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setDuration" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - (arg1)->setDuration(arg2); - resultobj = SWIG_Py_Void(); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + { + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_fcn_residual_t, 0 | 0); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_minimize_residual" "', argument " "2"" of type '" "fcn_residual_t""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_residual" "', argument " "2"" of type '" "fcn_residual_t""'"); + } else { + fcn_residual_t * temp = reinterpret_cast< fcn_residual_t * >(argp2); + arg2 = *temp; + if (SWIG_IsNewObj(res2)) delete temp; + } + } + { + res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); + if (!SWIG_IsOK(res3)) { + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "IMinimizer_minimize_residual" "', argument " "3"" of type '" "Fit::Parameters""'"); + } + if (!argp3) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_minimize_residual" "', argument " "3"" of type '" "Fit::Parameters""'"); + } else { + Fit::Parameters * temp = reinterpret_cast< Fit::Parameters * >(argp3); + arg3 = *temp; + if (SWIG_IsNewObj(res3)) delete temp; + } + } + result = (arg1)->minimize_residual(arg2,arg3); + resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_MinimizerResult_setNumberOfCalls(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_clear(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - int arg2 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - int val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; + PyObject *swig_obj[1] ; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setNumberOfCalls", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setNumberOfCalls" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_clear" "', argument " "1"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setNumberOfCalls" "', argument " "2"" of type '" "int""'"); - } - arg2 = static_cast< int >(val2); - (arg1)->setNumberOfCalls(arg2); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + (arg1)->clear(); resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -21331,192 +21196,305 @@ fail: } -SWIGINTERN PyObject *_wrap_MinimizerResult_setNumberOfGradientCalls(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_minValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; - int arg2 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - int val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; + PyObject *swig_obj[1] ; + double result; - if (!SWIG_Python_UnpackTuple(args, "MinimizerResult_setNumberOfGradientCalls", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, 0 | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerResult_setNumberOfGradientCalls" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_minValue" "', argument " "1"" of type '" "IMinimizer const *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - ecode2 = SWIG_AsVal_int(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MinimizerResult_setNumberOfGradientCalls" "', argument " "2"" of type '" "int""'"); - } - arg2 = static_cast< int >(val2); - (arg1)->setNumberOfGradientCalls(arg2); - resultobj = SWIG_Py_Void(); + arg1 = reinterpret_cast< IMinimizer * >(argp1); + result = (double)((IMinimizer const *)arg1)->minValue(); + resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_delete_MinimizerResult(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IMinimizer_setOptions(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::MinimizerResult *arg1 = (Fit::MinimizerResult *) 0 ; + IMinimizer *arg1 = (IMinimizer *) 0 ; + std::string *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; - PyObject *swig_obj[1] ; + int res2 = SWIG_OLDOBJ ; + PyObject *swig_obj[2] ; - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_Python_UnpackTuple(args, "IMinimizer_setOptions", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IMinimizer, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerResult" "', argument " "1"" of type '" "Fit::MinimizerResult *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IMinimizer_setOptions" "', argument " "1"" of type '" "IMinimizer *""'"); } - arg1 = reinterpret_cast< Fit::MinimizerResult * >(argp1); - delete arg1; + arg1 = reinterpret_cast< IMinimizer * >(argp1); + { + std::string *ptr = (std::string *)0; + res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IMinimizer_setOptions" "', argument " "2"" of type '" "std::string const &""'"); + } + if (!ptr) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IMinimizer_setOptions" "', argument " "2"" of type '" "std::string const &""'"); + } + arg2 = ptr; + } + (arg1)->setOptions((std::string const &)*arg2); resultobj = SWIG_Py_Void(); + if (SWIG_IsNewObj(res2)) delete arg2; return resultobj; fail: + if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *MinimizerResult_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *IMinimizer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_Fit__MinimizerResult, SWIG_NewClientData(obj)); + SWIG_TypeNewClientData(SWIGTYPE_p_IMinimizer, SWIG_NewClientData(obj)); return SWIG_Py_Void(); } -SWIGINTERN PyObject *MinimizerResult_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - return SWIG_Python_InitShadowInstance(args); +SWIGINTERN PyObject *_wrap_new_MinimizerCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerCatalogue *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "new_MinimizerCatalogue", 0, 0, 0)) SWIG_fail; + result = (MinimizerCatalogue *)new MinimizerCatalogue(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerCatalogue, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; } -SWIGINTERN PyObject *_wrap_new_Minimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + +SWIGINTERN PyObject *_wrap_MinimizerCatalogue_toString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::Minimizer *result = 0 ; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + std::string result; - if (!SWIG_Python_UnpackTuple(args, "new_Minimizer", 0, 0, 0)) SWIG_fail; - result = (Fit::Minimizer *)new Fit::Minimizer(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Fit__Minimizer, SWIG_POINTER_NEW | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_toString" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); + } + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); + result = ((MinimizerCatalogue const *)arg1)->toString(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_delete_Minimizer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerCatalogue_minimizerNames(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; + std::vector< std::string,std::allocator< std::string > > result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, SWIG_POINTER_DISOWN | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Minimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_minimizerNames" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); - delete arg1; - resultobj = SWIG_Py_Void(); + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); + result = ((MinimizerCatalogue const *)arg1)->minimizerNames(); + resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_MinimizerCatalogue_algorithmNames(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; std::string *arg2 = 0 ; - std::string *arg3 = 0 ; - std::string *arg4 = 0 ; void *argp1 = 0 ; int res1 = 0 ; int res2 = SWIG_OLDOBJ ; - int res3 = SWIG_OLDOBJ ; - int res4 = SWIG_OLDOBJ ; + PyObject *swig_obj[2] ; + std::vector< std::string,std::allocator< std::string > > result; - if ((nobjs < 4) || (nobjs > 4)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_algorithmNames", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); { std::string *ptr = (std::string *)0; res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_algorithmNames" "', argument " "2"" of type '" "std::string const &""'"); } arg2 = ptr; } + result = ((MinimizerCatalogue const *)arg1)->algorithmNames((std::string const &)*arg2); + resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); + if (SWIG_IsNewObj(res2)) delete arg2; + return resultobj; +fail: + if (SWIG_IsNewObj(res2)) delete arg2; + return NULL; +} + + +SWIGINTERN PyObject *_wrap_MinimizerCatalogue_algorithmDescriptions(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + std::string *arg2 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + int res2 = SWIG_OLDOBJ ; + PyObject *swig_obj[2] ; + std::vector< std::string,std::allocator< std::string > > result; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_algorithmDescriptions", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); + } + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); { std::string *ptr = (std::string *)0; - res3 = SWIG_AsPtr_std_string(swig_obj[2], &ptr); - if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_algorithmDescriptions" "', argument " "2"" of type '" "std::string const &""'"); } - arg3 = ptr; + arg2 = ptr; + } + result = ((MinimizerCatalogue const *)arg1)->algorithmDescriptions((std::string const &)*arg2); + resultobj = swig::from(static_cast< std::vector< std::string,std::allocator< std::string > > >(result)); + if (SWIG_IsNewObj(res2)) delete arg2; + return resultobj; +fail: + if (SWIG_IsNewObj(res2)) delete arg2; + return NULL; +} + + +SWIGINTERN PyObject *_wrap_MinimizerCatalogue_minimizerInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + std::string *arg2 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + int res2 = SWIG_OLDOBJ ; + PyObject *swig_obj[2] ; + MinimizerInfo *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerCatalogue_minimizerInfo", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "1"" of type '" "MinimizerCatalogue const *""'"); } + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); { std::string *ptr = (std::string *)0; - res4 = SWIG_AsPtr_std_string(swig_obj[3], &ptr); - if (!SWIG_IsOK(res4)) { - SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Minimizer_setMinimizer" "', argument " "4"" of type '" "std::string const &""'"); + res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "4"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerCatalogue_minimizerInfo" "', argument " "2"" of type '" "std::string const &""'"); } - arg4 = ptr; + arg2 = ptr; } - (arg1)->setMinimizer((std::string const &)*arg2,(std::string const &)*arg3,(std::string const &)*arg4); - resultobj = SWIG_Py_Void(); + result = (MinimizerInfo *) &((MinimizerCatalogue const *)arg1)->minimizerInfo((std::string const &)*arg2); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerInfo, 0 | 0 ); if (SWIG_IsNewObj(res2)) delete arg2; - if (SWIG_IsNewObj(res3)) delete arg3; - if (SWIG_IsNewObj(res4)) delete arg4; return resultobj; fail: if (SWIG_IsNewObj(res2)) delete arg2; - if (SWIG_IsNewObj(res3)) delete arg3; - if (SWIG_IsNewObj(res4)) delete arg4; return NULL; } -SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_delete_MinimizerCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerCatalogue *arg1 = (MinimizerCatalogue *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerCatalogue, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerCatalogue" "', argument " "1"" of type '" "MinimizerCatalogue *""'"); + } + arg1 = reinterpret_cast< MinimizerCatalogue * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *MinimizerCatalogue_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *obj; + if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; + SWIG_TypeNewClientData(SWIGTYPE_p_MinimizerCatalogue, SWIG_NewClientData(obj)); + return SWIG_Py_Void(); +} + +SWIGINTERN PyObject *MinimizerCatalogue_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + return SWIG_Python_InitShadowInstance(args); +} + +SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + std::string *arg1 = 0 ; std::string *arg2 = 0 ; std::string *arg3 = 0 ; - void *argp1 = 0 ; - int res1 = 0 ; + int res1 = SWIG_OLDOBJ ; int res2 = SWIG_OLDOBJ ; int res3 = SWIG_OLDOBJ ; + IMinimizer *result = 0 ; if ((nobjs < 3) || (nobjs > 3)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + { + std::string *ptr = (std::string *)0; + res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + if (!ptr) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + arg1 = ptr; } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); { std::string *ptr = (std::string *)0; res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } arg2 = ptr; } @@ -21524,144 +21502,129 @@ SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_1(PyObject *SWIGUNUSEDPA std::string *ptr = (std::string *)0; res3 = SWIG_AsPtr_std_string(swig_obj[2], &ptr); if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MinimizerFactory_createMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "3"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "3"" of type '" "std::string const &""'"); } arg3 = ptr; } - (arg1)->setMinimizer((std::string const &)*arg2,(std::string const &)*arg3); - resultobj = SWIG_Py_Void(); + result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1,(std::string const &)*arg2,(std::string const &)*arg3); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; if (SWIG_IsNewObj(res3)) delete arg3; return resultobj; fail: + if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; if (SWIG_IsNewObj(res3)) delete arg3; return NULL; } -SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_2(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; + std::string *arg1 = 0 ; std::string *arg2 = 0 ; - void *argp1 = 0 ; - int res1 = 0 ; + int res1 = SWIG_OLDOBJ ; int res2 = SWIG_OLDOBJ ; + IMinimizer *result = 0 ; if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); + { + std::string *ptr = (std::string *)0; + res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + if (!ptr) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + arg1 = ptr; } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); { std::string *ptr = (std::string *)0; res2 = SWIG_AsPtr_std_string(swig_obj[1], &ptr); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } if (!ptr) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "std::string const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "2"" of type '" "std::string const &""'"); } arg2 = ptr; } - (arg1)->setMinimizer((std::string const &)*arg2); - resultobj = SWIG_Py_Void(); + result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1,(std::string const &)*arg2); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; return resultobj; fail: + if (SWIG_IsNewObj(res1)) delete arg1; if (SWIG_IsNewObj(res2)) delete arg2; return NULL; } -SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer__SWIG_3(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer__SWIG_2(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; - IMinimizer *arg2 = (IMinimizer *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 = 0 ; - int res2 = 0 ; + std::string *arg1 = 0 ; + int res1 = SWIG_OLDOBJ ; + IMinimizer *result = 0 ; - if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_setMinimizer" "', argument " "1"" of type '" "Fit::Minimizer *""'"); - } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_IMinimizer, 0 | 0 ); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_setMinimizer" "', argument " "2"" of type '" "IMinimizer *""'"); + if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; + { + std::string *ptr = (std::string *)0; + res1 = SWIG_AsPtr_std_string(swig_obj[0], &ptr); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + if (!ptr) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MinimizerFactory_createMinimizer" "', argument " "1"" of type '" "std::string const &""'"); + } + arg1 = ptr; } - arg2 = reinterpret_cast< IMinimizer * >(argp2); - (arg1)->setMinimizer(arg2); - resultobj = SWIG_Py_Void(); + result = (IMinimizer *)MinimizerFactory::createMinimizer((std::string const &)*arg1); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMinimizer, 0 | 0 ); + if (SWIG_IsNewObj(res1)) delete arg1; return resultobj; fail: + if (SWIG_IsNewObj(res1)) delete arg1; return NULL; } -SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerFactory_createMinimizer(PyObject *self, PyObject *args) { Py_ssize_t argc; - PyObject *argv[5] = { + PyObject *argv[4] = { 0 }; - if (!(argc = SWIG_Python_UnpackTuple(args, "Minimizer_setMinimizer", 0, 4, argv))) SWIG_fail; + if (!(argc = SWIG_Python_UnpackTuple(args, "MinimizerFactory_createMinimizer", 0, 3, argv))) SWIG_fail; --argc; - if (argc == 2) { + if (argc == 1) { int _v; - void *vptr = 0; - int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); _v = SWIG_CheckState(res); if (_v) { - void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IMinimizer, 0); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_Minimizer_setMinimizer__SWIG_3(self, argc, argv); - } + return _wrap_MinimizerFactory_createMinimizer__SWIG_2(self, argc, argv); } } if (argc == 2) { int _v; - void *vptr = 0; - int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); _v = SWIG_CheckState(res); if (_v) { int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); _v = SWIG_CheckState(res); if (_v) { - return _wrap_Minimizer_setMinimizer__SWIG_2(self, argc, argv); + return _wrap_MinimizerFactory_createMinimizer__SWIG_1(self, argc, argv); } } } if (argc == 3) { int _v; - void *vptr = 0; - int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); - _v = SWIG_CheckState(res); - if (_v) { - int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - int res = SWIG_AsPtr_std_string(argv[2], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_Minimizer_setMinimizer__SWIG_1(self, argc, argv); - } - } - } - } - if (argc == 4) { - int _v; - void *vptr = 0; - int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Fit__Minimizer, 0); + int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0)); _v = SWIG_CheckState(res); if (_v) { int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0)); @@ -21670,79 +21633,116 @@ SWIGINTERN PyObject *_wrap_Minimizer_setMinimizer(PyObject *self, PyObject *args int res = SWIG_AsPtr_std_string(argv[2], (std::string**)(0)); _v = SWIG_CheckState(res); if (_v) { - int res = SWIG_AsPtr_std_string(argv[3], (std::string**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_Minimizer_setMinimizer__SWIG_0(self, argc, argv); - } + return _wrap_MinimizerFactory_createMinimizer__SWIG_0(self, argc, argv); } } } } fail: - SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'Minimizer_setMinimizer'.\n" + SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'MinimizerFactory_createMinimizer'.\n" " Possible C/C++ prototypes are:\n" - " Fit::Minimizer::setMinimizer(std::string const &,std::string const &,std::string const &)\n" - " Fit::Minimizer::setMinimizer(std::string const &,std::string const &)\n" - " Fit::Minimizer::setMinimizer(std::string const &)\n" - " Fit::Minimizer::setMinimizer(IMinimizer *)\n"); + " MinimizerFactory::createMinimizer(std::string const &,std::string const &,std::string const &)\n" + " MinimizerFactory::createMinimizer(std::string const &,std::string const &)\n" + " MinimizerFactory::createMinimizer(std::string const &)\n"); return 0; } -SWIGINTERN PyObject *_wrap_Minimizer_minimize_cpp(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_MinimizerFactory_printCatalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Fit::Minimizer *arg1 = (Fit::Minimizer *) 0 ; - PyCallback *arg2 = 0 ; - Fit::Parameters *arg3 = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_printCatalogue", 0, 0, 0)) SWIG_fail; + MinimizerFactory::printCatalogue(); + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogueToString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + std::string result; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogueToString", 0, 0, 0)) SWIG_fail; + result = MinimizerFactory::catalogueToString(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogueDetailsToString(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + std::string result; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogueDetailsToString", 0, 0, 0)) SWIG_fail; + result = MinimizerFactory::catalogueDetailsToString(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_MinimizerFactory_catalogue(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerCatalogue *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "MinimizerFactory_catalogue", 0, 0, 0)) SWIG_fail; + result = (MinimizerCatalogue *) &MinimizerFactory::catalogue(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerCatalogue, 0 | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_new_MinimizerFactory(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerFactory *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "new_MinimizerFactory", 0, 0, 0)) SWIG_fail; + result = (MinimizerFactory *)new MinimizerFactory(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_MinimizerFactory, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_delete_MinimizerFactory(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + MinimizerFactory *arg1 = (MinimizerFactory *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - void *argp2 = 0 ; - int res2 = 0 ; - void *argp3 = 0 ; - int res3 = 0 ; - PyObject *swig_obj[3] ; - Fit::MinimizerResult result; - - if (!SWIG_Python_UnpackTuple(args, "Minimizer_minimize_cpp", 3, 3, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Fit__Minimizer, 0 | 0 ); + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_MinimizerFactory, SWIG_POINTER_DISOWN | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Minimizer_minimize_cpp" "', argument " "1"" of type '" "Fit::Minimizer *""'"); - } - arg1 = reinterpret_cast< Fit::Minimizer * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_PyCallback, 0 ); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Minimizer_minimize_cpp" "', argument " "2"" of type '" "PyCallback &""'"); - } - if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_minimize_cpp" "', argument " "2"" of type '" "PyCallback &""'"); - } - arg2 = reinterpret_cast< PyCallback * >(argp2); - res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_Fit__Parameters, 0 | 0); - if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Minimizer_minimize_cpp" "', argument " "3"" of type '" "Fit::Parameters const &""'"); - } - if (!argp3) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Minimizer_minimize_cpp" "', argument " "3"" of type '" "Fit::Parameters const &""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MinimizerFactory" "', argument " "1"" of type '" "MinimizerFactory *""'"); } - arg3 = reinterpret_cast< Fit::Parameters * >(argp3); - result = (arg1)->minimize(*arg2,(Fit::Parameters const &)*arg3); - resultobj = SWIG_NewPointerObj((new Fit::MinimizerResult(static_cast< const Fit::MinimizerResult& >(result))), SWIGTYPE_p_Fit__MinimizerResult, SWIG_POINTER_OWN | 0 ); + arg1 = reinterpret_cast< MinimizerFactory * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *Minimizer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *MinimizerFactory_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_Fit__Minimizer, SWIG_NewClientData(obj)); + SWIG_TypeNewClientData(SWIGTYPE_p_MinimizerFactory, SWIG_NewClientData(obj)); return SWIG_Py_Void(); } -SWIGINTERN PyObject *Minimizer_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *MinimizerFactory_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { return SWIG_Python_InitShadowInstance(args); } @@ -22475,117 +22475,6 @@ static PyMethodDef SwigMethods[] = { { "delete_Parameters", _wrap_delete_Parameters, METH_O, "delete_Parameters(Parameters self)"}, { "Parameters_swigregister", Parameters_swigregister, METH_O, NULL}, { "Parameters_swiginit", Parameters_swiginit, METH_VARARGS, NULL}, - { "delete_IMinimizer", _wrap_delete_IMinimizer, METH_O, "\n" - "delete_IMinimizer(IMinimizer self)\n" - "IMinimizer::~IMinimizer()\n" - "\n" - ""}, - { "IMinimizer_minimizerName", _wrap_IMinimizer_minimizerName, METH_O, "\n" - "IMinimizer_minimizerName(IMinimizer self) -> std::string\n" - "virtual std::string IMinimizer::minimizerName() const =0\n" - "\n" - "return name of the minimizer \n" - "\n" - ""}, - { "IMinimizer_algorithmName", _wrap_IMinimizer_algorithmName, METH_O, "\n" - "IMinimizer_algorithmName(IMinimizer self) -> std::string\n" - "virtual std::string IMinimizer::algorithmName() const =0\n" - "\n" - "return name of the minimization algorithm \n" - "\n" - ""}, - { "IMinimizer_minimize_scalar", _wrap_IMinimizer_minimize_scalar, METH_VARARGS, "\n" - "IMinimizer_minimize_scalar(IMinimizer self, fcn_scalar_t arg2, Parameters arg3) -> MinimizerResult\n" - "Fit::MinimizerResult IMinimizer::minimize_scalar(fcn_scalar_t, Fit::Parameters)\n" - "\n" - "run minimization \n" - "\n" - ""}, - { "IMinimizer_minimize_residual", _wrap_IMinimizer_minimize_residual, METH_VARARGS, "\n" - "IMinimizer_minimize_residual(IMinimizer self, fcn_residual_t arg2, Parameters arg3) -> MinimizerResult\n" - "Fit::MinimizerResult IMinimizer::minimize_residual(fcn_residual_t, Fit::Parameters)\n" - "\n" - ""}, - { "IMinimizer_clear", _wrap_IMinimizer_clear, METH_O, "\n" - "IMinimizer_clear(IMinimizer self)\n" - "virtual void IMinimizer::clear()\n" - "\n" - "clear resources (parameters) for consecutives minimizations \n" - "\n" - ""}, - { "IMinimizer_minValue", _wrap_IMinimizer_minValue, METH_O, "\n" - "IMinimizer_minValue(IMinimizer self) -> double\n" - "double IMinimizer::minValue() const\n" - "\n" - "Returns minimum function value. \n" - "\n" - ""}, - { "IMinimizer_setOptions", _wrap_IMinimizer_setOptions, METH_VARARGS, "\n" - "IMinimizer_setOptions(IMinimizer self, std::string const & options)\n" - "void IMinimizer::setOptions(const std::string &options)\n" - "\n" - "Sets option string to the minimizer. \n" - "\n" - ""}, - { "IMinimizer_swigregister", IMinimizer_swigregister, METH_O, NULL}, - { "new_MinimizerCatalogue", _wrap_new_MinimizerCatalogue, METH_NOARGS, "\n" - "new_MinimizerCatalogue() -> MinimizerCatalogue\n" - "MinimizerCatalogue::MinimizerCatalogue()\n" - "\n" - ""}, - { "MinimizerCatalogue_toString", _wrap_MinimizerCatalogue_toString, METH_O, "\n" - "MinimizerCatalogue_toString(MinimizerCatalogue self) -> std::string\n" - "std::string MinimizerCatalogue::toString() const\n" - "\n" - "Returns multiline string representing catalogue content. \n" - "\n" - ""}, - { "MinimizerCatalogue_minimizerNames", _wrap_MinimizerCatalogue_minimizerNames, METH_O, "\n" - "MinimizerCatalogue_minimizerNames(MinimizerCatalogue self) -> vector_string_t\n" - "std::vector< std::string > MinimizerCatalogue::minimizerNames() const\n" - "\n" - ""}, - { "MinimizerCatalogue_algorithmNames", _wrap_MinimizerCatalogue_algorithmNames, METH_VARARGS, "\n" - "MinimizerCatalogue_algorithmNames(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t\n" - "std::vector< std::string > MinimizerCatalogue::algorithmNames(const std::string &minimizerName) const\n" - "\n" - "Returns list of algorithms defined for the minimizer with a given name. \n" - "\n" - ""}, - { "MinimizerCatalogue_algorithmDescriptions", _wrap_MinimizerCatalogue_algorithmDescriptions, METH_VARARGS, "\n" - "MinimizerCatalogue_algorithmDescriptions(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t\n" - "std::vector< std::string > MinimizerCatalogue::algorithmDescriptions(const std::string &minimizerName) const\n" - "\n" - "Returns list of algorithm's descriptions for the minimizer with a given name . \n" - "\n" - ""}, - { "MinimizerCatalogue_minimizerInfo", _wrap_MinimizerCatalogue_minimizerInfo, METH_VARARGS, "\n" - "MinimizerCatalogue_minimizerInfo(MinimizerCatalogue self, std::string const & minimizerName) -> MinimizerInfo const &\n" - "const MinimizerInfo & MinimizerCatalogue::minimizerInfo(const std::string &minimizerName) const\n" - "\n" - "Returns info for minimizer with given name. \n" - "\n" - ""}, - { "delete_MinimizerCatalogue", _wrap_delete_MinimizerCatalogue, METH_O, "delete_MinimizerCatalogue(MinimizerCatalogue self)"}, - { "MinimizerCatalogue_swigregister", MinimizerCatalogue_swigregister, METH_O, NULL}, - { "MinimizerCatalogue_swiginit", MinimizerCatalogue_swiginit, METH_VARARGS, NULL}, - { "MinimizerFactory_createMinimizer", _wrap_MinimizerFactory_createMinimizer, METH_VARARGS, "MinimizerFactory_createMinimizer(std::string const & minimizerName, std::string const & algorithmType=\"\", std::string const & optionString=\"\") -> IMinimizer"}, - { "MinimizerFactory_printCatalogue", _wrap_MinimizerFactory_printCatalogue, METH_NOARGS, "MinimizerFactory_printCatalogue()"}, - { "MinimizerFactory_catalogueToString", _wrap_MinimizerFactory_catalogueToString, METH_NOARGS, "MinimizerFactory_catalogueToString() -> std::string"}, - { "MinimizerFactory_catalogueDetailsToString", _wrap_MinimizerFactory_catalogueDetailsToString, METH_NOARGS, "MinimizerFactory_catalogueDetailsToString() -> std::string"}, - { "MinimizerFactory_catalogue", _wrap_MinimizerFactory_catalogue, METH_NOARGS, "MinimizerFactory_catalogue() -> MinimizerCatalogue"}, - { "new_MinimizerFactory", _wrap_new_MinimizerFactory, METH_NOARGS, "\n" - "new_MinimizerFactory() -> MinimizerFactory\n" - "\n" - "\n" - "Factory to create minimizers.\n" - "\n" - "C++ includes: MinimizerFactory.h\n" - "\n" - ""}, - { "delete_MinimizerFactory", _wrap_delete_MinimizerFactory, METH_O, "delete_MinimizerFactory(MinimizerFactory self)"}, - { "MinimizerFactory_swigregister", MinimizerFactory_swigregister, METH_O, NULL}, - { "MinimizerFactory_swiginit", MinimizerFactory_swiginit, METH_VARARGS, NULL}, { "new_PyCallback", _wrap_new_PyCallback, METH_VARARGS, "\n" "PyCallback(PyCallback::CallbackType callback_type=SCALAR)\n" "PyCallback::PyCallback(CallbackType callback_type=SCALAR)\n" @@ -22716,6 +22605,117 @@ static PyMethodDef SwigMethods[] = { ""}, { "Minimizer_swigregister", Minimizer_swigregister, METH_O, NULL}, { "Minimizer_swiginit", Minimizer_swiginit, METH_VARARGS, NULL}, + { "delete_IMinimizer", _wrap_delete_IMinimizer, METH_O, "\n" + "delete_IMinimizer(IMinimizer self)\n" + "IMinimizer::~IMinimizer()\n" + "\n" + ""}, + { "IMinimizer_minimizerName", _wrap_IMinimizer_minimizerName, METH_O, "\n" + "IMinimizer_minimizerName(IMinimizer self) -> std::string\n" + "virtual std::string IMinimizer::minimizerName() const =0\n" + "\n" + "return name of the minimizer \n" + "\n" + ""}, + { "IMinimizer_algorithmName", _wrap_IMinimizer_algorithmName, METH_O, "\n" + "IMinimizer_algorithmName(IMinimizer self) -> std::string\n" + "virtual std::string IMinimizer::algorithmName() const =0\n" + "\n" + "return name of the minimization algorithm \n" + "\n" + ""}, + { "IMinimizer_minimize_scalar", _wrap_IMinimizer_minimize_scalar, METH_VARARGS, "\n" + "IMinimizer_minimize_scalar(IMinimizer self, fcn_scalar_t arg2, Parameters arg3) -> MinimizerResult\n" + "Fit::MinimizerResult IMinimizer::minimize_scalar(fcn_scalar_t, Fit::Parameters)\n" + "\n" + "run minimization \n" + "\n" + ""}, + { "IMinimizer_minimize_residual", _wrap_IMinimizer_minimize_residual, METH_VARARGS, "\n" + "IMinimizer_minimize_residual(IMinimizer self, fcn_residual_t arg2, Parameters arg3) -> MinimizerResult\n" + "Fit::MinimizerResult IMinimizer::minimize_residual(fcn_residual_t, Fit::Parameters)\n" + "\n" + ""}, + { "IMinimizer_clear", _wrap_IMinimizer_clear, METH_O, "\n" + "IMinimizer_clear(IMinimizer self)\n" + "virtual void IMinimizer::clear()\n" + "\n" + "clear resources (parameters) for consecutives minimizations \n" + "\n" + ""}, + { "IMinimizer_minValue", _wrap_IMinimizer_minValue, METH_O, "\n" + "IMinimizer_minValue(IMinimizer self) -> double\n" + "double IMinimizer::minValue() const\n" + "\n" + "Returns minimum function value. \n" + "\n" + ""}, + { "IMinimizer_setOptions", _wrap_IMinimizer_setOptions, METH_VARARGS, "\n" + "IMinimizer_setOptions(IMinimizer self, std::string const & options)\n" + "void IMinimizer::setOptions(const std::string &options)\n" + "\n" + "Sets option string to the minimizer. \n" + "\n" + ""}, + { "IMinimizer_swigregister", IMinimizer_swigregister, METH_O, NULL}, + { "new_MinimizerCatalogue", _wrap_new_MinimizerCatalogue, METH_NOARGS, "\n" + "new_MinimizerCatalogue() -> MinimizerCatalogue\n" + "MinimizerCatalogue::MinimizerCatalogue()\n" + "\n" + ""}, + { "MinimizerCatalogue_toString", _wrap_MinimizerCatalogue_toString, METH_O, "\n" + "MinimizerCatalogue_toString(MinimizerCatalogue self) -> std::string\n" + "std::string MinimizerCatalogue::toString() const\n" + "\n" + "Returns multiline string representing catalogue content. \n" + "\n" + ""}, + { "MinimizerCatalogue_minimizerNames", _wrap_MinimizerCatalogue_minimizerNames, METH_O, "\n" + "MinimizerCatalogue_minimizerNames(MinimizerCatalogue self) -> vector_string_t\n" + "std::vector< std::string > MinimizerCatalogue::minimizerNames() const\n" + "\n" + ""}, + { "MinimizerCatalogue_algorithmNames", _wrap_MinimizerCatalogue_algorithmNames, METH_VARARGS, "\n" + "MinimizerCatalogue_algorithmNames(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t\n" + "std::vector< std::string > MinimizerCatalogue::algorithmNames(const std::string &minimizerName) const\n" + "\n" + "Returns list of algorithms defined for the minimizer with a given name. \n" + "\n" + ""}, + { "MinimizerCatalogue_algorithmDescriptions", _wrap_MinimizerCatalogue_algorithmDescriptions, METH_VARARGS, "\n" + "MinimizerCatalogue_algorithmDescriptions(MinimizerCatalogue self, std::string const & minimizerName) -> vector_string_t\n" + "std::vector< std::string > MinimizerCatalogue::algorithmDescriptions(const std::string &minimizerName) const\n" + "\n" + "Returns list of algorithm's descriptions for the minimizer with a given name . \n" + "\n" + ""}, + { "MinimizerCatalogue_minimizerInfo", _wrap_MinimizerCatalogue_minimizerInfo, METH_VARARGS, "\n" + "MinimizerCatalogue_minimizerInfo(MinimizerCatalogue self, std::string const & minimizerName) -> MinimizerInfo const &\n" + "const MinimizerInfo & MinimizerCatalogue::minimizerInfo(const std::string &minimizerName) const\n" + "\n" + "Returns info for minimizer with given name. \n" + "\n" + ""}, + { "delete_MinimizerCatalogue", _wrap_delete_MinimizerCatalogue, METH_O, "delete_MinimizerCatalogue(MinimizerCatalogue self)"}, + { "MinimizerCatalogue_swigregister", MinimizerCatalogue_swigregister, METH_O, NULL}, + { "MinimizerCatalogue_swiginit", MinimizerCatalogue_swiginit, METH_VARARGS, NULL}, + { "MinimizerFactory_createMinimizer", _wrap_MinimizerFactory_createMinimizer, METH_VARARGS, "MinimizerFactory_createMinimizer(std::string const & minimizerName, std::string const & algorithmType=\"\", std::string const & optionString=\"\") -> IMinimizer"}, + { "MinimizerFactory_printCatalogue", _wrap_MinimizerFactory_printCatalogue, METH_NOARGS, "MinimizerFactory_printCatalogue()"}, + { "MinimizerFactory_catalogueToString", _wrap_MinimizerFactory_catalogueToString, METH_NOARGS, "MinimizerFactory_catalogueToString() -> std::string"}, + { "MinimizerFactory_catalogueDetailsToString", _wrap_MinimizerFactory_catalogueDetailsToString, METH_NOARGS, "MinimizerFactory_catalogueDetailsToString() -> std::string"}, + { "MinimizerFactory_catalogue", _wrap_MinimizerFactory_catalogue, METH_NOARGS, "MinimizerFactory_catalogue() -> MinimizerCatalogue"}, + { "new_MinimizerFactory", _wrap_new_MinimizerFactory, METH_NOARGS, "\n" + "new_MinimizerFactory() -> MinimizerFactory\n" + "\n" + "\n" + "Factory to create minimizers.\n" + "\n" + "C++ includes: MinimizerFactory.h\n" + "\n" + ""}, + { "delete_MinimizerFactory", _wrap_delete_MinimizerFactory, METH_O, "delete_MinimizerFactory(MinimizerFactory self)"}, + { "MinimizerFactory_swigregister", MinimizerFactory_swigregister, METH_O, NULL}, + { "MinimizerFactory_swiginit", MinimizerFactory_swiginit, METH_VARARGS, NULL}, { NULL, NULL, 0, NULL } }; -- GitLab