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.