![]() |
![]() |
Codec Engine Application Programming Interface (API)
ce-w08
|
Defines all of the operations on IIMGDEC1 objects. More...
#include <iimgdec1.h>
Data Fields | |
IALG_Fxns | ialg |
XDAS_Int32(* | process )(IIMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGDEC1_InArgs *inArgs, IIMGDEC1_OutArgs *outArgs) |
Basic image decoding call. | |
XDAS_Int32(* | control )(IIMGDEC1_Handle handle, IIMGDEC1_Cmd id, IIMGDEC1_DynamicParams *params, IIMGDEC1_Status *status) |
Control behaviour of an algorithm. |
Defines all of the operations on IIMGDEC1 objects.
IALG_Fxns IIMGDEC1_Fxns::ialg |
XDAIS algorithm interface.
@sa IALG_Fxns
XDAS_Int32(* IIMGDEC1_Fxns::process)(IIMGDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGDEC1_InArgs *inArgs, IIMGDEC1_OutArgs *outArgs) |
Basic image decoding call.
@param[in] handle Handle to an algorithm instance. @param[in,out] inBufs Input buffer descriptors. @param[in,out] outBufs Output buffer descriptors. The algorithm may modify the output buffer pointers. @param[in] inArgs Input arguments. This is a required parameter. @param[out] outArgs Ouput results. This is a required parameter. @remarks process() is a blocking call. When process() returns, the algorithm's processing is complete. @pre @c handle must be a valid algorithm instance handle. @pre @c inArgs must not be NULL, and must point to a valid IIMGDEC1_InArgs structure. @pre @c outArgs must not be NULL, and must point to a valid IIMGDEC1_OutArgs structure. @pre @c inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure. @pre @c inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least @c inBufs->descs[0].bufSize bytes in length. @pre @c outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure. @pre @c outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least @c outBufs->descs[0].bufSize bytes in length. @pre The buffers in @c inBufs and @c outBufs are physically contiguous and owned by the calling application. @post The algorithm <b>must not</b> modify the contents of @c inArgs. @post The algorithm <b>must not</b> modify the contents of @c inBufs, with the exception of @c inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only. @post The algorithm <b>must</b> appropriately set/clear the @c XDM1_BufDesc::descs[].accessMask field in both @c inBufs and @c outBufs. For example, if the algorithm only read from @c inBufs.descs[0].buf using the algorithm processor, it could utilize #XDM_SETACCESSMODE_READ to update the appropriate @c accessMask fields. The application <i>may</i> utilize these returned values to appropriately manage cache. @post The buffers in @c inBufs and @c outBufs are owned by the calling application. @retval IIMGDEC1_EOK \copybrief IIMGDEC1_EOK
Success.
IIMGDEC1_EFAIL | General failure. See IIMGDEC1_Status::extendedError for more detailed further error conditions. |
IIMGDEC1_EUNSUPPORTED | Request is unsupported. |
XDAS_Int32(* IIMGDEC1_Fxns::control)(IIMGDEC1_Handle handle, IIMGDEC1_Cmd id, IIMGDEC1_DynamicParams *params, IIMGDEC1_Status *status) |
Control behaviour of an algorithm.
@param[in] handle Handle to an algorithm instance. @param[in] id Command id. See #XDM_CmdId. @param[in] params Dynamic parameters. This is a required parameter. @param[out] status Output results. This is a required parameter. @pre @c handle must be a valid algorithm instance handle. @pre @c params must not be NULL, and must point to a valid IIMGDEC1_DynamicParams structure. @pre @c status must not be NULL, and must point to a valid IIMGDEC1_Status structure. @pre If a buffer is provided in the @c status->data field, it must be physically contiguous and owned by the calling application. @post The algorithm <b>must not</b> modify the contents of @c params. That is, the data pointed to by this parameter must be treated as read-only. @post If a buffer was provided in the @c status->data field, it is owned by the calling application. @retval IIMGDEC1_EOK \copybrief IIMGDEC1_EOK
Success.
IIMGDEC1_EFAIL | General failure. See IIMGDEC1_Status::extendedError for more detailed further error conditions. |
IIMGDEC1_EUNSUPPORTED | Request is unsupported. |