|
ipcq 0.12.0
|
Non-virtual base-class for ShmControl that does not depend on any static type. More...
#include <shm.hpp>
Public Types | |
| using | CounterType = size_t |
| using | SharedMemoryObject = typename ShmTraits::SharedMemoryObject |
| using | MappedRegion = typename ShmTraits::MappedRegion |
Public Member Functions | |
| ShmControlBase (char const *name, QueueInfo queue_info, std::optional< numapp::MemPolicy > mem_policy=std::nullopt, int mmap_flags=0) | |
| Owner constructor. | |
| ShmControlBase (char const *name) | |
| Non-owner constructor. | |
| ShmControlBase (ShmControlBase &&rhs) noexcept | |
| ShmControlBase & | operator= (ShmControlBase &&rhs) noexcept |
| char const * | TopicName () const noexcept |
| char const * | ShmObjectName () const |
| constexpr size_t | Capacity () const noexcept |
| constexpr uint8_t | FileVersion () const noexcept |
| constexpr pid_t | OwnerPid () const noexcept |
Protected Attributes | |
| std::string | m_topic_name |
| Topic name, as provided by user. | |
| QueueInfo | m_queue_info |
| SharedMemoryObject | m_shm_obj |
| Manages the shared memory. | |
| ShmRemover< ShmTraits > | m_shmem_remover |
| MappedRegion | m_control_region |
| Mapped segment to the control (mapped as read only for Reader). | |
| MappedRegion | m_queue_region |
| Mapped region to the queue (mapped as read only for Reader). | |
Pointers to mapped shared memory regions | |
| ShmControlBlock * | m_ctl_block |
| bool | m_is_owner |
| Indicates if this object owns the shared memory or not. | |
Non-virtual base-class for ShmControl that does not depend on any static type.
This is mainly a requirement to support ipcq-spy which is not templated on element type or any policies.
| ShmTraits | Trait type used to facilitate testing. Does not depend on user provided types. |
| using ipcq::detail::ShmControlBase< ShmTraits >::CounterType = size_t |
| using ipcq::detail::ShmControlBase< ShmTraits >::MappedRegion = typename ShmTraits::MappedRegion |
| using ipcq::detail::ShmControlBase< ShmTraits >::SharedMemoryObject = typename ShmTraits::SharedMemoryObject |
|
inlineexplicit |
|
inlineexplicit |
|
inlinenoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlinenoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlinenodiscard |
|
inlinenodiscardnoexcept |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |