iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
iox2::ServiceBuilderEvent< S > Class Template Reference

Builder to create new [MessagingPattern::Event] based [Service]s. More...

#include <service_builder_event.hpp>

Public Member Functions

auto max_nodes (const uint64_t value) -> decltype(auto)
 
auto event_id_max_value (const uint64_t value) -> decltype(auto)
 
auto max_notifiers (const uint64_t value) -> decltype(auto)
 
auto max_listeners (const uint64_t value) -> decltype(auto)
 
auto notifier_dropped_event (EventId event_id) &&-> ServiceBuilderEvent &&
 
auto notifier_created_event (EventId event_id) &&-> ServiceBuilderEvent &&
 
auto notifier_dead_event (EventId event_id) &&-> ServiceBuilderEvent &&
 
auto deadline (iox2::bb::Duration deadline) &&-> ServiceBuilderEvent &&
 
auto disable_notifier_dropped_event () &&-> ServiceBuilderEvent &&
 If the [Service] is created it disables sending an event when a notifier was dropped.
 
auto disable_notifier_created_event () &&-> ServiceBuilderEvent &&
 If the [Service] is created it disables sending an event when a new notifier was created.
 
auto disable_notifier_dead_event () &&-> ServiceBuilderEvent &&
 
auto disable_deadline () &&-> ServiceBuilderEvent &&
 
auto open_or_create () &&-> bb::Expected< PortFactoryEvent< S >, EventOpenOrCreateError >
 
auto open_or_create_with_attributes (const AttributeVerifier &required_attributes) &&-> bb::Expected< PortFactoryEvent< S >, EventOpenOrCreateError >
 
auto open () &&-> bb::Expected< PortFactoryEvent< S >, EventOpenError >
 Opens an existing [Service].
 
auto open_with_attributes (const AttributeVerifier &required_attributes) &&-> bb::Expected< PortFactoryEvent< S >, EventOpenError >
 
auto create () &&-> bb::Expected< PortFactoryEvent< S >, EventCreateError >
 Creates a new [Service].
 
auto create_with_attributes (const AttributeSpecifier &attributes) &&-> bb::Expected< PortFactoryEvent< S >, EventCreateError >
 Creates a new [Service] with a set of attributes.
 

Friends

template<ServiceType >
class ServiceBuilder
 

Detailed Description

template<ServiceType S>
class iox2::ServiceBuilderEvent< S >

Builder to create new [MessagingPattern::Event] based [Service]s.

Definition at line 32 of file service_builder_event.hpp.

Member Function Documentation

◆ create()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::create ( ) && -> bb::Expected< PortFactoryEvent< S >, EventCreateError >

Creates a new [Service].

◆ create_with_attributes()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::create_with_attributes ( const AttributeSpecifier attributes) && -> bb::Expected< PortFactoryEvent< S >, EventCreateError >

Creates a new [Service] with a set of attributes.

◆ deadline()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::deadline ( iox2::bb::Duration  deadline) && -> ServiceBuilderEvent &&

Enables the deadline property of the service. There must be a notification emitted by any [Notifier] after at least the provided deadline.

◆ disable_deadline()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::disable_deadline ( ) && -> ServiceBuilderEvent &&

Disables the deadline property of the service. [Notifier] can signal notifications at any rate.

◆ disable_notifier_created_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::disable_notifier_created_event ( ) && -> ServiceBuilderEvent &&

If the [Service] is created it disables sending an event when a new notifier was created.

◆ disable_notifier_dead_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::disable_notifier_dead_event ( ) && -> ServiceBuilderEvent &&

If the [Service] is created it disables sending an event when a notifier was identified as dead.

◆ disable_notifier_dropped_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::disable_notifier_dropped_event ( ) && -> ServiceBuilderEvent &&

If the [Service] is created it disables sending an event when a notifier was dropped.

◆ event_id_max_value()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::event_id_max_value ( const uint64_t  value) -> decltype(auto)

If the [Service] is created it set the greatest supported [NodeId] value If an existing [Service] is opened it defines the value size the [NodeId] must at least support.

◆ max_listeners()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::max_listeners ( const uint64_t  value) -> decltype(auto)

If the [Service] is created it defines how many [Listener] shall be supported at most. If an existing [Service] is opened it defines how many [Listener] must be at least supported.

◆ max_nodes()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::max_nodes ( const uint64_t  value) -> decltype(auto)

If the [Service] is created it defines how many [Node]s shall be able to open it in parallel. If an existing [Service] is opened it defines how many [Node]s must be at least supported.

◆ max_notifiers()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::max_notifiers ( const uint64_t  value) -> decltype(auto)

If the [Service] is created it defines how many [Notifier] shall be supported at most. If an existing [Service] is opened it defines how many [Notifier] must be at least supported.

◆ notifier_created_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::notifier_created_event ( EventId  event_id) && -> ServiceBuilderEvent &&

If the [Service] is created it defines the event that shall be emitted by every newly created [Notifier].

◆ notifier_dead_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::notifier_dead_event ( EventId  event_id) && -> ServiceBuilderEvent &&

If the [Service] is created it defines the event that shall be emitted when a [Notifier] is identified as dead. If [None] is provided no event will be emitted.

◆ notifier_dropped_event()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::notifier_dropped_event ( EventId  event_id) && -> ServiceBuilderEvent &&

If the [Service] is created it defines the event that shall be emitted by every [Notifier] before it is dropped. If [None] is provided a [Notifier] will not emit an event.

◆ open()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::open ( ) && -> bb::Expected< PortFactoryEvent< S >, EventOpenError >

Opens an existing [Service].

◆ open_or_create()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::open_or_create ( ) && -> bb::Expected< PortFactoryEvent< S >, EventOpenOrCreateError >

If the [Service] exists, it will be opened otherwise a new [Service] will be created.

◆ open_or_create_with_attributes()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::open_or_create_with_attributes ( const AttributeVerifier required_attributes) && -> bb::Expected< PortFactoryEvent< S >, EventOpenOrCreateError >

If the [Service] exists, it will be opened otherwise a new [Service] will be created. It defines a set of attributes. If the [Service] already exists all attribute requirements must be satisfied otherwise the open process will fail. If the [Service] does not exist the required attributes will be defined in the [Service].

◆ open_with_attributes()

template<ServiceType S>
auto iox2::ServiceBuilderEvent< S >::open_with_attributes ( const AttributeVerifier required_attributes) && -> bb::Expected< PortFactoryEvent< S >, EventOpenError >

Opens an existing [Service] with attribute requirements. If the defined attribute requirements are not satisfied the open process will fail.

Friends And Related Symbol Documentation

◆ ServiceBuilder

template<ServiceType S>
template<ServiceType >
friend class ServiceBuilder
friend

Definition at line 131 of file service_builder_event.hpp.


The documentation for this class was generated from the following file: