iox::rp🔗
Classes🔗
Name | |
---|---|
class | iox::rp::AtomicRelocatablePointer minimalistic relocatable pointer that can be written and read atomically and can be stored safely in shared memory. As the basic RelocatablePointer, it must point to something in the same shared memory segment as itself since the internally used offset must be an invariant different across adress spaces. Rationale: the default RelocatablePointer cannot be used in an atomic since the copy ctor is nontrivial. |
class | iox::rp::BaseRelativePointer pointer class to use when pointer and pointee are located in different shared memory segments We can have the following scenario: Pointer p is stored in segment S1 and points to object X of type T in segment S2. |
class | iox::rp::BaseRelocatablePointer pointer class to use when pointer and pointee are located in the same shared memory segment We can have the following scenario: Pointer p points to object X of type T and both are stored in shared memory segment S. |
class | iox::rp::PointerRepository Allows registration of memory segments with their start pointers and size. This class is used to resolve relative pointers in the corresponding address space of the application. Up to CAPACITY segments can be registered with MIN_ID = 1 to MAX_ID = CAPACITY - 1 id 0 is reserved and allows relative pointers to behave like normal pointers (which is equivalent to measure the offset relative to 0). |
class | iox::rp::RelativePointer typed version so we can use operator-> |
class | iox::rp::RelativePointerData This are the data for a relative pointer. To be able so safely be used in the shared memory and prevent torn writes/reads, the class must not be larger than 64 bits and trivially copy-able. |
class | iox::rp::RelocatablePointer typed version so we can use operator-> |
Updated on 31 May 2022 at 15:29:15 CEST