next up previous contents index
Next: 4.10.11 nxn Up: 4.10 Classes Previous: 4.10.9 nxa   Contents   Index

Subsections


4.10.10 nxm

The nxm class provides basic loadable module functionality.

4.10.10.1 API

cw_nxn_t nxm_new(cw_nxo_t *a_nxo, cw_nxo_t *a_path, cw_nxo_t *a_sym):

Input(s):
a_nxo:
Pointer to space for a handle nxo.
a_path:
Pointer to a string nxo that specifies the path to a module.
a_sym:
Pointer to a string nxo that specifies a symbol in the module at a_path.
Output(s):
retval:
NXN_ZERO:
Success.
NXN_invalidfileaccess:
Unable to open a module at a_path.
NXN_undefined:
A symbol named a_sym was not found in the module.
a_nxo:
A handle nxo, with its evaluation function set to the specified symbol.
Exception(s):
CW_ONYXX_OOM.
Description:
Open the module at a_path, and create a handle with its evaluation function set to the symbol specified by a_sym. The module will remain loaded until the handle nxo is swept by the garbage collector.
uint32_t nxm_iter_get(cw_nxo_t *a_nxo):

Input(s):
a_nxo:
Pointer to a handle nxo that was constructed by nxm_new().
Output(s):
retval:
Garbage collector sweep iteration during which a_nxo will be deleted.
Exception(s):
None.
Description:
Get the garbage collector sweep iteration during which a_nxo will be deleted. By default, this is 1, but it can be changed by nxm_iter_set().
void nxm_iter_set(cw_nxo_t *a_nxo, uint32_t a_iter):

Input(s):
a_nxo:
Pointer to a handle nxo that was constructed by nxm_new().
a_iter:
Garbage collector sweep iteration during which a_nxo will be deleted.
Output(s):
None.
Exception(s):
None.
Description:
Set the garbage collector sweep iteration during which a_nxo will be deleted.
void * nxm_pre_unload_hook_get(cw_nxo_t *a_nxo):

Input(s):
a_nxo:
Pointer to a handle nxo that was constructed by nxm_new().
Output(s):
retval:
A function pointer, or NULL. If non-NULL, the function will be called just before the module is unloaded.
Exception(s):
None.
Description:
Get the pre-unload hook function associated with a_nxo.
void nxm_pre_unload_hook_set(cw_nxo_t *a_nxo, void (*a_pre_unload_hook)(void)):

Input(s):
a_nxo:
Pointer to a handle nxo that was constructed by nxm_new().
a_pre_unload_hook:
A function pointer, or NULL. If non-NULL, the function will be called just before the module is unloaded.
Output(s):
None.
Exception(s):
None.
Description:
Set the pre-unload hook function associated with a_nxo.


next up previous contents index
Next: 4.10.11 nxn Up: 4.10 Classes Previous: 4.10.9 nxa   Contents   Index
Jason Evans 2005-03-16