#include <ARTnResource.h>
Public Member Functions | |
| bool | is_loaded () const noexcept override |
| void | require_loaded () override |
| Throws std::runtime_error if libartn is not available. | |
| artn_create_fn | get_create_fn () const override |
| setup_artn_fn | get_setup_fn () const override |
| artn_fn | get_artn_fn () const override |
| artn_destroy_fn | get_destroy_fn () const override |
| set_param_fn | get_set_param_fn () const override |
| get_param_fn | get_get_param_fn () const override |
| get_runparam_fn | get_get_runparam_fn () const override |
| get_data_fn | get_get_data_fn () const override |
| print_caller_fn | get_print_caller_fn () const override |
| artn_step_fn | get_artn_step_fn () const override |
| get_error_fn | get_get_error_fn () const override |
| May be null on older pARTn builds that predate the C get_error wrapper; callers must null-check before dispatching. | |
| ~ARTnResource () override | |
| ARTnResource (const ARTnResource &)=delete | |
| ARTnResource & | operator= (const ARTnResource &)=delete |
| Public Member Functions inherited from eonc::IARTnResource | |
| virtual | ~IARTnResource ()=default |
| IARTnResource (const IARTnResource &)=delete | |
| IARTnResource & | operator= (const IARTnResource &)=delete |
Static Public Member Functions | |
| static ARTnResource & | instance () |
| Thread-safe singleton accessor (Meyer's pattern). | |
Private Member Functions | |
| ARTnResource () | |
| template<typename Fn> | |
| Fn | load_sym (const char *name) const |
| Try to load a symbol; returns nullptr on failure. | |
Private Attributes | |
| bool | m_loaded {false} |
| dynlib::Handle | m_handle {} |
| artn_create_fn | artn_create_ {nullptr} |
| setup_artn_fn | setup_artn_ {nullptr} |
| artn_fn | artn_ {nullptr} |
| artn_destroy_fn | artn_destroy_ {nullptr} |
| set_param_fn | set_param_ {nullptr} |
| get_param_fn | get_param_ {nullptr} |
| get_runparam_fn | get_runparam_ {nullptr} |
| get_data_fn | get_data_ {nullptr} |
| print_caller_fn | print_caller_ {nullptr} |
| artn_step_fn | artn_step_ {nullptr} |
| get_error_fn | get_error_ {nullptr} |
Friends | |
| class | Runtime |
Additional Inherited Members | |
| Public Types inherited from eonc::IARTnResource | |
| using | artn_create_fn = int (*)() |
| using | setup_artn_fn = void (*)(const int nat, bool *cerr) |
| using | artn_fn |
| using | artn_destroy_fn = void (*)() |
| using | set_param_fn |
| using | get_param_fn = int (*)(const char *name, void **cval) |
| pARTn bind(C) get_param / get_runparam: type(c_ptr), intent(out). | |
| using | get_runparam_fn = int (*)(const char *name, void **cval) |
| using | get_data_fn = int (*)(const char *name, void **cval) |
| using | print_caller_fn = void (*)() |
| using | artn_step_fn |
| using | get_error_fn = int (*)(void **cmsg) |
| Retrieve pARTn error code + c_malloc'd message pointer. | |
| Public Attributes inherited from eonc::IARTnResource | |
| std::mutex | library_mutex |
| Serializes access to the Fortran backend's shared global state. | |
| Protected Member Functions inherited from eonc::IARTnResource | |
| IARTnResource ()=default | |
Definition at line 98 of file ARTnResource.h.
|
override |
|
delete |
|
private |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
May be null on older pARTn builds that predate the C get_error wrapper; callers must null-check before dispatching.
Implements eonc::IARTnResource.
Definition at line 136 of file ARTnResource.h.
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
static |
Thread-safe singleton accessor (Meyer's pattern).
|
inlinenodiscardoverridevirtualnoexcept |
|
inlineprivate |
Try to load a symbol; returns nullptr on failure.
Definition at line 165 of file ARTnResource.h.
|
delete |
|
overridevirtual |
Throws std::runtime_error if libartn is not available.
Implements eonc::IARTnResource.
|
friend |
Definition at line 146 of file ARTnResource.h.
|
private |
Definition at line 154 of file ARTnResource.h.
|
private |
Definition at line 152 of file ARTnResource.h.
|
private |
Definition at line 155 of file ARTnResource.h.
|
private |
Definition at line 161 of file ARTnResource.h.
|
private |
Definition at line 159 of file ARTnResource.h.
|
private |
Definition at line 162 of file ARTnResource.h.
|
private |
Definition at line 157 of file ARTnResource.h.
|
private |
Definition at line 158 of file ARTnResource.h.
|
private |
Definition at line 149 of file ARTnResource.h.
|
private |
Definition at line 148 of file ARTnResource.h.
|
private |
Definition at line 160 of file ARTnResource.h.
|
private |
Definition at line 156 of file ARTnResource.h.
|
private |
Definition at line 153 of file ARTnResource.h.