Class CSharedMemChannelMgnt#

Nested Relationships#

Nested Types#

Inheritance Relationships#

Base Types#

Class Documentation#

class CSharedMemChannelMgnt : public sdv::CSdvObject, public sdv::IObjectControl, public sdv::ipc::ICreateEndpoint, public sdv::ipc::IChannelAccess#

IPC channel management class for the shared memory communication.

Public Functions

virtual void Initialize(const sdv::u8string &ssObjectConfig) override#

Initialize the object. Overload of sdv::IObjectControl::Initialize.

Parameters:

ssObjectConfig[in] Optional configuration string.

virtual sdv::EObjectStatus GetStatus() const override#

Get the current status of the object. Overload of sdv::IObjectControl::GetStatus.

Returns:

Return the current status of the object.

virtual void SetOperationMode(sdv::EOperationMode eMode) override#

Set the component operation mode. Overload of sdv::IObjectControl::SetOperationMode.

Parameters:

eMode[in] The operation mode, the component should run in.

virtual void Shutdown() override#

Shutdown called before the object is destroyed. Overload of sdv::IObjectControl::Shutdown.

virtual sdv::ipc::SChannelEndpoint CreateEndpoint(const sdv::u8string &ssChannelConfig) override#

Create IPC connection object and return the endpoint information. Overload of sdv::ipc::ICreateEndpoint::CreateEndpoint.

The endpoints are generated using either a size and a name based on the provided channel configuration or if no configuration is supplied a default size of 10k and a randomly generated name. The following configuration can be supplied:

[IpcChannel]
Name = "CHANNEL_1234"
Size = 10240

Parameters:

ssChannelConfig[in] Optional channel type specific endpoint configuration.

Returns:

IPC connection object

virtual sdv::IInterfaceAccess *Access(const sdv::u8string &ssConnectString) override#

Create a connection object from the channel connection parameters string.

Parameters:

ssConnectString[in] Reference to the string containing the channel connection parameters.

Returns:

Pointer to IInterfaceAccess interface of the connection object or NULL when the object cannot be created.