Can assume the value of a generic C pointer (i.e., a pointer of unspecified type).
TYPE Ora_Ffi.Pointertype;
/* This example uses Ora_Ffi.Pointertype */
PACKAGE imglib IS
/* Declare Function get_image which
returns a generic C pointer. */
FUNCTION get_image(ikey IN OUT VARCHAR2)
RETURN Ora_Ffi.Pointertype ;
/* Declare Procedure show_image with parameter
idata which is a generic C pointer.*/
PROCEDURE show_image(idata Ora_Ffi.Pointertype,
iscale NUMBER);
END;
...
PROCEDURE display_image(keywrd IN OUT VARCHAR2) IS
/* Declare img_ptr as a generic C pointer type */
img_ptr Ora_Ffi.Pointertype;
BEGIN
img_ptr := imglib.get_image(keywrd);
imglib.show_image(img_ptr,2);
END;