27 #ifndef __ETH_FRAME_DLIST_H__
28 #define __ETH_FRAME_DLIST_H__
34 APP_LPVOID lpFirstElement;
35 APP_LPVOID lpLastElement;
40 } PACK_ALIGNEMENT(ST_POOL),APP_FAR *LPST_POOL;
44 APP_WORD pool_init (LPST_POOL pPool,APP_WORD wMaxElt,APP_WORD wSizeElt);
45 APP_VOID pool_destroy(LPST_POOL pPool);
47 APP_WORD pool_lock_elt (LPST_POOL pPool, APP_LPBYTE APP_FAR * ppvData);
48 APP_WORD pool_unlock_elt (LPST_POOL pPool, APP_LPBYTE pvData);
49 APP_WORD pool_unlock_elt_at_end(LPST_POOL lpPool, APP_LPBYTE lpbyData);
51 #define pool_nbfree(pPool) ((pPool)->wSize)
52 #define pool_nbused(pPool) ((pPool)->wMaxElt-(pPool)->wSize)
53 #define pool_sizeelt(pPool) ((pPool)->wSizeElt)
54 #define pool_maxframe(pPool) ((pPool)->wMaxElt)
55 #define pool_isfree(pPool) ((( (pPool)->wSize)) != 0)