XDAIS  dais-x04
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields
IVIDANALYTICS_Fxns Struct Reference

Defines all of the operations on IVIDANALYTICS objects. More...

#include <ividanalytics.h>

Collaboration diagram for IVIDANALYTICS_Fxns:
Collaboration graph

Data Fields

IALG_Fxns ialg
XDAS_Int32(* process )(IVIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)
 Basic video decoding call.
XDAS_Int32(* control )(IVIDANALYTICS_Handle handle, IVIDANALYTICS_Cmd id, IVIDANALYTICS_DynamicParams *params, IVIDANALYTICS_Status *status)
 Control behavior of an algorithm.

Detailed Description

Defines all of the operations on IVIDANALYTICS objects.


Field Documentation

IALG_Fxns IVIDANALYTICS_Fxns::ialg

XDAIS algorithm interface.

See also:
IALG_Fxns
XDAS_Int32(* IVIDANALYTICS_Fxns::process)(IVIDANALYTICS_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IVIDANALYTICS_InArgs *inArgs, IVIDANALYTICS_OutArgs *outArgs)

Basic video decoding call.

Parameters:
[in]handleHandle to an algorithm instance.
[in,out]inBufsInput buffer descriptors.
[in,out]outBufsOutput buffer descriptors. The algorithm may modify the output buffer pointers.
[in]inArgsInput arguments. This is a required parameter.
[out]outArgsOuput results. This is a required parameter.
Remarks:
process() is a blocking call. When process() returns, the algorithm's processing is complete.
Precondition:
inBufs->numBufs will indicate the total number of input buffers supplied for input frame.
inArgs must not be NULL, and must point to a valid IVIDANALYTICS_InArgs structure.
outArgs must not be NULL, and must point to a valid IVIDANALYTICS_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.
Postcondition:
The algorithm must not modify the contents of inArgs.
The algorithm must not modify the contents of inBufs, with the exception of inBufs.bufDesc[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
The algorithm must modify the contents of inBufs->descs[].accessMask and appropriately indicate the mode in which each of the buffers in inBufs were read. 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.
Return values:
IVIDANALYTICS_EOKSuccess.
IVIDANALYTICS_EFAILGeneral failure. See IVIDANALYTICS_Status::extendedError for more detailed further error conditions.
IVIDANALYTICS_EUNSUPPORTEDRequest is unsupported.
XDAS_Int32(* IVIDANALYTICS_Fxns::control)(IVIDANALYTICS_Handle handle, IVIDANALYTICS_Cmd id, IVIDANALYTICS_DynamicParams *params, IVIDANALYTICS_Status *status)

Control behavior of an algorithm.

Parameters:
[in]handleHandle to an algorithm instance.
[in]idCommand id. See XDM_CmdId.
[in]paramsDynamic parameters. This is a required parameter.
[out]statusOutput results. This is a required parameter.
Precondition:
handle must be a valid algorithm instance handle.
params must not be NULL, and must point to a valid IVIDANALYTICS_DynamicParams structure.
status must not be NULL, and must point to a valid IVIDANALYTICS_Status structure.
If a buffer is provided in the status->data field, it must be physically contiguous and owned by the calling application.
Postcondition:
The algorithm must not modify the contents of 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.
Return values:
IVIDANALYTICS_EOKSuccess.
IVIDANALYTICS_EFAILGeneral failure. See IVIDANALYTICS_Status::extendedError for more detailed further error conditions.
IVIDANALYTICS_EUNSUPPORTEDRequest is unsupported.

The documentation for this struct was generated from the following file:
Copyright 2013, Texas Instruments Incorporated