SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
SWC::Core::QueueSafeStated< ItemT > Class Template Referencefinal

#include <swcdb/core/QueueSafeStated.h>

+ Inheritance diagram for SWC::Core::QueueSafeStated< ItemT >:
+ Collaboration diagram for SWC::Core::QueueSafeStated< ItemT >:

Public Member Functions

SWC_CAN_INLINE QueueSafeStated () noexcept
 
 ~QueueSafeStated () noexcept
 
 QueueSafeStated (const QueueSafeStated &)=delete
 
 QueueSafeStated (const QueueSafeStated &&)=delete
 
QueueSafeStatedoperator= (const QueueSafeStated &)=delete
 
SWC_CAN_INLINE void push (const ItemT &item)
 
SWC_CAN_INLINE void push (ItemT &&item)
 
SWC_CAN_INLINE ItemT & front () noexcept
 
SWC_CAN_INLINE bool empty () noexcept
 
SWC_CAN_INLINE size_t size () noexcept
 
SWC_CAN_INLINE bool is_active () noexcept
 
SWC_CAN_INLINE bool activating () noexcept
 
SWC_CAN_INLINE bool deactivating ()
 
SWC_CAN_INLINE void deactivate () noexcept
 
SWC_CAN_INLINE bool activating (const ItemT &item)
 
SWC_CAN_INLINE bool activating (ItemT &&item)
 
SWC_CAN_INLINE bool deactivating (ItemT &item)
 

Private Types

typedef std::queue< ItemT > QBase
 

Private Attributes

MutexSptd m_mutex
 
bool m_state = false
 

Detailed Description

template<class ItemT>
class SWC::Core::QueueSafeStated< ItemT >

Definition at line 18 of file QueueSafeStated.h.

Member Typedef Documentation

◆ QBase

template<class ItemT >
typedef std::queue<ItemT> SWC::Core::QueueSafeStated< ItemT >::QBase
private

Definition at line 129 of file QueueSafeStated.h.

Constructor & Destructor Documentation

◆ QueueSafeStated() [1/3]

template<class ItemT >
SWC_CAN_INLINE SWC::Core::QueueSafeStated< ItemT >::QueueSafeStated ( )
inlineexplicitnoexcept

Definition at line 22 of file QueueSafeStated.h.

◆ ~QueueSafeStated()

template<class ItemT >
SWC::Core::QueueSafeStated< ItemT >::~QueueSafeStated ( )
inlinenoexcept

Definition at line 24 of file QueueSafeStated.h.

◆ QueueSafeStated() [2/3]

template<class ItemT >
SWC::Core::QueueSafeStated< ItemT >::QueueSafeStated ( const QueueSafeStated< ItemT > &  )
delete

◆ QueueSafeStated() [3/3]

template<class ItemT >
SWC::Core::QueueSafeStated< ItemT >::QueueSafeStated ( const QueueSafeStated< ItemT > &&  )
delete

Member Function Documentation

◆ activating() [1/3]

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::activating ( )
inlinenoexcept

Definition at line 71 of file QueueSafeStated.h.

Referenced by SWC::Ranger::Column::add_managing().

+ Here is the caller graph for this function:

◆ activating() [2/3]

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::activating ( const ItemT &  item)
inline

Definition at line 93 of file QueueSafeStated.h.

◆ activating() [3/3]

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::activating ( ItemT &&  item)
inline

Definition at line 103 of file QueueSafeStated.h.

◆ deactivate()

template<class ItemT >
SWC_CAN_INLINE void SWC::Core::QueueSafeStated< ItemT >::deactivate ( )
inlinenoexcept

Definition at line 86 of file QueueSafeStated.h.

◆ deactivating() [1/2]

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::deactivating ( )
inline

Definition at line 77 of file QueueSafeStated.h.

Referenced by SWC::Ranger::Column::run_mng_queue().

+ Here is the caller graph for this function:

◆ deactivating() [2/2]

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::deactivating ( ItemT &  item)
inline

Definition at line 113 of file QueueSafeStated.h.

◆ empty()

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::empty ( )
inlinenoexcept

Definition at line 53 of file QueueSafeStated.h.

Referenced by SWC::Ranger::Column::is_not_used().

+ Here is the caller graph for this function:

◆ front()

template<class ItemT >
SWC_CAN_INLINE ItemT& SWC::Core::QueueSafeStated< ItemT >::front ( )
inlinenoexcept

Definition at line 47 of file QueueSafeStated.h.

◆ is_active()

template<class ItemT >
SWC_CAN_INLINE bool SWC::Core::QueueSafeStated< ItemT >::is_active ( )
inlinenoexcept

Definition at line 65 of file QueueSafeStated.h.

◆ operator=()

template<class ItemT >
QueueSafeStated& SWC::Core::QueueSafeStated< ItemT >::operator= ( const QueueSafeStated< ItemT > &  )
delete

◆ push() [1/2]

template<class ItemT >
SWC_CAN_INLINE void SWC::Core::QueueSafeStated< ItemT >::push ( const ItemT &  item)
inline

Definition at line 34 of file QueueSafeStated.h.

◆ push() [2/2]

template<class ItemT >
SWC_CAN_INLINE void SWC::Core::QueueSafeStated< ItemT >::push ( ItemT &&  item)
inline

Definition at line 40 of file QueueSafeStated.h.

◆ size()

template<class ItemT >
SWC_CAN_INLINE size_t SWC::Core::QueueSafeStated< ItemT >::size ( )
inlinenoexcept

Definition at line 59 of file QueueSafeStated.h.

Member Data Documentation

◆ m_mutex

◆ m_state


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