ipcq 0.12.0
Loading...
Searching...
No Matches
implementation details

Shared memory queue implementation details. More...

Files

file  iterator.hpp
 Contains declarations for shm iterator.
 
file  shm.hpp
 Contains core shm implementation details.
 
file  traits.hpp
 Basic implementation detail traits.
 

Classes

struct  ipcq::detail::Iterator< Buff, Traits >
 Provides standard iterator concept to ipcq queue. More...
 
struct  ipcq::detail::ShmControlBlock
 Control block residing in shared memory shared by readers and writers. More...
 
class  ipcq::detail::ShmRemover< ShmTraits >
 Small helper that removes shared memory, to make ShmControl exception-safe with RAII. More...
 
class  ipcq::detail::SpinConditionPolicy
 Simple spinning condition. More...
 
class  ipcq::detail::BoostConditionPolicy
 Condition policy based on boost::interprocess::interprocess_condition. More...
 
class  ipcq::detail::ShmControl< T, ConditionPolicy, ShmTraits >
 ShmControl provides the basic data model for the queue and low level operations on the shared memory queue, some of which are atomic. More...
 
struct  ipcq::detail::NonConstTraits< T >
 Shared memory queue iterator trait for non-const iterator. More...
 
struct  ipcq::detail::ConstTraits< T >
 Shared memory queue iterator trait for const iterator. More...
 

Variables

constexpr auto ipcq::detail::config::BIT_COUNT = 21u
 Number of bits making up first, last and size each for a total of 63 bits.
 
constexpr auto ipcq::detail::config::BIT_MASK = 0x1f'ffffu
 Bitmask for bit count.
 
constexpr auto ipcq::detail::config::MAX_VALUE = 2097151u
 Maximum number of elements in queue.
 
constexpr auto ipcq::detail::config::BIT_IS_CLOSED = 0x8000'0000'0000'0000u
 Bit indicating if queue is closed (highest bit).
 
constexpr size_t ipcq::detail::config::TYPENAME_SEQ_LEN = 128
 Length of typename character sequences.
 

Detailed Description

Shared memory queue implementation details.

Variable Documentation

◆ BIT_COUNT

auto ipcq::detail::config::BIT_COUNT = 21u
constexpr

Number of bits making up first, last and size each for a total of 63 bits.

Definition at line 87 of file shm.hpp.

◆ BIT_IS_CLOSED

auto ipcq::detail::config::BIT_IS_CLOSED = 0x8000'0000'0000'0000u
constexpr

Bit indicating if queue is closed (highest bit).

Definition at line 107 of file shm.hpp.

◆ BIT_MASK

auto ipcq::detail::config::BIT_MASK = 0x1f'ffffu
constexpr

Bitmask for bit count.

Definition at line 93 of file shm.hpp.

◆ MAX_VALUE

auto ipcq::detail::config::MAX_VALUE = 2097151u
constexpr

Maximum number of elements in queue.

(2 ^ BIT_COUNT) - 1

Definition at line 100 of file shm.hpp.

◆ TYPENAME_SEQ_LEN

size_t ipcq::detail::config::TYPENAME_SEQ_LEN = 128
constexpr

Length of typename character sequences.

Definition at line 114 of file shm.hpp.