| 23 | |
| 24 | |
| 25 | int ringbuffer_example(void) |
| 26 | { |
| 27 | rb_example_t data = { |
| 28 | .a = 1, |
| 29 | .b = 2, |
| 30 | }; |
| 31 | |
| 32 | struct rt_ringbuffer * rb = rt_ringbuffer_create(sizeof(rb_example_t) * 2); |
| 33 | RT_ASSERT(rb != RT_NULL); |
| 34 | |
| 35 | rt_kprintf("Put data to ringbuffer, a: %d b: %d size: %d\n", data.a, data.b, sizeof(data)); |
| 36 | rt_ringbuffer_put(rb, (rt_uint8_t *)&data, sizeof(data)); |
| 37 | |
| 38 | |
| 39 | rb_example_t recv_data; |
| 40 | rt_size_t recv = rt_ringbuffer_get(rb, (rt_uint8_t *)&recv_data, sizeof(recv_data)); |
| 41 | RT_ASSERT(recv == sizeof(recv_data)); |
| 42 | rt_kprintf("Get data from ringbuffer, a: %d b: %d size: %d\n", recv_data.a, recv_data.b, sizeof(recv_data)); |
| 43 | |
| 44 | return 0; |
| 45 | } |
| 46 | MSH_CMD_EXPORT(ringbuffer_example, ringbuffer example); |
| 47 | |
| 48 |
nothing calls this directly
no test coverage detected