Open FFBoard
Open source force feedback firmware
RingBufferWrapper Class Reference

#include <ringbufferwrapper.h>

Public Member Functions

 RingBufferWrapper (uint8_t *data, uint32_t len) noexcept
 
 RingBufferWrapper (uint32_t size) noexcept
 
virtual ~RingBufferWrapper () noexcept
 
bool isValid () noexcept
 
bool empty () noexcept
 
size_t length () noexcept
 
size_t freeSpace () noexcept
 
size_t capacity () noexcept
 
size_t appendOne (uint8_t data) noexcept
 
size_t appendMultiple (const uint8_t *data, size_t len) noexcept
 
size_t peekOne (uint8_t *data) noexcept
 
size_t getOne (uint8_t *data) noexcept
 
size_t getMultiple (uint8_t *dst, size_t len) noexcept
 
size_t peekMultiple (uint8_t *dst, size_t len) noexcept
 
size_t discardMultiple (size_t len) noexcept
 
void clean () noexcept
 
template<typename T >
get_as (bool *ok) noexcept
 
template<typename T >
peek_as (bool *ok) noexcept
 
template<typename T >
size_t numElements () noexcept
 

Private Attributes

RingBuffer buffer
 
bool valid
 

Detailed Description

Definition at line 9 of file ringbufferwrapper.h.

Constructor & Destructor Documentation

◆ RingBufferWrapper() [1/2]

RingBufferWrapper::RingBufferWrapper ( uint8_t *  data,
uint32_t  len 
)
explicitnoexcept

Definition at line 9 of file ringbufferwrapper.cpp.

◆ RingBufferWrapper() [2/2]

RingBufferWrapper::RingBufferWrapper ( uint32_t  size)
explicitnoexcept

Definition at line 29 of file ringbufferwrapper.cpp.

◆ ~RingBufferWrapper()

RingBufferWrapper::~RingBufferWrapper ( )
virtualnoexcept

Definition at line 45 of file ringbufferwrapper.cpp.

Member Function Documentation

◆ appendMultiple()

size_t RingBufferWrapper::appendMultiple ( const uint8_t *  data,
size_t  len 
)
noexcept

Definition at line 82 of file ringbufferwrapper.cpp.

◆ appendOne()

size_t RingBufferWrapper::appendOne ( uint8_t  data)
noexcept

Definition at line 77 of file ringbufferwrapper.cpp.

◆ capacity()

size_t RingBufferWrapper::capacity ( )
noexcept

Definition at line 72 of file ringbufferwrapper.cpp.

◆ clean()

void RingBufferWrapper::clean ( )
noexcept

Definition at line 129 of file ringbufferwrapper.cpp.

◆ discardMultiple()

size_t RingBufferWrapper::discardMultiple ( size_t  len)
noexcept

Definition at line 119 of file ringbufferwrapper.cpp.

◆ empty()

bool RingBufferWrapper::empty ( )
noexcept

Definition at line 57 of file ringbufferwrapper.cpp.

◆ freeSpace()

size_t RingBufferWrapper::freeSpace ( )
noexcept

Definition at line 67 of file ringbufferwrapper.cpp.

◆ get_as()

template<typename T >
T RingBufferWrapper::get_as ( bool *  ok)
noexcept

Definition at line 81 of file ringbufferwrapper.h.

◆ getMultiple()

size_t RingBufferWrapper::getMultiple ( uint8_t *  dst,
size_t  len 
)
noexcept

Definition at line 99 of file ringbufferwrapper.cpp.

◆ getOne()

size_t RingBufferWrapper::getOne ( uint8_t *  data)
noexcept

Definition at line 94 of file ringbufferwrapper.cpp.

◆ isValid()

bool RingBufferWrapper::isValid ( )
noexcept

Definition at line 52 of file ringbufferwrapper.cpp.

◆ length()

size_t RingBufferWrapper::length ( )
noexcept

Definition at line 62 of file ringbufferwrapper.cpp.

◆ numElements()

template<typename T >
size_t RingBufferWrapper::numElements
noexcept

Definition at line 91 of file ringbufferwrapper.h.

◆ peek_as()

template<typename T >
T RingBufferWrapper::peek_as ( bool *  ok)
noexcept

Definition at line 55 of file ringbufferwrapper.h.

◆ peekMultiple()

size_t RingBufferWrapper::peekMultiple ( uint8_t *  dst,
size_t  len 
)
noexcept

Definition at line 109 of file ringbufferwrapper.cpp.

◆ peekOne()

size_t RingBufferWrapper::peekOne ( uint8_t *  data)
noexcept

Definition at line 89 of file ringbufferwrapper.cpp.

Member Data Documentation

◆ buffer

RingBuffer RingBufferWrapper::buffer
private

Definition at line 50 of file ringbufferwrapper.h.

◆ valid

bool RingBufferWrapper::valid
private

Definition at line 51 of file ringbufferwrapper.h.


The documentation for this class was generated from the following files: