Lines Matching refs:r
48 #define ringbuf_alloc(r, sz) \ argument
50 (r)->buf = m_new(uint8_t, sz); \
51 (r)->size = sz; \
52 (r)->iget = (r)->iput = 0; \
55 static inline int ringbuf_get(ringbuf_t *r) { in ringbuf_get() argument
56 if (r->iget == r->iput) { in ringbuf_get()
59 uint8_t v = r->buf[r->iget++]; in ringbuf_get()
60 if (r->iget >= r->size) { in ringbuf_get()
61 r->iget = 0; in ringbuf_get()
66 static inline int ringbuf_peek(ringbuf_t *r) { in ringbuf_peek() argument
67 if (r->iget == r->iput) { in ringbuf_peek()
70 return r->buf[r->iget]; in ringbuf_peek()
73 static inline int ringbuf_put(ringbuf_t *r, uint8_t v) { in ringbuf_put() argument
74 uint32_t iput_new = r->iput + 1; in ringbuf_put()
75 if (iput_new >= r->size) { in ringbuf_put()
78 if (iput_new == r->iget) { in ringbuf_put()
81 r->buf[r->iput] = v; in ringbuf_put()
82 r->iput = iput_new; in ringbuf_put()
86 static inline size_t ringbuf_free(ringbuf_t *r) { in ringbuf_free() argument
87 return (r->size + r->iget - r->iput - 1) % r->size; in ringbuf_free()
90 static inline size_t ringbuf_avail(ringbuf_t *r) { in ringbuf_avail() argument
91 return (r->size + r->iput - r->iget) % r->size; in ringbuf_avail()
95 int ringbuf_get16(ringbuf_t *r);
96 int ringbuf_peek16(ringbuf_t *r);
97 int ringbuf_put16(ringbuf_t *r, uint16_t v);