Descriptor for an alg. This object can be passed to Engine_addAlg()
, to dynamically add an alg to an engine.
More...
#include <Engine.h>
Data Fields | |
String | name |
The name of the algorithm. This is used by the application when instantiating an instance of the algorithm through one of the VISA APIs. | |
NODE_Uuid | uuid |
IALG_Fxns * | fxns |
The address of the XDAIS alg function table. All XDAIS algorithms must define an IALG_Fxns structure that contains implementations of the IALG methods. This field is simply the address of this structure. | |
Ptr | idmaFxns |
The address of the IDMA3_Fxns function table, if the algorithm uses DMA. If the algorithm does not use DMA, this field should set to NULL. | |
String * | typeTab |
Bool | isLocal |
If true, the algorithm will be instantiated on the "local" CPU. Otherwise the server will create an instance of the algorithm. | |
Int | groupId |
This id specifies which resource sharing group that this alg will be placed into. This 'group' concept is used by the framework to ensure algorithms in the same group don't pre-empt each other and corrupt the shared resources. This parameter will be ignored if isLocal is FALSE. | |
Int | rpcProtocolVersion |
Ptr | iresFxns |
Address of the XDAIS alg IRES Interface function table All XDAIS algorithms that use an IRES resource must define an IRES_Fxns structure containing the pointers to functions implementatng the IRES interface. If the algorithm does not use an IRES resource this field should be set to NULL. | |
Void * | codecClassConfig |
Codec class configuration data, if any. | |
Engine_CachedMemType | memType |
Indicates the type of memory the alg's memory requests will be allocated from. The alg's memory will be allocated from cached memory, if memType = Engine_USECACHEDMEM_CACHED, from non-cached memory, if memType = Engine_USECACHEDMEM_NONCACHED, Otherwise, if memType = Engine_USECACHEDMEM_DEFAULT, memory allocations will be determined by the value of ti_sdo_ce_alg_Algorithm_useCache (cached, if TRUE, non-cached, if FALSE). | |
String | types |
A string idicating the type(s) of algorithm this is. This should be a ';' separated string of inherited types. In most cases, types will just be set to the VISA type defined in the Codec Engine algorithm interface header file included by the algorithm, depending on the XDM interface the algorithm implements. |
Descriptor for an alg. This object can be passed to Engine_addAlg()
, to dynamically add an alg to an engine.
String Engine_AlgDesc::name |
The name of the algorithm. This is used by the application when instantiating an instance of the algorithm through one of the VISA APIs.
NODE_Uuid Engine_AlgDesc::uuid |
Id of alg if running on remote target. No need to set this field.
The address of the XDAIS alg function table. All XDAIS algorithms must define an IALG_Fxns structure that contains implementations of the IALG methods. This field is simply the address of this structure.
The address of the IDMA3_Fxns function table, if the algorithm uses DMA. If the algorithm does not use DMA, this field should set to NULL.
String* Engine_AlgDesc::typeTab |
inheritance hierarchy - Do not modify.
If true, the algorithm will be instantiated on the "local" CPU. Otherwise the server will create an instance of the algorithm.
This id specifies which resource sharing group that this alg will be placed into. This 'group' concept is used by the framework to ensure algorithms in the same group don't pre-empt each other and corrupt the shared resources. This parameter will be ignored if isLocal
is FALSE.
Protocol version. Do not modify
Address of the XDAIS alg IRES Interface function table All XDAIS algorithms that use an IRES resource must define an IRES_Fxns structure containing the pointers to functions implementatng the IRES interface. If the algorithm does not use an IRES resource this field should be set to NULL.
Codec class configuration data, if any.
Indicates the type of memory the alg's memory requests will be allocated from. The alg's memory will be allocated from cached memory, if memType = Engine_USECACHEDMEM_CACHED, from non-cached memory, if memType = Engine_USECACHEDMEM_NONCACHED, Otherwise, if memType = Engine_USECACHEDMEM_DEFAULT, memory allocations will be determined by the value of ti_sdo_ce_alg_Algorithm_useCache (cached, if TRUE, non-cached, if FALSE).
String Engine_AlgDesc::types |
A string idicating the type(s) of algorithm this is. This should be a ';' separated string of inherited types. In most cases, types
will just be set to the VISA type defined in the Codec Engine algorithm interface header file included by the algorithm, depending on the XDM interface the algorithm implements.
For example, if the algorithm implements the ISPHDEC1 interface as defined by XDM, types
should be set to SPHDEC1_VISATYPE
(defined as "ti.sdo.ce.speech1.ISPHDEC1" in the header file ti/sdo/ce/speech1/sphdec1.h).
Another example to illustrate multiple typss specified in typss
, if the algorithm implements the (made-up) interface, ti.sdo.ce.test.xvideo.IVIDE, which in turn implements the IVIDDEC interface, we could then set types
to VIDDEC_VISATYPE";ti.sdo.ce.test.xvideo.IVIDE" or "ti.sdo.ce.test.xvideo.IVIDE;"VIDDEC_VISATYPE