Class IceOryxRouDiMemoryManager

Inheritance Relationships

Base Type

Class Documentation

class IceOryxRouDiMemoryManager : public iox::roudi::RouDiMemoryInterface

Public Functions

IceOryxRouDiMemoryManager(const RouDiConfig_t &roudiConfig) noexcept
virtual ~IceOryxRouDiMemoryManager() noexcept = default

The Destructor of the IceOryxRouDiMemoryManager also calls destroy on the registered MemoryProvider.

IceOryxRouDiMemoryManager(IceOryxRouDiMemoryManager&&) = delete
IceOryxRouDiMemoryManager &operator=(IceOryxRouDiMemoryManager&&) = delete
IceOryxRouDiMemoryManager(const IceOryxRouDiMemoryManager&) = delete
IceOryxRouDiMemoryManager &operator=(const IceOryxRouDiMemoryManager&) = delete
virtual cxx::expected<RouDiMemoryManagerError> createAndAnnounceMemory() noexcept override

The RouDiMemoryManager calls the the MemoryProvider to create the memory and announce the availability to its MemoryBlocks.

Returns:

an RouDiMemoryManagerError if the MemoryProvider cannot create the memory, otherwise success

virtual cxx::expected<RouDiMemoryManagerError> destroyMemory() noexcept override

The RouDiMemoryManager calls the the MemoryProvider to destroy the memory, which in turn prompts the MemoryBlocks to destroy their data.

virtual const PosixShmMemoryProvider *mgmtMemoryProvider() const noexcept override
virtual cxx::optional<PortPool*> portPool() noexcept override
virtual cxx::optional<mepoo::MemoryManager*> introspectionMemoryManager() const noexcept override
virtual cxx::optional<mepoo::SegmentManager<>*> segmentManager() const noexcept override