39 #define RB_INDH(rb) ((rb)->head & ((rb)->count - 1))
40 #define RB_INDT(rb) ((rb)->tail & ((rb)->count - 1))
57 RingBuff->
data = buffer;
58 RingBuff->
count = count;
59 RingBuff->
itemSz = itemSize;
68 uint8_t *ptr = RingBuff->
data;
75 memcpy(ptr, data, RingBuff->
itemSz);
84 uint8_t *ptr = RingBuff->
data;
97 cnt1 =
MIN(cnt1, num);
100 cnt2 =
MIN(cnt2, num);
105 memcpy(ptr, data, cnt1 * RingBuff->
itemSz);
106 RingBuff->
head += cnt1;
110 data = (
const uint8_t *) data + cnt1 * RingBuff->
itemSz;
111 memcpy(ptr, data, cnt2 * RingBuff->
itemSz);
112 RingBuff->
head += cnt2;
120 uint8_t *ptr = RingBuff->
data;
127 memcpy(data, ptr, RingBuff->
itemSz);
136 uint8_t *ptr = RingBuff->
data;
149 cnt1 =
MIN(cnt1, num);
152 cnt2 =
MIN(cnt2, num);
157 memcpy(data, ptr, cnt1 * RingBuff->
itemSz);
158 RingBuff->
tail += cnt1;
162 data = (uint8_t *) data + cnt1 * RingBuff->
itemSz;
163 memcpy(data, ptr, cnt2 * RingBuff->
itemSz);
164 RingBuff->
tail += cnt2;