Dxx_reclaim
Application Program Interface
2-79
Dxx_reclaim is used in conjunction with Dxx_issue to operate a stream.
The Dxx_issue call sends a buffer to a stream, and the Dxx_reclaim
retrieves a buffer from a stream. Dxx_issue performs processing for
output streams, and provides empty frames for input streams. The
Dxx_reclaim recovers empty frames in output streams, and retrieves full
frames and performs processing for input streams.
SIO_reclaim calls Dxx_reclaim, then it gets the frame from the
device->fromdevice queue.
In a stacking device, Dxx_reclaim must preserve all information in the
DEV_Frame object except link and misc. On a device opened for
DEV_INPUT, Dxx_reclaim should preserve the buffer data (transformed
as necessary), the size (adjusted as appropriate by the transform), and
the arg field. On a device opened for DEV_OUTPUT, Dxx_reclaim should
preserve the size and the arg field. The DEV_Frame objects themselves
do not need to be preserved, only the information they contain.
Dxx_reclaim must preserve buffers sent to the device. Dxx_reclaim
should never return a buffer that was not received from the client through
the Dxx_issue call. Dxx_reclaim always preserves the ordering of the
buffers sent to the device, and returns with the oldest buffer that was
issued to the device.
Constraints and
Calling Context
❏
device must be bound to a device by a prior call to Dxx_open.
See Also