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
00072 #ifndef ti_ipc_HeapMemMP__include
00073 #define ti_ipc_HeapMemMP__include
00074
00075 #if defined (__cplusplus)
00076 extern "C" {
00077 #endif
00078
00079 #include <ti/ipc/GateMP.h>
00080
00081
00082
00083
00084
00085
00090 #define HeapMemMP_S_BUSY 2
00091
00096 #define HeapMemMP_S_ALREADYSETUP 1
00097
00102 #define HeapMemMP_S_SUCCESS 0
00103
00108 #define HeapMemMP_E_FAIL -1
00109
00114 #define HeapMemMP_E_INVALIDARG -2
00115
00120 #define HeapMemMP_E_MEMORY -3
00121
00126 #define HeapMemMP_E_ALREADYEXISTS -4
00127
00132 #define HeapMemMP_E_NOTFOUND -5
00133
00138 #define HeapMemMP_E_TIMEOUT -6
00139
00144 #define HeapMemMP_E_INVALIDSTATE -7
00145
00149 #define HeapMemMP_E_OSFAILURE -8
00150
00154 #define HeapMemMP_E_RESOURCE -9
00155
00159 #define HeapMemMP_E_RESTART -10
00160
00161
00162
00163
00164
00165
00169 typedef struct HeapMemMP_Object *HeapMemMP_Handle;
00170
00174 typedef struct HeapMemMP_Params {
00175 String name;
00186 UInt16 regionId;
00194 Ptr sharedAddr;
00205 SizeT sharedBufSize;
00219 GateMP_Handle gate;
00226 } HeapMemMP_Params;
00227
00231 typedef struct HeapMemMP_ExtendedStats {
00232 Ptr buf;
00235 SizeT size;
00237 } HeapMemMP_ExtendedStats;
00238
00239
00240
00241
00242
00243
00256 Int HeapMemMP_close(HeapMemMP_Handle *handlePtr);
00257
00265 HeapMemMP_Handle HeapMemMP_create(const HeapMemMP_Params *params);
00266
00275 Int HeapMemMP_delete(HeapMemMP_Handle *handlePtr);
00276
00301 Int HeapMemMP_open(String name, HeapMemMP_Handle *handlePtr);
00302
00304 Int HeapMemMP_openByAddr(Ptr sharedAddr, HeapMemMP_Handle *handlePtr);
00305
00314 Void HeapMemMP_Params_init(HeapMemMP_Params *params);
00315
00325 SizeT HeapMemMP_sharedMemReq(const HeapMemMP_Params *params);
00326
00329
00330
00331
00332
00333
00359 Void *HeapMemMP_alloc(HeapMemMP_Handle handle, SizeT size, SizeT align);
00360
00378 Void HeapMemMP_free(HeapMemMP_Handle handle, Ptr block, SizeT size);
00379
00392 Void HeapMemMP_getExtendedStats(HeapMemMP_Handle handle,
00393 HeapMemMP_ExtendedStats *stats);
00394
00403 Void HeapMemMP_getStats(HeapMemMP_Handle handle, Ptr stats);
00404
00415 Void HeapMemMP_restore(HeapMemMP_Handle handle);
00416
00417 #if defined (__cplusplus)
00418 }
00419 #endif
00420 #endif
00421
00422
00423
00424
00425
00426
00427
00428
00429