Agora  1.2.0
Agora project
spdlog::details::circular_q< T > Class Template Reference

#include <circular_q.h>

Public Types

using value_type = T
 

Public Member Functions

 circular_q ()=default
 
 circular_q (size_t max_items)
 
 circular_q (const circular_q &)=default
 
circular_qoperator= (const circular_q &)=default
 
 circular_q (circular_q &&other) SPDLOG_NOEXCEPT
 
circular_qoperator= (circular_q &&other) SPDLOG_NOEXCEPT
 
void push_back (T &&item)
 
const Tfront () const
 
Tfront ()
 
size_t size () const
 
const Tat (size_t i) const
 
void pop_front ()
 
bool empty () const
 
bool full () const
 
size_t overrun_counter () const
 

Private Member Functions

void copy_moveable (circular_q &&other) SPDLOG_NOEXCEPT
 

Private Attributes

size_t max_items_ = 0
 
std::vector< T >::size_type head_ = 0
 
std::vector< T >::size_type tail_ = 0
 
size_t overrun_counter_ = 0
 
std::vector< Tv_
 

Member Typedef Documentation

◆ value_type

template<typename T >
using spdlog::details::circular_q< T >::value_type = T

Constructor & Destructor Documentation

◆ circular_q() [1/4]

template<typename T >
spdlog::details::circular_q< T >::circular_q ( )
default

◆ circular_q() [2/4]

template<typename T >
spdlog::details::circular_q< T >::circular_q ( size_t  max_items)
inlineexplicit

◆ circular_q() [3/4]

template<typename T >
spdlog::details::circular_q< T >::circular_q ( const circular_q< T > &  )
default

◆ circular_q() [4/4]

template<typename T >
spdlog::details::circular_q< T >::circular_q ( circular_q< T > &&  other)
inline

Member Function Documentation

◆ at()

template<typename T >
const T& spdlog::details::circular_q< T >::at ( size_t  i) const
inline

◆ copy_moveable()

template<typename T >
void spdlog::details::circular_q< T >::copy_moveable ( circular_q< T > &&  other)
inlineprivate
Here is the caller graph for this function:

◆ empty()

template<typename T >
bool spdlog::details::circular_q< T >::empty ( ) const
inline

◆ front() [1/2]

template<typename T >
T& spdlog::details::circular_q< T >::front ( )
inline

◆ front() [2/2]

template<typename T >
const T& spdlog::details::circular_q< T >::front ( ) const
inline
Here is the caller graph for this function:

◆ full()

template<typename T >
bool spdlog::details::circular_q< T >::full ( ) const
inline
Here is the caller graph for this function:

◆ operator=() [1/2]

template<typename T >
circular_q& spdlog::details::circular_q< T >::operator= ( circular_q< T > &&  other)
inline

◆ operator=() [2/2]

template<typename T >
circular_q& spdlog::details::circular_q< T >::operator= ( const circular_q< T > &  )
default

◆ overrun_counter()

template<typename T >
size_t spdlog::details::circular_q< T >::overrun_counter ( ) const
inline

◆ pop_front()

template<typename T >
void spdlog::details::circular_q< T >::pop_front ( )
inline
Here is the caller graph for this function:

◆ push_back()

template<typename T >
void spdlog::details::circular_q< T >::push_back ( T &&  item)
inline
Here is the caller graph for this function:

◆ size()

template<typename T >
size_t spdlog::details::circular_q< T >::size ( ) const
inline
Here is the caller graph for this function:

Member Data Documentation

◆ head_

template<typename T >
std::vector<T>::size_type spdlog::details::circular_q< T >::head_ = 0
private

◆ max_items_

template<typename T >
size_t spdlog::details::circular_q< T >::max_items_ = 0
private

◆ overrun_counter_

template<typename T >
size_t spdlog::details::circular_q< T >::overrun_counter_ = 0
private

◆ tail_

template<typename T >
std::vector<T>::size_type spdlog::details::circular_q< T >::tail_ = 0
private

◆ v_

template<typename T >
std::vector<T> spdlog::details::circular_q< T >::v_
private

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