59#ifdef QUEUEBUF_CONF_ENABLED
60#define QUEUEBUF_ENABLED QUEUEBUF_CONF_ENABLED
62#define QUEUEBUF_ENABLED 1
66#ifdef QUEUEBUF_CONF_NUM
67#define QUEUEBUF_NUM QUEUEBUF_CONF_NUM
77#ifdef QUEUEBUFRAM_CONF_NUM
78 #if QUEUEBUFRAM_CONF_NUM>QUEUEBUF_NUM
79 #error "QUEUEBUFRAM_CONF_NUM cannot be greater than QUEUEBUF_NUM"
81 #define QUEUEBUFRAM_NUM QUEUEBUFRAM_CONF_NUM
82 #define WITH_SWAP (QUEUEBUFRAM_NUM < QUEUEBUF_NUM)
85 #define QUEUEBUFRAM_NUM QUEUEBUF_NUM
89#ifdef QUEUEBUF_CONF_DEBUG
90#define QUEUEBUF_DEBUG QUEUEBUF_CONF_DEBUG
92#define QUEUEBUF_DEBUG 0
97void queuebuf_init(
void);
100struct queuebuf *queuebuf_new_from_packetbuf_debug(
const char *file,
int line);
101#define queuebuf_new_from_packetbuf() queuebuf_new_from_packetbuf_debug(__FILE__, __LINE__)
103struct queuebuf *queuebuf_new_from_packetbuf(
void);
105void queuebuf_update_attr_from_packetbuf(
struct queuebuf *b);
106void queuebuf_update_from_packetbuf(
struct queuebuf *b);
108void queuebuf_to_packetbuf(
struct queuebuf *b);
109void queuebuf_free(
struct queuebuf *b);
111void *queuebuf_dataptr(
struct queuebuf *b);
112int queuebuf_datalen(
struct queuebuf *b);
114linkaddr_t *queuebuf_addr(
struct queuebuf *b, uint8_t type);
115packetbuf_attr_t queuebuf_attr(
struct queuebuf *b, uint8_t type);
117void queuebuf_debug_print(
void);
119size_t queuebuf_numfree(
void);
Header file for the Packet buffer (packetbuf) management.