Explicitly allocating an LO handle
You can explicitly allocate an LO handle in either of the following
ways:
- Dynamically, with one of the DataBlade
API memory-management
functions such as mi_alloc():
MI_LO_HANDLE *LO_hdl = mi_alloc(sizeof(MI_LO_HANDLE));
- On the stack, with a direct declaration:
MI_LO_HANDLE my_LOhndl; MI_LO_HANDLE *LO_hndl2 = &my_LOhndl;
However, this LO handle is still an opaque C data structure; that
is, it is declared as a flat array of undifferentiated bytes and its
fields are not available to the DataBlade
API module.
Important: The LO handle structure is the only smart-large-object
structure that a DataBlade
API module
can allocate directly. You must allocate other smart-large-object
data type structures, such as the LO-specification structure and the
LO-status structure, with the appropriate DataBlade
API constructor function.