Defines the Delay Object interface.
A Delay is an opaque object that contains a manually-controlled, temporally-delayed list of objects. A Delay cannot be an output of a kernel. Also, aging of a Delay (see vxAgeDelay) cannot be performed during graph execution. Supported delay object types include:
|
typedef struct _vx_delay * | vx_delay |
| The delay object. This is like a ring buffer of objects that is maintained by the OpenVX implementation. More...
|
|
◆ vx_delay
The delay object. This is like a ring buffer of objects that is maintained by the OpenVX implementation.
- See also
- vxCreateDelay
Definition at line 234 of file vx_types.h.
◆ vxQueryDelay()
Queries a vx_delay
object attribute [R00872].
- Parameters
-
[in] | delay | The reference to a delay object [R00873]. |
[in] | attribute | The attribute to query, use a Delay Attribute Constants value [R00874]. |
[out] | ptr | The location at which to store the resulting value [R00875]. |
[in] | size | The size of the container to which ptr points [R00876]. |
- Returns
- A
The vx_status Constants
value.
- Return values
-
VX_SUCCESS | No errors; any other value indicates failure [R00877]. |
VX_ERROR_INVALID_REFERENCE | delay is not a valid vx_delay reference. |
◆ vxReleaseDelay()
Releases a reference to a delay object [R00878]. The object may not be garbage collected until its total reference count is zero.
- Parameters
-
[in] | delay | The pointer to the delay object reference to release [R00879]. |
- Postcondition
- After returning from this function the reference is zeroed [R00880].
- Returns
- A
The vx_status Constants
value.
- Return values
-
VX_SUCCESS | No errors; any other value indicates failure [R00881]. |
VX_ERROR_INVALID_REFERENCE | delay is not a valid vx_delay reference. |
◆ vxCreateDelay()
Creates a Delay object [R00882].
This function creates a delay object with num_slots
slots [R00883]. Each slot contains a clone of the exemplar [R00884]. The clones only inherit the metadata of the exemplar [R00885]. The data content of the exemplar is ignored and the clones have their data is implementation-dependent at delay creation time. The function does not alter the exemplar [R00886]. Also, it doesn't retain or release the reference to the exemplar [R00887].
- Note
- For the definition of metadata attributes see vxSetMetaFormatAttribute.
- Parameters
-
[in] | context | The reference to the context [R00888]. |
[in] | exemplar | The exemplar object. Supported exemplar object types are:
|
[in] | num_slots | The number of objects in the delay [R00900]. |
- Returns
- A delay reference
vx_delay
[R00901]. Any possible errors preventing a successful creation should be checked using vxGetStatus
[R00902].
◆ vxGetReferenceFromDelay()
Retrieves a reference to a delay slot object [R00903].
- Parameters
-
[in] | delay | The reference to the delay object [R00904]. |
[in] | index | The index of the delay slot from which to extract the object reference [R00905]. |
- Returns
vx_reference
. Any possible errors preventing a successful completion of the function should be checked using vxGetStatus
[R00906].
- Note
- The delay index is in the range \( [-count+1,0] \) [R00907]. 0 is always the current object.
-
A reference retrieved with this function must not be given to its associated release API (e.g.
vxReleaseImage
) unless vxRetainReference
is used.
◆ vxAgeDelay()
Shifts the internal delay ring by one.
This function performs a shift of the internal delay ring by one. This means that, the data originally at index 0 move to index -1 and so forth until index \( -count+1 \) [R00908]. The data originally at index \( -count+1 \) move to index 0 [R00909]. Here \( count \) is the number of slots in delay ring. When a delay is aged, any graph making use of this delay (delay object itself or data objects in delay slots) gets its data automatically updated accordingly [R00910].
- Parameters
-
- Returns
- A
The vx_status Constants
value.
- Return values
-
VX_SUCCESS | Delay was aged; any other value indicates failure [R00912]. |
VX_ERROR_INVALID_REFERENCE | delay is not a valid vx_delay reference. |