#include <iimgenc1.h>
Collaboration diagram for IIMGENC1_Fxns:
Data Fields | |
IALG_Fxns | ialg |
XDAS_Int32(* | process )(IIMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs) |
Basic image encoding call. | |
XDAS_Int32(* | control )(IIMGENC1_Handle handle, IIMGENC1_Cmd id, IIMGENC1_DynamicParams *params, IIMGENC1_Status *status) |
Control behaviour of an algorithm. |
XDAS_Int32(* IIMGENC1_Fxns::process)(IIMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs) |
Basic image encoding call.
[in] | handle | Handle to an algorithm instance. |
[in,out] | inBufs | Input buffer descriptors. |
[in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers. |
[in] | inArgs | Input arguments. This is a required parameter. |
[out] | outArgs | Ouput results. This is a required parameter. |
handle
must be a valid algorithm instance handle.
inArgs
must not be NULL, and must point to a valid IIMGENC1_InArgs structure.
outArgs
must not be NULL, and must point to a valid IIMGENC1_OutArgs structure.
inBufs
must not be NULL, and must point to a valid XDM1_BufDesc structure.
inBufs->descs
[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs
[0].bufSize bytes in length.
outBufs
must not be NULL, and must point to a valid XDM1_BufDesc structure.
outBufs->descs
[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs
[0].bufSize bytes in length.
The buffers in inBufs
and outBufs
are physically contiguous and owned by the calling application.
inArgs
.
The algorithm must not modify the contents of inBufs
, with the exception of inBufs.descs
[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must appropriately set/clear the XDM1_BufDesc::descs
[].accessMask field in both inBufs
and outBufs
. For example, if the algorithm only read from inBufs.descs
[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask
fields. The application may utilize these returned values to appropriately manage cache.
The buffers in inBufs
and outBufs
are owned by the calling application.
IIMGENC1_EOK | Success. | |
IIMGENC1_EFAIL | General failure. See IIMGENC1_Status::extendedError for more detailed further error conditions. | |
IIMGENC1_EUNSUPPORTED | Request is unsupported. |
XDAS_Int32(* IIMGENC1_Fxns::control)(IIMGENC1_Handle handle, IIMGENC1_Cmd id, IIMGENC1_DynamicParams *params, IIMGENC1_Status *status) |
Control behaviour of an algorithm.
[in] | handle | Handle to an algorithm instance. |
[in] | id | Command id. See XDM_CmdId. |
[in] | params | Dynamic parameters. This is a required parameter. |
[out] | status | Output results. This is a required parameter. |
handle
must be a valid algorithm instance handle.
params
must not be NULL, and must point to a valid IIMGENC1_DynamicParams structure.
status
must not be NULL, and must point to a valid IIMGENC1_Status structure.
If a buffer is provided in the status->data
field, it must be physically contiguous and owned by the calling application.
params
. That is, the data pointed to by this parameter must be treated as read-only.
If a buffer was provided in the status->data
field, it is owned by the calling application.
IIMGENC1_EOK | Success. | |
IIMGENC1_EFAIL | General failure. See IIMGDEN1_Status::extendedError for more detailed further error conditions. | |
IIMGENC1_EUNSUPPORTED | Request is unsupported. |