|
#define | GATE_LIBRARY_EXPORT GATE_API_EXPORT |
|
#define | GATE_LIBRARY_IMPORT GATE_API_IMPORT |
|
#define | GATE_LIBRARY_LOCAL GATE_API_LOCAL |
|
#define | GATE_LIBRARY_FLAG_DEFAULT 0x0000 |
| Library is opened in a platform-default mode.
|
|
#define | GATE_LIBRARY_FLAG_LOCAL 0x0001 |
| Library is opened in local mode (POSIX), opposite of global mode.
|
|
#define | GATE_LIBRARY_FLAG_DATA 0x0002 |
| Library is loaded for data symbols only, code functions may not be available.
|
|
#define | GATE_LIBRARY_LIB_RESULT gate_result_t |
|
#define | GATE_LIBRARY_LIB_INIT_FUNCTION gate_lib_init |
|
#define | GATE_LIBRARY_LIB_INIT_NAME GATE_MACRO_TO_STRING(GATE_LIBRARY_LIB_INIT_FUNCTION) |
|
#define | GATE_LIBRARY_LIB_INIT_SIGNATURE void |
|
#define | GATE_LIBARRY_LIB_INIT_PROTOTYPE GATE_LIBRARY_LIB_RESULT GATE_LIBRARY_LIB_INIT_FUNCTION ( GATE_LIBRARY_LIB_INIT_SIGNATURE ) |
|
#define | GATE_LIBRARY_LIB_UNINIT_FUNCTION gate_lib_uninit |
|
#define | GATE_LIBRARY_LIB_UNINIT_NAME GATE_MACRO_TO_STRING(GATE_LIBRARY_LIB_UNINIT_FUNCTION) |
|
#define | GATE_LIBRARY_LIB_UNINIT_SIGNATURE void |
|
#define | GATE_LIBARRY_LIB_UNINIT_PROTOTYPE GATE_LIBRARY_LIB_RESULT GATE_LIBRARY_LIB_UNINIT_FUNCTION ( GATE_LIBRARY_LIB_UNINIT_SIGNATURE ) |
|
#define | GATE_LIBRARY_LIB_GET_INFO_FUNCTION gate_lib_get_info |
|
#define | GATE_LIBRARY_LIB_GET_INFO_NAME GATE_MACRO_TO_STRING(GATE_LIBRARY_LIB_GET_INFO_FUNCTION) |
|
#define | GATE_LIBRARY_LIB_GET_INFO_SIGNATURE gate_uint32_t info_type, void* ptr_buffer, gate_size_t buffer_length, gate_size_t* buffer_used |
|
#define | GATE_LIBARRY_LIB_GET_INFO_PROTOTYPE GATE_LIBRARY_LIB_RESULT GATE_LIBRARY_LIB_GET_INFO_FUNCTION ( GATE_LIBRARY_LIB_GET_INFO_SIGNATURE ) |
|
#define | GATE_LIBRARY_LIB_CREATE_OBJECT_FUNCTION gate_lib_create_object |
|
#define | GATE_LIBRARY_LIB_CREATE_OBJECT_NAME GATE_MACRO_TO_STRING(GATE_LIBRARY_LIB_CREATE_OBJECT_FUNCTION) |
|
#define | GATE_LIBRARY_LIB_CREATE_OBJECT_SIGNATURE char const* class_id, void* parameter, gate_object_t** ptr_to_ptrobject |
|
#define | GATE_LIBARRY_LIB_CREATE_OBJECT_PROTOTYPE GATE_LIBRARY_LIB_RESULT GATE_LIBRARY_LIB_CREATE_OBJECT_FUNCTION ( GATE_LIBRARY_LIB_CREATE_OBJECT_SIGNATURE ) |
|
|
typedef void * | gate_library_t |
| gate_library_t shared library handle
|
|
typedef int(* | gate_library_function_t) (int) |
| gate_library_function_t generic C function used as default datatype for all library functions
|
|
typedef GATE_LIBRARY_LIB_RESULT(* | gate_lib_init_t) (GATE_LIBRARY_LIB_INIT_SIGNATURE) |
|
typedef GATE_LIBRARY_LIB_RESULT(* | gate_lib_uninit_t) (GATE_LIBRARY_LIB_UNINIT_SIGNATURE) |
|
typedef GATE_LIBRARY_LIB_RESULT(* | gate_lib_get_info_t) (GATE_LIBRARY_LIB_GET_INFO_SIGNATURE) |
|
typedef GATE_LIBRARY_LIB_RESULT(* | gate_lib_create_object_t) (GATE_LIBRARY_LIB_CREATE_OBJECT_SIGNATURE) |
|
|
GATE_CORE_API gate_result_t | gate_library_open (gate_string_t const *path, gate_library_t *lib, gate_uint32_t flags) |
| Opens a shared library (DLL or SO) and generates a library handle.
|
|
GATE_CORE_API gate_result_t | gate_library_close (gate_library_t lib) |
|
GATE_CORE_API gate_result_t | gate_library_get_function (gate_library_t lib, gate_string_t const *entryname, gate_library_function_t *ptr_func) |
| Loads a function by its name and returns a pointer to it.
|
|
GATE_CORE_API gate_result_t | gate_library_get_data (gate_library_t lib, gate_string_t const *entryname, void **ptr_data) |
| Loads a data value by its name and returns a pointer to it.
|
|
GATE_CORE_API gate_result_t | gate_library_get_function_name (gate_library_t lib, char const *funcname, void *ptr_func) |
| Loads a function by its c-string name and returns a pointer to it.
|
|
GATE_CORE_API gate_result_t | gate_library_get_data_name (gate_library_t lib, char const *entryname, void *ptr_data) |
| Loads a data value by its c-string name and returns a pointer to it.
|
|
Controls access to shared libraries (DLL or SO)