PhGetTransportVectors()

Build an I/O vector of data to be transported

Synopsis:

iov_t * PhGetTransportVectors(
           PhTransportCtrl_t *trans_ctrl,
           int num_hdr_vectors,
           int unsigned *num_vectors,
           int unsigned *size );

Library:

ph

Description:

This function builds an array of I/O vectors from the linked list of packed data belonging to the transport-control structure pointed to by trans_ctrl.

The num_hdr_vectors argument specifies the number of vectors to reserve at the beginning of the array. These entries can be used for headers suitable for sending to the destination of the transport operation.

The variable pointed to by num_vectors is set to the number of entries in the array, including the reserved ones. The variable pointed to by size is set to the size of the array, excluding the size of the reserved entries.

Returns:

A pointer to the array of I/O vectors, or NULL if there wasn't enough memory to allocate it.

Classification:

Photon

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

PhCreateTransportCtrl(), PhGetNextInlineData(), PhPackEntry(), PhPackType(), PhTransportCtrl_t, PhTransportLink_t, PhTransportType()

Drag and Drop chapter of the Photon Programmer's Guide