MatLogger2  1.0.0
Library for logging of numeric data to HDF5 MAT-files, which is RT-safe and multithreaded.
Public Member Functions | Protected Member Functions | List of all members
boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize > Class Template Reference

#include <spsc_queue_logger.hpp>

+ Inheritance diagram for boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >:
+ Collaboration diagram for boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >:

Public Member Functions

 compile_time_sized_ringbuffer ()
 
bool push (T const &t)
 
template<typename Functor >
bool consume_one (Functor &f)
 
template<typename Functor >
bool consume_one (Functor const &f)
 
template<typename Functor >
size_type consume_all (Functor &f)
 
template<typename Functor >
size_type consume_all (Functor const &f)
 
size_type push (T const *t, size_type size)
 
template<size_type size>
size_type push (T const (&t)[size])
 
template<typename ConstIterator >
ConstIterator push (ConstIterator begin, ConstIterator end)
 
size_type pop (T *ret, size_type size)
 
template<typename OutputIterator >
size_type pop_to_output_iterator (OutputIterator it)
 
const T & front (void) const
 
T & front (void)
 
 ~compile_time_sized_ringbuffer ()
 
- Public Member Functions inherited from boost::lockfree::detail::ringbuffer_base< T >
void reset (void)
 reset the ringbuffer More...
 
bool empty (void)
 Check if the ringbuffer is empty. More...
 
bool is_lock_free (void) const
 

Protected Member Functions

size_type max_number_of_elements () const
 
- Protected Member Functions inherited from boost::lockfree::detail::ringbuffer_base< T >
 ringbuffer_base (void)
 
size_t read_available (size_t max_size) const
 
size_t write_available (size_t max_size) const
 
bool push (T const &t, T *buffer, size_t max_size)
 
size_t push (const T *input_buffer, size_t input_count, T *internal_buffer, size_t max_size)
 
template<typename ConstIterator >
ConstIterator push (ConstIterator begin, ConstIterator end, T *internal_buffer, size_t max_size)
 
template<typename Functor >
bool consume_one (Functor &functor, T *buffer, size_t max_size)
 
template<typename Functor >
bool consume_one (Functor const &functor, T *buffer, size_t max_size)
 
template<typename Functor >
size_t consume_all (Functor const &functor, T *internal_buffer, size_t max_size)
 
template<typename Functor >
size_t consume_all (Functor &functor, T *internal_buffer, size_t max_size)
 
size_t pop (T *output_buffer, size_t output_count, T *internal_buffer, size_t max_size)
 
template<typename OutputIterator >
size_t pop_to_output_iterator (OutputIterator it, T *internal_buffer, size_t max_size)
 
const T & front (const T *internal_buffer) const
 
T & front (T *internal_buffer)
 

Additional Inherited Members

- Protected Types inherited from boost::lockfree::detail::ringbuffer_base< T >
typedef std::size_t size_t
 
- Static Protected Member Functions inherited from boost::lockfree::detail::ringbuffer_base< T >
static size_t next_index (size_t arg, size_t max_size)
 
static size_t read_available (size_t write_index, size_t read_index, size_t max_size)
 
static size_t write_available (size_t write_index, size_t read_index, size_t max_size)
 
- Protected Attributes inherited from boost::lockfree::detail::ringbuffer_base< T >
atomic< size_twrite_index_
 
char padding1 [padding_size]
 
atomic< size_tread_index_
 
- Static Protected Attributes inherited from boost::lockfree::detail::ringbuffer_base< T >
static const int padding_size = BOOST_LOCKFREE_CACHELINE_BYTES - sizeof(size_t)
 

Detailed Description

template<typename T, std::size_t MaxSize>
class boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >

Definition at line 429 of file spsc_queue_logger.hpp.

Constructor & Destructor Documentation

template<typename T , std::size_t MaxSize>
boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::compile_time_sized_ringbuffer ( )
inline

Definition at line 460 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::~compile_time_sized_ringbuffer ( )
inline

Definition at line 535 of file spsc_queue_logger.hpp.

Member Function Documentation

template<typename T , std::size_t MaxSize>
template<typename Functor >
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::consume_all ( Functor &  f)
inline

Definition at line 486 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<typename Functor >
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::consume_all ( Functor const &  f)
inline

Definition at line 492 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<typename Functor >
bool boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::consume_one ( Functor &  f)
inline

Definition at line 474 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<typename Functor >
bool boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::consume_one ( Functor const &  f)
inline

Definition at line 480 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
const T& boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::front ( void  ) const
inline

Definition at line 525 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
T& boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::front ( void  )
inline

Definition at line 530 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::max_number_of_elements ( ) const
inlineprotected

Definition at line 452 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::pop ( T *  ret,
size_type  size 
)
inline

Definition at line 514 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<typename OutputIterator >
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::pop_to_output_iterator ( OutputIterator  it)
inline

Definition at line 520 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
bool boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::push ( T const &  t)
inline

Definition at line 468 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::push ( T const *  t,
size_type  size 
)
inline

Definition at line 497 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<size_type size>
size_type boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::push ( T const (&)  t[size])
inline

Definition at line 503 of file spsc_queue_logger.hpp.

template<typename T , std::size_t MaxSize>
template<typename ConstIterator >
ConstIterator boost::lockfree::detail::compile_time_sized_ringbuffer< T, MaxSize >::push ( ConstIterator  begin,
ConstIterator  end 
)
inline

Definition at line 509 of file spsc_queue_logger.hpp.


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