The DCX$EXPAND_INIT routine initializes the context area for the expansion of data records. Format DCX$EXPAND_INIT context ,map
1 – Returns
OpenVMS usage:cond_value type: longword (unsigned) access: write only mechanism: by value Longword condition value. Most utility routines return a condition value in R0. Condition values that this routine can return are listed under Condition Values Returned.
2 – Arguments
context OpenVMS usage:context type: longword (unsigned) access: write only mechanism: by reference Value identifying the data stream that DCX$EXPAND_INIT initializes. The context argument is the address of a longword containing this value. After DCX$EXPAND_INIT initializes this context value, you should not modify it. You can define multiple context arguments to identify multiple data streams that are processed simultaneously. map OpenVMS usage:address type: longword (unsigned) access: read only mechanism: by reference Compression/expansion function (created by DCX$MAKE_MAP). The map argument is the address of the compression/expansion function's virtual address. The map argument must remain at this address until data expansion is completed and context is deleted by means of a call to DCX$EXPAND_DONE.
3 – Description
The DCX$EXPAND_INIT routine initializes the context area for the expansion of data records. Call the DCX$EXPAND_INIT routine as the first step in the expansion (or restoration) of compressed data records to their original state. Before you call DCX$EXPAND_INIT, read the length of the compressed file from the compression/expansion function (the map). Invoke LIB$GET_VM to get the necessary amount of storage for the function. LIB$GET_VM returns the address of the first byte of the storage area.
4 – Condition Values Returned
DCX$_INVMAP Error; invalid map. The map argument was not specified correctly, or the context area is invalid. DCX$_NORMAL Normal successful completion. This routine also returns any condition values returned by LIB$GET_VM.