alpaqa 1.0.0a18
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | List of all members
ExtraFuncs Class Reference

#include <alpaqa/dl/dl-problem.hpp>

Detailed Description

Definition at line 27 of file dl-problem.hpp.

+ Collaboration diagram for ExtraFuncs:

Classes

struct  FuncTag
 

Public Member Functions

 ExtraFuncs ()=default
 
 ExtraFuncs (std::shared_ptr< function_dict_t > &&extra_funcs)
 
template<class Signature >
requires std::is_function_v<Signature>
const std::function< Signature > & extra_func (const std::string &name) const
 
template<class Ret , class... FArgs, class... Args>
decltype(autocall_extra_func_helper (const void *instance, FuncTag< Ret(const instance_t *, FArgs...)>, const std::string &name, Args &&...args) const
 
template<class Ret , class... FArgs, class... Args>
decltype(autocall_extra_func_helper (void *instance, FuncTag< Ret(instance_t *, FArgs...)>, const std::string &name, Args &&...args)
 
template<class Ret , class... FArgs, class... Args>
decltype(autocall_extra_func_helper (const void *, FuncTag< Ret(FArgs...)>, const std::string &name, Args &&...args) const
 

Public Attributes

std::shared_ptr< function_dict_textra_functions
 An associative array of additional functions exposed by the problem.
 

Class Documentation

◆ alpaqa::dl::ExtraFuncs::FuncTag

struct alpaqa::dl::ExtraFuncs::FuncTag
+ Collaboration diagram for ExtraFuncs::FuncTag< Func >:

Constructor & Destructor Documentation

◆ ExtraFuncs() [1/2]

ExtraFuncs ( )
default

◆ ExtraFuncs() [2/2]

ExtraFuncs ( std::shared_ptr< function_dict_t > &&  extra_funcs)
inline

Definition at line 33 of file dl-problem.hpp.

Member Function Documentation

◆ extra_func()

template<class Signature >
requires std::is_function_v<Signature>
const std::function< Signature > & extra_func ( const std::string &  name) const
inline

Definition at line 41 of file dl-problem.hpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ call_extra_func_helper() [1/3]

template<class Ret , class... FArgs, class... Args>
decltype(auto) call_extra_func_helper ( const void instance,
FuncTag< Ret(const instance_t *, FArgs...)>  ,
const std::string &  name,
Args &&...  args 
) const
inline

Definition at line 64 of file dl-problem.hpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ call_extra_func_helper() [2/3]

template<class Ret , class... FArgs, class... Args>
decltype(auto) call_extra_func_helper ( void instance,
FuncTag< Ret(instance_t *, FArgs...)>  ,
const std::string &  name,
Args &&...  args 
)
inline

Definition at line 73 of file dl-problem.hpp.

+ Here is the call graph for this function:

◆ call_extra_func_helper() [3/3]

template<class Ret , class... FArgs, class... Args>
decltype(auto) call_extra_func_helper ( const void ,
FuncTag< Ret(FArgs...)>  ,
const std::string &  name,
Args &&...  args 
) const
inline

Definition at line 80 of file dl-problem.hpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ extra_functions

std::shared_ptr<function_dict_t> extra_functions

An associative array of additional functions exposed by the problem.

Definition at line 37 of file dl-problem.hpp.


The documentation for this class was generated from the following file: