// // Created by wolverindev on 07.02.20. // #include "ring_buffer.h" #include using namespace tc; ring_buffer::ring_buffer(size_t cap) { this->handle = soundio_ring_buffer_create(nullptr, cap); } ring_buffer::~ring_buffer() { soundio_ring_buffer_destroy((SoundIoRingBuffer*) this->handle); } size_t ring_buffer::capacity() const { return soundio_ring_buffer_capacity((SoundIoRingBuffer*) this->handle); } size_t ring_buffer::free_count() const { return soundio_ring_buffer_free_count((SoundIoRingBuffer*) this->handle); } size_t ring_buffer::fill_count() const { return soundio_ring_buffer_fill_count((SoundIoRingBuffer*) this->handle); } char* ring_buffer::write_ptr() { return soundio_ring_buffer_write_ptr((SoundIoRingBuffer*) this->handle); } void ring_buffer::advance_write_ptr(size_t bytes) { soundio_ring_buffer_advance_write_ptr((SoundIoRingBuffer*) this->handle, bytes); } const void* ring_buffer::read_ptr() const { return soundio_ring_buffer_read_ptr((SoundIoRingBuffer*) this->handle); } void ring_buffer::advance_read_ptr(size_t bytes) { soundio_ring_buffer_advance_read_ptr((SoundIoRingBuffer*) this->handle, bytes); } void ring_buffer::clear() { soundio_ring_buffer_clear((SoundIoRingBuffer*) this->handle); }