Go to the documentation of this file.00001
00044 #if !defined (DSPLINK_)
00045 #define DSPLINK_
00046
00047
00048
00049 #include <que.h>
00050 #include <pool.h>
00051 #if defined (MSGQ_COMPONENT)
00052 #include <msgq.h>
00053 #endif
00054
00055
00056 #include <platform.h>
00057 #include <version.h>
00058
00059
00060 #if defined (__cplusplus)
00061 extern "C" {
00062 #endif
00063
00064
00071 #define IN
00072 #define OUT
00073 #define CONST const
00074
00081 #define DSP_MAX_STRLEN 32
00082
00083
00084
00085
00086
00087
00088
00089
00090 #define MAX_IPS 16
00091
00092 #if defined (POOL_COMPONENT)
00093
00099 #define MAX_POOLENTRIES 32
00100 #endif
00101
00108 #define DSPLINK_DRIVER_NAME "/dsplink"
00109
00116 #define MAX_DRIVER_NAME_LEN 16
00117
00118
00119 #if defined (POOL_COMPONENT)
00120 #if !defined (POOL_open)
00121
00143 Int
00144 POOL_open(Uint16 poolId,
00145 POOL_Obj * poolObj) ;
00146 #endif
00147
00148
00149 #if !defined (POOL_close)
00150
00161 #define POOL_close(poolId) \
00162 (((POOL->allocators [poolId]).fxns->close) \
00163 (POOL->allocators [poolId].object))
00164 #endif
00165
00166
00167 #if !defined (POOL_alloc)
00168
00183 #define POOL_alloc(poolId, bufPtr, size) \
00184 (((POOL->allocators [poolId]).fxns->alloc) \
00185 (POOL->allocators [poolId].object, \
00186 bufPtr, \
00187 size))
00188 #endif
00189
00190
00191 #if !defined (POOL_free)
00192
00207 #define POOL_free(poolId, buf, size) \
00208 (((POOL->allocators [poolId]).fxns->free) \
00209 (POOL->allocators [poolId].object, \
00210 buf, \
00211 size))
00212 #endif
00213 #endif
00214
00215
00216 #if defined (CHNL_COMPONENT)
00217
00237 typedef struct CHNL_Irp_tag {
00238 QUE_Elem link ;
00239 Ptr buffer ;
00240 LgUns arg ;
00241 LgUns size ;
00242 LgUns iocStatus ;
00243 LgUns chnlId ;
00244 } CHNL_Irp ;
00245 #endif
00246
00247
00248
00256 extern POOL_Config * POOL ;
00257
00258
00275 Void
00276 DSPLINK_init (Void) ;
00277
00278
00279 #if defined (__cplusplus)
00280 }
00281 #endif
00282
00283
00284 #endif