wfdAcquireDestinationImageQNX()
Acquire an image from a destination
Synopsis:
#include <wfd/wfdext.h>
__errno_t wfdAcquireDestinationImageQNX(WFDDevice device, WFDDestinationQNX destination, const _Intptrt *attribList, WFDint *index_out)
Arguments:
- device
- A WFD device handle.
- destination
- A destination handle associated with device.
- attribList
-
NULL; or a pointer to an attribute list with pointer-sized values. Supported attributes:
WFD_TIMEOUT_ABS_MONOTONIC_QNX:
When used in a pointer-sized attribute list, its value is a pointer (cast tointptr_t
) to aconst struct timespec
declaring theCLOCK_MONOTONIC
time at which the blocking call should stop waiting. Alternately, one of the following special integer values can be specified: 0 means the call should not block; -1 or (intptr_t)WFD_FOREVER indicates it should not time out.WFD_WRITEBACK_SEQUENCE_NUMBER_QNX:
When used in a pointer-sized attribute list, its value is a pointer (cast tointptr_t
) to anunsigned int
where the driver writes the sequence number of any returned frame.
- index_out
- A pointer to a location where this function will, on success, store the index of the acquired image. This is the 0-based index within the array used to create the destination.
Library:
libWFDclientDescription:
By default, the function will block while writeback is active until an image is provided by the driver. A timeout can be given to override this. Deactivating writeback, e.g. by detaching the destination from the port, will wake up any blocked clients.
The returned image is not used by the driver in connection with the specified destination until wfdReleaseDestinationImageQNX() is called.
This might not work with destinations from the old WFD_QNX_write_back
extension. Use WFD_QNX_destination_create_from_images
instead.
This function does not affect values returned by wfdGetError()
.
Note:
{Drivers may need to hold onto one or more buffers while writeback is active, and so may return EBUSY if the client tries to acquire too many without releasing them.}
Returns:
- EOK
-
Success;
*index_out
was filled.
- EBUSY
- Too many buffers are in use by the client.
- ECANCELED
- Writeback is disabled.
- EINVAL
- An invalid parameter value was specified.
- ENOENT
- A bad handle was specified.
- ENOTSUP
- An unsupported attribute was provided.
- ETIMEDOUT
- The timeout was reached.
Page updated: