Class CSyncMemoryFile

Nested Relationships

Nested Types

Class Documentation

class CSyncMemoryFile

Public Functions

CSyncMemoryFile(const std::string &base_name_, size_t size_, SSyncMemoryFileAttr attr_)
~CSyncMemoryFile()
bool Connect(const std::string &process_id_)
bool Disconnect(const std::string &process_id_)
bool CheckSize(size_t size_)
bool Write(CPayloadWriter &payload_, const SWriterAttr &data_, bool force_full_write_ = false)
std::string GetName() const
size_t GetSize() const
inline bool IsCreated() const

Protected Types

using EventHandleMapT = std::unordered_map<std::string, SEventHandlePair>

Protected Functions

bool Create(const std::string &base_name_, size_t size_)
bool Destroy()
bool Recreate(size_t size_)
void SyncContent()
void DisconnectAll()

Protected Attributes

std::string m_base_name
std::string m_memfile_name
CMemoryFile m_memfile
SSyncMemoryFileAttr m_attr
bool m_created
std::mutex m_event_handle_map_sync
EventHandleMapT m_event_handle_map
struct SEventHandlePair

Public Members

EventHandleT event_snd
EventHandleT event_ack
bool event_ack_is_invalid = false

The ack event has timeouted. Thus, we don’t wait for it anymore, until the subscriber notifies us via registration layer that it is still alive.