Embedded Template Library 1.0
Loading...
Searching...
No Matches
etl::circular_buffer_ext< T > Class Template Reference

#include <circular_buffer.h>

Public Member Functions

 circular_buffer_ext (void *buffer, size_t max_size)
 Constructor.
 
 circular_buffer_ext (size_t max_size)
 
template<typename TIterator >
 circular_buffer_ext (TIterator first, const TIterator &last, void *buffer, size_t max_size, typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type=0)
 
 circular_buffer_ext (const circular_buffer_ext &other, void *buffer, size_t max_size)
 Construct a copy.
 
 circular_buffer_ext (const circular_buffer_ext &other) ETL_DELETE
 Copy Constructor (Deleted)
 
circular_buffer_extoperator= (const circular_buffer_ext &other)
 Assignment operator.
 
void swap (circular_buffer_ext &other) ETL_NOEXCEPT
 Swap with another circular buffer.
 
void set_buffer (void *buffer)
 set_buffer
 
bool is_valid () const
 set_buffer
 
 ~circular_buffer_ext ()
 Destructor.
 
void repair ()
 Fix the internal pointers after a low level memory copy.
 
- Public Member Functions inherited from etl::icircular_buffer< T >
iterator begin ()
 Gets an iterator to the start of the buffer.
 
const_iterator begin () const
 Gets a const iterator to the start of the buffer.
 
const_iterator cbegin () const
 Gets a const iterator to the start of the buffer.
 
iterator end ()
 Gets an iterator to the end of the buffer.
 
const_iterator end () const
 Gets a const iterator to the end of the buffer.
 
const_iterator cend () const
 Gets a const iterator to the end of the buffer.
 
reverse_iterator rbegin ()
 Gets a reverse iterator to the start of the buffer.
 
const_reverse_iterator rbegin () const
 Gets a const reverse iterator to the start of the buffer.
 
const_reverse_iterator crbegin () const
 Gets a const reverse iterator to the start of the buffer.
 
reverse_iterator rend ()
 Gets a reverse iterator to the end of the buffer.
 
const_reverse_iterator rend () const
 Gets a const reverse iterator to the end of the buffer.
 
const_reverse_iterator crend () const
 Gets a const reverse iterator to the end of the buffer.
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
reference operator[] (size_t index)
 Get a reference to the item.
 
const_reference operator[] (size_t index) const
 
void push (const_reference item)
 
template<typename TIterator >
void push (TIterator first, const TIterator &last)
 Push a buffer from an iterator range.
 
void pop ()
 pop
 
void pop (size_type n)
 pop(n)
 
void clear ()
 Clears the buffer.
 
void fill (const T &value)
 Fills the buffer.
 
- Public Member Functions inherited from etl::circular_buffer_base
size_type size () const
 
bool empty () const
 
bool full () const
 
size_type available () const
 
size_type max_size () const
 
size_type capacity () const
 

Additional Inherited Members

- Public Types inherited from etl::icircular_buffer< T >
typedef T value_type
 
typedef Treference
 
typedef const Tconst_reference
 
typedef Tpointer
 
typedef const Tconst_pointer
 
typedef etl::iterator_traits< pointer >::difference_type difference_type
 
typedef etl::reverse_iterator< iteratorreverse_iterator
 
typedef etl::reverse_iterator< const_iteratorconst_reverse_iterator
 
- Public Types inherited from etl::circular_buffer_base
typedef size_t size_type
 The type used for determining the size of queue.
 
- Protected Member Functions inherited from etl::icircular_buffer< T >
 icircular_buffer (pointer pbuffer_, size_type max_length)
 Protected constructor.
 
void repair_buffer (T *pbuffer_)
 Fix the internal pointers after a low level memory copy.
 
 ~icircular_buffer ()
 Destructor.
 
- Protected Member Functions inherited from etl::circular_buffer_base
 circular_buffer_base (size_type buffer_size_)
 
void increment_in ()
 
void increment_out ()
 
- Static Protected Member Functions inherited from etl::icircular_buffer< T >
template<typename TIterator1 , typename TIterator2 >
static difference_type distance (const TIterator1 &range_begin, const TIterator2 &range_end)
 Measures the distance between two iterators.
 
template<typename TIterator >
static difference_type distance (const TIterator &other)
 Measures the distance from the _begin iterator to the specified iterator.
 
- Protected Attributes inherited from etl::icircular_buffer< T >
pointer pbuffer
 
- Protected Attributes inherited from etl::circular_buffer_base
size_type buffer_size
 
size_type in
 Index to the next write.
 
size_type out
 Index to the next read.
 
 ETL_DECLARE_DEBUG_COUNT
 Internal debugging.
 

Detailed Description

template<typename T>
class etl::circular_buffer_ext< T >

A fixed capacity circular buffer. External buffer.

Constructor & Destructor Documentation

◆ circular_buffer_ext() [1/2]

template<typename T >
etl::circular_buffer_ext< T >::circular_buffer_ext ( size_t  max_size)
inline

Constructor. Null buffer.

◆ circular_buffer_ext() [2/2]

template<typename T >
template<typename TIterator >
etl::circular_buffer_ext< T >::circular_buffer_ext ( TIterator  first,
const TIterator last,
void buffer,
size_t  max_size,
typename etl::enable_if<!etl::is_integral< TIterator >::value, int >::type  = 0 
)
inline

Constructor. Constructs a buffer from an iterator range.


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