Skip to content

iox::popo::Client🔗

The Client class for the request-response messaging pattern in iceoryx. More...

#include <iceoryx_posh/popo/client.hpp>

Inherits from iox::popo::ClientImpl< Req, Res >, iox::popo::BaseClient<>, iox::popo::RpcInterface< Request< Req >, ClientSendError >

Public Functions🔗

Name
virtual ~Client()

Additional inherited members🔗

Public Functions inherited from iox::popo::ClientImpl< Req, Res >

Name
ClientImpl(const capro::ServiceDescription & service, const ClientOptions & clientOptions ={})
Constructor for a client.
virtual ~ClientImpl()
ClientImpl(const ClientImpl & )
ClientImpl(ClientImpl && )
ClientImpl & operator=(const ClientImpl & )
ClientImpl & operator=(ClientImpl && )
template <typename... Args>
cxx::expected< Request< Req >, AllocationError >
loan(Args &&... args)
Get a Request from loaned shared memory and construct the data with the given arguments.
cxx::expected< ClientSendError > send(Request< Req > && request) override
Sends the given Request and then releases its loan.
cxx::expected< Response< const Res >, ChunkReceiveResult > take()
Take the Response from the top of the receive queue.

Protected Types inherited from iox::popo::BaseClient<>

Name
using BaseClient< PortT, TriggerHandleT > SelfType
using PortT PortType

Public Functions inherited from iox::popo::BaseClient<>

Name
virtual ~BaseClient()
BaseClient(const BaseClient & other)
BaseClient & operator=(const BaseClient & )
BaseClient(BaseClient && rhs)
BaseClient & operator=(BaseClient && rhs)
uid_t getUid() const
Get the unique ID of the client.
const capro::ServiceDescription & getServiceDescription() const
Get the service description of the client.
void connect()
Initiate connection to server when not already connected, otherwise nothing.
ConnectionState getConnectionState() const
Get current connection state.
void disconnect()
Disconnects when already connected, otherwise nothing.
bool hasResponses() const
Check if response are available.
bool hasMissedResponses()
Check if response has been missed since the last call of this method.
void releaseQueuedResponses()
Releases any unread queued response.

Protected Functions inherited from iox::popo::BaseClient<>

Name
BaseClient(const capro::ServiceDescription & service, const ClientOptions & clientOptions)
void invalidateTrigger(const uint64_t uniqueTriggerId)
Only usable by the WaitSet/Listener, not for public use. Invalidates the internal triggerHandle.
void enableState(TriggerHandleT && triggerHandle, const ClientState clientState)
Only usable by the WaitSet/Listener, not for public use. Attaches the triggerHandle to the internal trigger.
WaitSetIsConditionSatisfiedCallback getCallbackForIsStateConditionSatisfied(const ClientState clientState) const
Only usable by the WaitSet/Listener, not for public use. Returns method pointer to the event corresponding hasTriggered method callback.
void disableState(const ClientState clientState)
Only usable by the WaitSet/Listener, not for public use. Resets the internal triggerHandle.
void enableEvent(TriggerHandleT && triggerHandle, const ClientEvent clientEvent)
Only usable by the WaitSet/Listener, not for public use. Attaches the triggerHandle to the internal trigger.
void disableEvent(const ClientEvent clientEvent)
Only usable by the WaitSet/Listener, not for public use. Resets the internal triggerHandle.
const PortT & port() const
const accessor of the underlying port
PortT & port()
accessor of the underlying port

Protected Attributes inherited from iox::popo::BaseClient<>

Name
PortT m_port
TriggerHandleT m_trigger

Friends inherited from iox::popo::BaseClient<>

Name
class NotificationAttorney

Detailed Description🔗

template <typename Req ,
typename Res >
class iox::popo::Client;

The Client class for the request-response messaging pattern in iceoryx.

Parameters:

  • Req type of request data
  • Res type of response data

Public Functions Documentation🔗

function ~Client🔗

inline virtual ~Client()

Updated on 18 December 2023 at 13:11:43 CET