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::CompletionCounter< CountT > Struct Template Referencefinal

#include <swcdb/core/CompletionCounter.h>

+ Inheritance diagram for SWC::Core::CompletionCounter< CountT >:
+ Collaboration diagram for SWC::Core::CompletionCounter< CountT >:

Public Member Functions

constexpr SWC_CAN_INLINE CompletionCounter (CountT start=0) noexcept
 
 CompletionCounter (const CompletionCounter &)=delete
 
 CompletionCounter (const CompletionCounter &&)=delete
 
CompletionCounteroperator= (const CompletionCounter &)=delete
 
 ~CompletionCounter () noexcept
 
constexpr SWC_CAN_INLINE void increment (CountT v=1) noexcept
 
constexpr SWC_CAN_INLINE bool is_last () noexcept
 
constexpr SWC_CAN_INLINE CountT count () const noexcept
 
constexpr SWC_CAN_INLINE CountT increment_and_count () noexcept
 
constexpr SWC_CAN_INLINE CountT decrement_and_count () noexcept
 

Additional Inherited Members

- Private Member Functions inherited from SWC::Core::Atomic< uint32_t >
constexpr SWC_CAN_INLINE Atomic () noexcept
 
constexpr SWC_CAN_INLINE Atomic (ValueT initial) noexcept
 
 Atomic (const Atomic< uint32_t > &)=delete
 
 Atomic (const Atomic< uint32_t > &&)=delete
 
Atomic< uint32_t > & operator= (ValueT v)=delete
 
 ~Atomic () noexcept
 
constexpr SWC_CAN_INLINE uint32_t fetch_sub (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t fetch_add (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t fetch_xor (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t fetch_and (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t fetch_or (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t sub_rslt (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t add_rslt (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t xor_rslt (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t and_rslt (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t or_rslt (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t operator++ (int) noexcept
 
constexpr SWC_CAN_INLINE uint32_t operator-- (int) noexcept
 
- Private Member Functions inherited from SWC::Core::AtomicBase< uint32_t >
constexpr SWC_CAN_INLINE AtomicBase () noexcept
 
constexpr SWC_CAN_INLINE AtomicBase (ValueT initial) noexcept
 
 AtomicBase (const AtomicBase< uint32_t > &)=delete
 
 AtomicBase (const AtomicBase< uint32_t > &&)=delete
 
AtomicBase< uint32_t > & operator= (ValueT v)=delete
 
 ~AtomicBase () noexcept
 
constexpr SWC_CAN_INLINE void store (uint32_t v) noexcept
 
constexpr SWC_CAN_INLINE uint32_t load () const noexcept
 
constexpr SWC_CAN_INLINE uint32_t exchange (uint32_t value) noexcept
 
constexpr SWC_CAN_INLINE bool compare_exchange_weak (uint32_t &at, uint32_t value) noexcept
 
constexpr SWC_CAN_INLINE operator uint32_t () const noexcept
 

Detailed Description

template<class CountT = uint32_t>
struct SWC::Core::CompletionCounter< CountT >

Definition at line 16 of file CompletionCounter.h.

Constructor & Destructor Documentation

◆ CompletionCounter() [1/3]

template<class CountT = uint32_t>
constexpr SWC_CAN_INLINE SWC::Core::CompletionCounter< CountT >::CompletionCounter ( CountT  start = 0)
inlineexplicitconstexprnoexcept

Definition at line 19 of file CompletionCounter.h.

◆ CompletionCounter() [2/3]

template<class CountT = uint32_t>
SWC::Core::CompletionCounter< CountT >::CompletionCounter ( const CompletionCounter< CountT > &  )
delete

◆ CompletionCounter() [3/3]

template<class CountT = uint32_t>
SWC::Core::CompletionCounter< CountT >::CompletionCounter ( const CompletionCounter< CountT > &&  )
delete

◆ ~CompletionCounter()

template<class CountT = uint32_t>
SWC::Core::CompletionCounter< CountT >::~CompletionCounter ( )
inlinenoexcept

Definition at line 29 of file CompletionCounter.h.

Member Function Documentation

◆ count()

◆ decrement_and_count()

template<class CountT = uint32_t>
constexpr SWC_CAN_INLINE CountT SWC::Core::CompletionCounter< CountT >::decrement_and_count ( )
inlineconstexprnoexcept

Definition at line 52 of file CompletionCounter.h.

Referenced by SWC::ThriftBroker::AppContext::releaseHandler().

+ Here is the caller graph for this function:

◆ increment()

◆ increment_and_count()

template<class CountT = uint32_t>
constexpr SWC_CAN_INLINE CountT SWC::Core::CompletionCounter< CountT >::increment_and_count ( )
inlineconstexprnoexcept

Definition at line 47 of file CompletionCounter.h.

Referenced by SWC::ThriftBroker::AppContext::getHandler().

+ Here is the caller graph for this function:

◆ is_last()

◆ operator=()

template<class CountT = uint32_t>
CompletionCounter& SWC::Core::CompletionCounter< CountT >::operator= ( const CompletionCounter< CountT > &  )
delete

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