alpaqa 1.0.0a8
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Typedefs | Functions
dl-problem.h File Reference
#include <stddef.h>
#include <stdint.h>
#include <string.h>
#include <any>
#include <functional>
#include <map>
#include <string>
+ Include dependency graph for dl-problem.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  alpaqa_problem_functions_t
 
struct  alpaqa_problem_register_t
 
struct  alpaqa_control_problem_functions_t
 
struct  alpaqa_control_problem_register_t
 
struct  alpaqa_function_dict_s
 

Namespaces

namespace  alpaqa
 
namespace  alpaqa::detail
 

Macros

#define ALPAQA_DL_ABI_VERSION   0xA1A000000001
 
#define ALPAQA_DL_ABI_VERSION_DEFAULT   = ALPAQA_DL_ABI_VERSION
 

Typedefs

typedef double alpaqa_real_t
 
typedef ptrdiff_t alpaqa_length_t
 
typedef alpaqa_length_t alpaqa_index_t
 
typedef struct alpaqa_function_dict_s alpaqa_function_dict_t
 Opaque type for a C++-only map of extra functions.
 
using function_dict_t = alpaqa_function_dict_t
 
using problem_register_t = alpaqa_problem_register_t
 
using control_problem_register_t = alpaqa_control_problem_register_t
 
using problem_functions_t = alpaqa_problem_functions_t
 
using control_problem_functions_t = alpaqa_control_problem_functions_t
 

Functions

template<class Func >
void register_function (function_dict_t *&extra_functions, std::string name, Func &&func)
 Make the given function available to alpaqa.
 
template<class Func >
void register_function (problem_register_t &result, std::string name, Func &&func)
 
template<class Func >
void register_function (control_problem_register_t &result, std::string name, Func &&func)
 
template<class Result , class T , class Ret , class... Args>
void register_member_function (Result &result, std::string name, Ret(T::*member)(Args...))
 
template<auto Member, class Class , class Ret , class... Args>
static auto member_caller (Ret(Class::*)(Args...))
 
template<auto Member, class Class , class Ret >
static auto member_caller (Ret Class::*)
 
template<auto Member>
static auto member_caller ()
 Wrap the given member function of signature into a lambda function that accepts the instance as a void pointer.
 
void unregister_functions (function_dict_t *&extra_functions)
 Cleans up the extra functions registered by register_function.
 

Class Documentation

◆ alpaqa_function_dict_s

struct alpaqa_function_dict_s
+ Collaboration diagram for alpaqa_function_dict_s:
Class Members
map< string, any > dict {}

Macro Definition Documentation

◆ ALPAQA_DL_ABI_VERSION

#define ALPAQA_DL_ABI_VERSION   0xA1A000000001

Definition at line 7 of file dl-problem.h.

◆ ALPAQA_DL_ABI_VERSION_DEFAULT

#define ALPAQA_DL_ABI_VERSION_DEFAULT   = ALPAQA_DL_ABI_VERSION

Definition at line 11 of file dl-problem.h.

Typedef Documentation

◆ alpaqa_real_t

typedef double alpaqa_real_t

Definition at line 16 of file dl-problem.h.

◆ alpaqa_length_t

typedef ptrdiff_t alpaqa_length_t

Definition at line 17 of file dl-problem.h.

◆ alpaqa_index_t

Definition at line 18 of file dl-problem.h.

◆ alpaqa_function_dict_t

Opaque type for a C++-only map of extra functions.

Definition at line 165 of file dl-problem.h.