The ITMVDesc class

The ITMVDesc structure is not an operation class, but a descriptor that holds the instance information necessary to create a value object. The ITMVDesc structure is passed to the factory constructor function when an object of a given server type is retrieved from the server and loaded into the application.

This structure contains the following individual members.
Member Description
long vf_datalength Data length in bytes, pointed to by the member data pointer vf_data.
ITConnection *vf_connection Pointer to the connection object.
int vf_libmivaluetype Return value of the call to a DataBlade® API function call [mi_value(...)]; see the Informix® DataBlade API Programmer's Guide for complete documentation of DataBlade API function calls.
char *vf_data Points to the datum underlying the value object. For example, for the server type lvarchar, vf_data points to the MI_LVARCHAR structure.
ITypeInfo *vf_origtypeinfo Points to the ITTypeInfo object for the value object.
ITEssential *vf_outerunknown Points to the IUnknown interface of the object that is the controlling unknown for the object delegation/aggregation process.

Value is NULL if there is no controlling unknown.

The vf_outerunknown member is assigned the value of the inner unknown of the object when ITMVDesc * is passed to the entry point function MakeValue(ITMVDesc *), which is implemented by the value object developer.

ITPreserveData *vf_preservedata Can point to the ITPreserveData interface of an object that manages the datum memory.

For a detailed description of the vf_preservedata member and its use, see Value objects and connection events.