00001 00042 #if !defined (MPLISTDEFS_H) 00043 #define MPLISTDEFS_H 00044 00045 00046 /* ----------------------------------- DSP/BIOS LINK Headers */ 00047 #include <mpcs.h> 00048 00049 00050 #if defined (__cplusplus) 00051 extern "C" { 00052 #endif /* defined (__cplusplus) */ 00053 00054 00065 typedef struct MPLIST_Attrs_tag { 00066 Uint16 poolId ; 00067 } MPLIST_Attrs ; 00068 00085 typedef struct MPLIST_Obj_tag { 00086 Ptr phyListHandle ; 00087 Ptr phyLockHandle ; 00088 Ptr phyEntryHandle ; 00089 } MPLIST_Obj ; 00090 00097 typedef MPLIST_Obj * MPLIST_Handle ; 00098 00099 00111 typedef struct MPLIST_Header_tag { 00112 struct MPLIST_Header_tag * next ; 00113 struct MPLIST_Header_tag * prev ; 00114 } MPLIST_Header ; 00115 00124 typedef MPLIST_Header * MPLIST_Elem ; 00125 00139 typedef struct MPLIST_List_tag { 00140 MPLIST_Header head ; 00141 ADD_PADDING (padding, MPLIST_LIST_PADDING) 00142 MPCS_ShObj mpcsObj ; 00143 } MPLIST_List ; 00144 00163 typedef struct MPLIST_Entry_tag { 00164 Uint16 ownerProcId ; 00165 Uint16 poolId ; 00166 Ptr phyListHandle ; 00167 Char name [DSP_MAX_STRLEN] ; 00168 ADD_PADDING (padding, MPLIST_ENTRY_PADDING) 00169 } MPLIST_Entry ; 00170 00200 typedef struct MPLIST_Ctrl_tag { 00201 Uint32 isInitialized ; 00202 Uint32 dspId ; 00203 Uint32 maxEntries ; 00204 Uint32 ipsId ; 00205 Uint32 ipsEventNo ; 00206 MPLIST_Entry * dspAddrEntry ; 00207 ADD_PADDING (padding, MPLIST_CTRL_PADDING) 00208 MPCS_ShObj lockObj ; 00209 } MPLIST_Ctrl ; 00210 00211 00212 #if defined (__cplusplus) 00213 } 00214 #endif /* defined (__cplusplus) */ 00215 00216 #endif /* if !defined (MPLISTDEFS_H) */