www.pudn.com > uCOSII上实现的tcpip.rar > znetif.h



#ifndef	_ZNETIF_H
#define _ZNETIF_H

#include "zarch.h"
#include "zdef.h"
#include "zbuffer.h"

#define	ZNETIF_BUFFER_LEN	32

typedef struct _znetif_buffer
{
	zbuffer_t*	_buffer_pool[ ZNETIF_BUFFER_LEN ];
	u8_t		rindex;
	u8_t		windex;

}znetif_buffer_t;

typedef struct _znetif
{
	ipaddr_t	ipaddr;
	ipaddr_t	netmask;
	ipaddr_t	gateway;
	ethaddr_t	hwaddr;
	znetif_buffer_t	_buffer;		/*identify driver's buffer queue*/
	u8_t (*netif_tx)(struct _znetif * pnetif, zbuffer_t *pbuffer);
}znetif_t;

extern znetif_t	default_netif;
extern void znetif_init( znetif_t *pnetif);
extern zbuffer_t *znetif_read( znetif_t *pnetif);
extern u8_t	znetif_write(znetif_t *pnetif, zbuffer_t *pbuffer);
#endif