Data Fields

IRES_HDVICP2_Obj Struct Reference
[IRES HDVICP2 Protocol (Beta)]

IRES_HDVICP2_Obj extends the generic IRES_Obj structure that is returned back to the algorithm requesting the resource. More...

#include <ires_hdvicp2.h>

Collaboration diagram for IRES_HDVICP2_Obj:
Collaboration graph
[legend]

Data Fields

IRES_Obj ires
Void * info
XDAS_Int32 id
XDAS_VoidregisterBaseAddress
XDAS_VoidmemoryBaseAddress
XDAS_VoidresetControlAddress
XDAS_Void(* acquire )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this, IRES_YieldContext *yieldCtxt, XDAS_UInt32 *hdvicp2Status, XDAS_UInt32 *configurationId, XDAS_Int32 lateAcquireArg)
 Acquire the HDVICP2 resource.
XDAS_Void(* release )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this)
XDAS_UInt32(* reacquireIfOwner )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this)
XDAS_Void(* configure )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this, IRES_HDVICP2_CallbackFxn cbFunctionPtr, XDAS_Void *cbArgs)
XDAS_UInt32(* wait )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this, IRES_YieldContext *yieldCtxt)
XDAS_Void(* done )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this)
XDAS_UInt32(* reset )(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this)

Detailed Description

IRES_HDVICP2_Obj extends the generic IRES_Obj structure that is returned back to the algorithm requesting the resource.


Field Documentation

RSVD for future use

ID of the HDVICP2 being granted, could be 0,1,2, or LATE_ACQUIRE

Reg. space base addr

Mem. Space base addr

HDVICP reset controller address, bit 0 -> ICONT1 reset bit 1 -> ICONT2 reset

XDAS_Void(* IRES_HDVICP2_Obj::acquire)(IALG_Handle algHandle, struct IRES_HDVICP2_Obj *this, IRES_YieldContext *yieldCtxt, XDAS_UInt32 *hdvicp2Status, XDAS_UInt32 *configurationId, XDAS_Int32 lateAcquireArg)

Acquire the HDVICP2 resource.

Remarks:
This call acquires the HDVICP resource which the alg may (or maynot) have specifically requested.
The returned hdvicp2Status indicates the status of the particular HDVICP2 unit that is returned.
See also:
IRES_HDVICP2_Status
Remarks:
The configurationId argument is a codec specified parameter that is both an input and output parameter. It specifies the mode in which this particular HDVICP2 was used last time, and the mode in which it will be used this time.
This API takes a yieldContext as argument, as it may yield the processor to higher priority codecs in the system.
lateAcquireId is an optionally framework supplied parameter (sometimes provided via an XDM control() call setting the XDM_SETLATEACQUIREARG. If not supplied, the codec should pass the value IRES_HDVICP2_UNKNOWNLATEACQUIREARG.
See also:
IRES_HDVICP2_UNKNOWNLATEACQUIREARG

Call to release the HDVICP resource being used, to make it available for use by other algs.

Call to reacquire an HDVICP resource, that the alg had previous JIT acquired and released. XDAS_TRUE is returned alongwith a valid resource handle if the resource is still active. If resource has already been deactivated XDAS_FALSE is returned

Call to configure the HDVICP2 instance, to process data.

Waits for the HDVICP2 to return after processing data. Takes a yieldContext as argument, as it will relinquish the processor while it waits for the HDVICP2 to finish the processing and return from wait. This is a blocking call unless a positive timeout_ms value is passed, in which case the call returns within timeout_ms miliseconds with a 'XDAS_TRUE' indicating successful completion or 'XDAS_FALSE' indicating a 'timeout' condition.

Framework supplied function to be called by the codec when it acquired HDVICP2 when the resource is full dirty mode (i.e. data as well as program reload). Possible return values XDAS_TRUE or XDAS_FALSE.


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Copyright 2012, Texas Instruments Incorporated