iox::popo🔗
Namespaces🔗
Name |
---|
iox::popo::internal |
Classes🔗
Name | |
---|---|
class | iox::popo::BaseClient The BaseClient class contains the common implementation for the different clients. |
class | iox::popo::BasePublisher The BasePublisher class contains the common implementation for the different publisher specializations. |
class | iox::popo::BaseServer The BaseServer class contains the common implementation for the different server. |
class | iox::popo::BaseSubscriber base class for all types of subscriber |
class | iox::popo::ChunkSender |
class | iox::popo::Client The Client class for the request-response messaging pattern in iceoryx. |
class | iox::popo::ClientImpl The ClientImpl class implements the typed client API. |
struct | iox::popo::ClientOptions This struct is used to configure the client. |
struct | iox::popo::EventBasedTrigger_t |
struct | iox::popo::EventCallback |
class | iox::popo::Listener |
class | iox::popo::ListenerImpl The Listener is a class which reacts to registered events by executing a corresponding callback concurrently. This is achieved via an encapsulated thread inside this class. |
class | iox::popo::NotificationAttorney Class which allows accessing private methods to friends of NotificationAttorney. Used for example by the WaitSet. Implements the Client-Attorney Pattern. |
struct | iox::popo::NotificationCallback the struct describes a callback with a user defined type which can be attached to a WaitSet or a Listener |
class | iox::popo::NotificationInfo NotificationInfo holds the state of a trigger like the pointer to the triggerOrigin, the notification id and the callback. |
class | iox::popo::Publisher The Publisher class for the publish-subscribe messaging pattern in iceoryx. |
class | iox::popo::PublisherImpl The PublisherImpl class implements the typed publisher API. |
class | iox::popo::PublisherInterface |
struct | iox::popo::PublisherOptions This struct is used to configure the publisher. |
class | iox::popo::Request The Request class is a mutable abstraction over types which are written to loaned shared memory. These requests are sent to the server via the iceoryx system. |
class | iox::popo::RequestHeader |
class | iox::popo::Response The Response class is a mutable abstraction over types which are written to loaned shared memory. These responses are sent to the client via the iceoryx system. |
class | iox::popo::ResponseHeader |
class | iox::popo::RpcBaseHeader |
class | iox::popo::RpcInterface |
class | iox::popo::Sample The Sample class is a mutable abstraction over types which are written to loaned shared memory. These samples are publishable to the iceoryx system. |
class | iox::popo::Server The Server class for the request-response messaging pattern in iceoryx. |
class | iox::popo::ServerImpl The ServerImpl class implements the typed server API. |
struct | iox::popo::ServerOptions This struct is used to configure the server. |
struct | iox::popo::StateBasedTrigger_t |
class | iox::popo::Subscriber The Subscriber class for the publish-subscribe messaging pattern in iceoryx. |
class | iox::popo::SubscriberImpl The SubscriberImpl class implements the typed subscriber API. |
struct | iox::popo::SubscriberOptions This struct is used to configure the subscriber. |
class | iox::popo::Trigger The Trigger class is usually managed by a factory class like a WaitSet and acquired by classes which would like to signal a notification. Multiple Trigger can share a common ConditionVariableData pointer so that multiple Trigger can signal a single instance. |
class | iox::popo::TriggerHandle TriggerHandle is threadsafe without restrictions in a single process. Not qualified for inter process usage. The TriggerHandle is generated by a Notifyable like the WaitSet and handed out to the user when they acquire a trigger. The TriggerHandle corresponds with an internal Trigger and is used to signal an event via the trigger method. When it goes out of scope it cleans up the corresponding trigger in the Notifyable. |
class | iox::popo::UntypedClient |
class | iox::popo::UntypedClientImpl The UntypedClientImpl class implements the untyped client API. |
class | iox::popo::UntypedPublisher The UntypedPublisher class for the publish-subscribe messaging pattern in iceoryx. |
class | iox::popo::UntypedPublisherImpl The UntypedPublisherImpl class implements the untyped publisher API. |
class | iox::popo::UntypedServer |
class | iox::popo::UntypedServerImpl The UntypedServerImpl class implements the untyped server API. |
class | iox::popo::UntypedSubscriber The UntypedSubscriber class for the publish-subscribe messaging pattern in iceoryx. |
class | iox::popo::UntypedSubscriberImpl The UntypedSubscriberImpl class implements the untyped subscriber API. |
class | iox::popo::UserTrigger An event based trigger which can be used by the application developer directly. If you would like to trigger a WaitSet/Listener through an event of your class you should use the Trigger class. |
class | iox::popo::Void |
class | iox::popo::WaitSet Logical disjunction of a certain number of Triggers. |
Types🔗
Name | |
---|---|
enum | ListenerError { LISTENER_FULL, EVENT_ALREADY_ATTACHED, EMPTY_EVENT_CALLBACK, EMPTY_INVALIDATION_CALLBACK} |
enum uint8_t | ConsumerTooSlowPolicy { WAIT_FOR_CONSUMER, DISCARD_OLDEST_DATA} Used by producers how to adjust to slow consumer. |
enum uint8_t | QueueFullPolicy { BLOCK_PRODUCER, DISCARD_OLDEST_DATA} Used by consumers to request a specific behavior from the producer. |
enum | TriggerType { STATE_BASED, EVENT_BASED, INVALID} |
enum uint8_t | WaitSetError { WAIT_SET_FULL, ALREADY_ATTACHED} |
enum | MessagingPattern { PUB_SUB, REQ_RES} |
enum EventEnumIdentifier | SubscriberEvent { DATA_RECEIVED} |
enum StateEnumIdentifier | SubscriberState { HAS_DATA} |
using cxx::ConstMethodCallback< bool > | WaitSetIsConditionSatisfiedCallback |
using uint64_t | StateEnumIdentifier used as underlying type it identifies an enum as a state based enum |
using int64_t | EventEnumIdentifier used as underlying type it identifies an enum as an event based enum |
typedef UniquePortId | uid_t |
Functions🔗
Name | |
---|---|
template <typename OriginType ,typename ContextDataType =internal::NoType_t> NotificationCallback< OriginType, ContextDataType > |
createNotificationCallback(void(&)(OriginType *const) callback) creates an NotificationCallback |
template <typename OriginType ,typename ContextDataType > NotificationCallback< OriginType, ContextDataType > |
createNotificationCallback(void(&)(OriginType const, ContextDataType const) callback, ContextDataType & userValue) creates an NotificationCallback with a user defined value |
Attributes🔗
Name | |
---|---|
constexpr bool | IS_EVENT_ENUM contains true when T is an event based enum, otherwise false |
constexpr bool | IS_STATE_ENUM contains true when T is a state based enum, otherwise false |
constexpr StateBasedTrigger_t | StateBasedTrigger |
constexpr EventBasedTrigger_t | EventBasedTrigger |
Types Documentation🔗
enum ListenerError🔗
Enumerator | Value | Description |
---|---|---|
LISTENER_FULL | ||
EVENT_ALREADY_ATTACHED | ||
EMPTY_EVENT_CALLBACK | ||
EMPTY_INVALIDATION_CALLBACK |
enum ConsumerTooSlowPolicy🔗
Enumerator | Value | Description |
---|---|---|
WAIT_FOR_CONSUMER | Waits for the consumer it it's queue is full. | |
DISCARD_OLDEST_DATA | Discards the oldest data and pushes the newest one into the queue. |
Used by producers how to adjust to slow consumer.
enum QueueFullPolicy🔗
Enumerator | Value | Description |
---|---|---|
BLOCK_PRODUCER | Requests the producer to block when the consumer queue is full. | |
DISCARD_OLDEST_DATA | Request to discard the oldest data and push the newest one into the queue. |
Used by consumers to request a specific behavior from the producer.
enum TriggerType🔗
Enumerator | Value | Description |
---|---|---|
STATE_BASED | ||
EVENT_BASED | ||
INVALID |
enum WaitSetError🔗
Enumerator | Value | Description |
---|---|---|
WAIT_SET_FULL | ||
ALREADY_ATTACHED |
enum MessagingPattern🔗
Enumerator | Value | Description |
---|---|---|
PUB_SUB | ||
REQ_RES |
enum SubscriberEvent🔗
Enumerator | Value | Description |
---|---|---|
DATA_RECEIVED |
enum SubscriberState🔗
Enumerator | Value | Description |
---|---|---|
HAS_DATA |
using WaitSetIsConditionSatisfiedCallback🔗
using iox::popo::WaitSetIsConditionSatisfiedCallback = typedef cxx::ConstMethodCallback<bool>;
using StateEnumIdentifier🔗
using iox::popo::StateEnumIdentifier = typedef uint64_t;
used as underlying type it identifies an enum as a state based enum
using EventEnumIdentifier🔗
using iox::popo::EventEnumIdentifier = typedef int64_t;
used as underlying type it identifies an enum as an event based enum
typedef uid_t🔗
typedef UniquePortId iox::popo::uid_t;
Functions Documentation🔗
function createNotificationCallback🔗
template <typename OriginType ,
typename ContextDataType =internal::NoType_t>
NotificationCallback< OriginType, ContextDataType > createNotificationCallback(
void(&)(OriginType *const) callback
)
creates an NotificationCallback
Parameters:
- callback reference to a callback with the signature void(OriginType*)
Return: the callback stored inside of an NotificationCallback
function createNotificationCallback🔗
template <typename OriginType ,
typename ContextDataType >
NotificationCallback< OriginType, ContextDataType > createNotificationCallback(
void(&)(OriginType *const, ContextDataType *const) callback,
ContextDataType & userValue
)
creates an NotificationCallback with a user defined value
Parameters:
- callback reference to a callback with the signature void(OriginType, ContextDataType)
- userValue reference to a user defined value
Return: the callback and user value stored inside of an NotificationCallback
Attributes Documentation🔗
variable IS_EVENT_ENUM🔗
constexpr bool IS_EVENT_ENUM =
std::is_enum<T>::value&& std::is_same<std::underlying_type_t<T>, EventEnumIdentifier>::value;
contains true when T is an event based enum, otherwise false
variable IS_STATE_ENUM🔗
constexpr bool IS_STATE_ENUM =
std::is_enum<T>::value&& std::is_same<std::underlying_type_t<T>, StateEnumIdentifier>::value;
contains true when T is a state based enum, otherwise false
variable StateBasedTrigger🔗
constexpr StateBasedTrigger_t StateBasedTrigger {};
variable EventBasedTrigger🔗
constexpr EventBasedTrigger_t EventBasedTrigger {};
Updated on 18 December 2023 at 13:02:35 CET