Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00050 #ifndef ti_sdo_fc_rman__RMAN_
00051 #define ti_sdo_fc_rman__RMAN_
00052
00053 #define ti_sdo_fc_ires_NOPROTOCOLREV
00054
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058
00061
00062 #include <ti/xdais/ires.h>
00063 #include <ti/sdo/fc/ires/iresman.h>
00064
00073 #define RMAN_MODNAME "ti.sdo.fc.rman"
00074
00078 #define RMAN_GTNAME "ti.sdo.fc.rman"
00079
00083 #define RMAN_PROTOCOLNAMESIZE 200
00084
00088 typedef struct Sem_Obj * RMAN_SemHandle;
00089
00090
00101 typedef struct RMAN_Params {
00102
00106 short numRegistries;
00107
00111 IRESMAN_PersistentAllocFxn * allocFxn;
00112
00116 IRESMAN_PersistentFreeFxn * freeFxn;
00117
00121 IRES_YieldFxn yieldFxn;
00122
00126 Bool yieldSamePriority;
00127
00128 } RMAN_Params;
00129
00133 extern __FAR__ RMAN_Params RMAN_PARAMS;
00134
00138 extern __FAR__ IRESMAN_Fxns * RMAN_TABLE[];
00139
00143 extern __FAR__ short RMAN_FREE_ENTRIES[];
00144
00150 extern __FAR__ short RMAN_numRegistryEntries;
00151
00157 extern __FAR__ IRESMAN_Fxns ** RMAN_registryEntries;
00158
00163 extern __FAR__ IRESMAN_Params ** RMAN_registryResmanArgs;
00164
00169 extern __FAR__ unsigned int ** RMAN_iresVTable;
00170
00171
00181 IRES_Status RMAN_init(Void);
00182
00183
00190 IRES_Status RMAN_exit(Void);
00191
00192
00209 IRES_Status RMAN_register(IRESMAN_Fxns * resmanFxns, IRESMAN_Params * initArgs);
00210
00211
00222 IRES_Status RMAN_unregister(IRESMAN_Fxns * resmanFxns);
00223
00247 IRES_Status RMAN_assignResources(IALG_Handle algHandle, IRES_Fxns * resFxns,
00248 Int scratchGroupId);
00249
00250
00281 IRES_Status RMAN_allocateResources(Int requestId,
00282 IRES_ResourceDescriptor * resDesc, Int numResources, Int scratchGroupId);
00283
00284
00303 IRES_Status RMAN_freeResources(IALG_Handle algHandle, IRES_Fxns * resFxns, Int
00304 scratchGroupId);
00305
00330 IRES_Status RMAN_freeAllocatedResources (Int requestId,
00331 IRES_ResourceDescriptor *resDesc, Int numResources, Int scratchGroupId);
00332
00345 IRES_Status RMAN_activateResource(IALG_Handle algHandle,
00346 IRES_Handle resourceHandle, IRES_Fxns * resFxns, Int scratchGroupId);
00347
00357 IRES_Status RMAN_activateAllResources(IALG_Handle algHandle,
00358 IRES_Fxns * resFxns, Int scratchGroupId);
00359
00372 IRES_Status RMAN_deactivateResource(IALG_Handle algHandle,
00373 IRES_Handle resourceHandle, IRES_Fxns * resFxns, Int scratchGroupId);
00374
00385 IRES_Status RMAN_deactivateAllResources(IALG_Handle algHandle,
00386 IRES_Fxns * resFxns, Int scratchGroupId);
00387
00388
00408 void RMAN_yield(IRES_YieldResourceType resource,
00409 IRES_YieldContextHandle algYieldContext, IRES_YieldArgs yieldArgs);
00410
00411
00414 #ifdef __cplusplus
00415 }
00416 #endif
00417
00418 #endif
00419
00420
00421
00422
00423