#include <IRAResource.h>
Public Member Functions | |
| bool | is_loaded () const noexcept override |
| void | require_loaded () override |
| Throws std::runtime_error if libira is not available. | |
| libira_match_fn | get_match_fn () const override |
| libira_cshda_pbc_fn | get_cshda_pbc_fn () const override |
| libira_compute_all_fn | get_compute_all_fn () const override |
| libira_get_nmax_fn | get_get_nmax_fn () const override |
| ~IRAResource () override | |
| IRAResource (const IRAResource &)=delete | |
| IRAResource & | operator= (const IRAResource &)=delete |
| Public Member Functions inherited from eonc::IIRAResource | |
| virtual | ~IIRAResource ()=default |
| IIRAResource (const IIRAResource &)=delete | |
| IIRAResource & | operator= (const IIRAResource &)=delete |
Static Public Member Functions | |
| static IRAResource & | instance () |
| Thread-safe singleton accessor (Meyer's pattern). | |
Private Member Functions | |
| IRAResource () | |
| 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 {} |
| libira_match_fn | libira_match_ {nullptr} |
| libira_cshda_pbc_fn | libira_cshda_pbc_ {nullptr} |
| libira_compute_all_fn | libira_compute_all_ {nullptr} |
| libira_get_nmax_fn | libira_get_nmax_ {nullptr} |
Friends | |
| class | Runtime |
Additional Inherited Members | |
| Public Types inherited from eonc::IIRAResource | |
| using | libira_match_fn |
| using | libira_cshda_pbc_fn |
| using | libira_compute_all_fn |
| using | libira_get_nmax_fn = int (*)() |
| Public Attributes inherited from eonc::IIRAResource | |
| std::mutex | library_mutex |
| Serializes access to the Fortran backend's shared global state. | |
| Protected Member Functions inherited from eonc::IIRAResource | |
| IIRAResource ()=default | |
Definition at line 80 of file IRAResource.h.
|
override |
|
delete |
|
private |
|
inlinenodiscardoverridevirtual |
Implements eonc::IIRAResource.
Definition at line 96 of file IRAResource.h.
|
inlinenodiscardoverridevirtual |
Implements eonc::IIRAResource.
Definition at line 93 of file IRAResource.h.
|
inlinenodiscardoverridevirtual |
|
inlinenodiscardoverridevirtual |
|
static |
Thread-safe singleton accessor (Meyer's pattern).
|
inlinenodiscardoverridevirtualnoexcept |
|
inlineprivate |
Try to load a symbol; returns nullptr on failure.
Definition at line 121 of file IRAResource.h.
|
delete |
|
overridevirtual |
Throws std::runtime_error if libira is not available.
Implements eonc::IIRAResource.
|
friend |
Definition at line 109 of file IRAResource.h.
|
private |
Definition at line 117 of file IRAResource.h.
|
private |
Definition at line 116 of file IRAResource.h.
|
private |
Definition at line 118 of file IRAResource.h.
|
private |
Definition at line 115 of file IRAResource.h.
|
private |
Definition at line 112 of file IRAResource.h.
|
private |
Definition at line 111 of file IRAResource.h.