iceoryx2.config

class iceoryx2.config.Blackboard

Bases: object

Default settings for the blackboard messaging pattern. These settings are used unless the user specifies custom QoS or port settings.

max_nodes

The maximum amount of supported iceoryx2.Node instances. Defines indirectly how many processes can open the service at the same time.

max_readers

The maximum amount of supported Reader ports

class iceoryx2.config.Config

Bases: object

Represents the configuration that iceoryx2 will utilize. It is divided into two sections: the [Global] settings, which must align with the iceoryx2 instance the application intends to join, and the [Defaults] for communication within that iceoryx2 instance. The user has the flexibility to override both sections.

defaults

Returns the Defaults part of the config

global_cfg

Returns the Global part of the config

class iceoryx2.config.Defaults

Bases: object

Default settings. These values are used when the user in the code does not specify anything else.

blackboard

Returns the blackboard part of the default settings

event

Returns the event part of the default settings

publish_subscribe

Returns the publish_subscribe part of the default settings

request_response

Returns the request_response part of the default settings

class iceoryx2.config.Event

Bases: object

Default settings for the event messaging pattern. These settings are used unless the user specifies custom QoS or port settings.

deadline

Defines the maximum allowed time between two consecutive notifications. If a notification is not sent after the defined time, every Listener that is attached to a WaitSet will be notified.

disable_notifier_created_event()

Do not emit an event whenever a notifier was created.

disable_notifier_dead_event()

Do not emit an event whenever a notifier was identified as dead.

disable_notifier_dropped_event()

Do not emit an event whenever a notifier was dropped.

event_id_max_value

The largest event id supported by the event service

has_notifier_created_event

Returns true if the notifier created event was set, otherwise false.

has_notifier_dead_event

Returns true if the notifier dead event was set, otherwise false.

has_notifier_dropped_event

Returns true if the notifier dropped event was set, otherwise false.

max_listeners

The maximum amount of supported Listener

max_nodes

The maximum amount of supported iceoryx2.Node instances. Defines indirectly how many processes can open the service at the same time.

max_notifiers

The maximum amount of supported Notifier

notifier_created_event

Defines the event id value that is emitted after a new notifier was created. If it is not set then usize::MAX is returned

notifier_dead_event

Defines the event id value that is emitted if a notifier was identified as dead.

notifier_dropped_event

Defines the event id value that is emitted before a new notifier is dropped.

class iceoryx2.config.Global

Bases: object

The global settings

creation_timeout

Defines the time of how long another process will wait until an entity creation is finalized. An entity can be a Service or a Node.

node

Returns the node part of the global configuration

node_dir

Returns the directory under which node files are stored.

prefix

Prefix used for all files created during runtime

root_path

The path under which all other directories or files will be created

service

Returns the service part of the global configuration

service_dir

Returns the directory under which service files are stored.

class iceoryx2.config.Node

Bases: object

All configurable settings of a iceoryx2.Node.

cleanup_dead_nodes_on_creation

When true, the NodeBuilder checks for dead nodes and cleans up all their stale resources whenever a new iceoryx2.Node is created.

cleanup_dead_nodes_on_destruction

When true, the NodeBuilder checks for dead nodes and cleans up all their stale resources whenever an existing iceoryx2.Node is going out of scope.

directory

The directory in which all node files are stored

global_mgmt_suffix

The suffix of the global management segment.

monitor_suffix

The suffix of the monitor token

port_tag_suffix

The suffix of the port tags.

service_tag_suffix

The suffix of the service tags.

static_config_suffix

The suffix of the files where the node configuration is stored.

class iceoryx2.config.PublishSubscribe

Bases: object

Default settings for the publish-subscribe messaging pattern. These settings are used unless the user specifies custom QoS or port settings.

backpressure_strategy

If safe overflow is deactivated it defines the deliver strategy of the Publisher when the Subscriber’s buffer is full.

enable_safe_overflow

Defines how the Subscriber buffer behaves when it is full. When safe overflow is activated, the Publisher will replace the oldest Sample with the newest one.

max_nodes

The maximum amount of supported iceoryx2.Node instances. Defines indirectly how many processes can open the service at the same time.

max_publishers

The maximum amount of supported Publisher ports

max_subscribers

The maximum amount of supported Subscriber ports

publisher_history_size

The maximum history size a Subscriber can request from a Publisher.

publisher_max_loaned_samples

The maximum SampleMut count a Publisher can loan at the same time.

subscriber_expired_connection_buffer

Defines the size of the internal Subscriber buffer that contains expired connections. An connection is expired when the Publisher disconnected from a service and the connection still contains an unconsumed Sample.

subscriber_max_borrowed_samples

The maximum Sample count a Subscriber can hold at the same time.

subscriber_max_buffer_size

The maximum buffer size a Subscriber can have

class iceoryx2.config.RequestResponse

Bases: object

Default settings for the request response messaging pattern. These settings are used unless the user specifies custom QoS or port settings.

client_backpressure_strategy

Defines the BackpressureStrategy when a Client could not deliver the request to the Server.

client_expired_connection_buffer

Defines the size of the internal Client buffer that contains expired connections. An connection is expired when the Server disconnected from a service and the connection still contains an unconsumed Response.

enable_fire_and_forget_requests

Allows the Server to receive a RequestMut from a Client that is not interested in a Response, meaning that the Server will receive the RequestMut despite the corresponding PendingResponse already went out-of-scope. So any Response sent by the Server would not be received by the corresponding Client’s PendingResponse.

Consider enabling this feature if you do not want to loose any RequestMut.

enable_safe_overflow_for_requests

Defines if the request buffer of the iceoryx2.Service safely overflows.

enable_safe_overflow_for_responses

Defines if the response buffer of the iceoryx2.Service safely overflows.

max_active_requests_per_client

The maximum ActiveRequest count a Server can hold in parallel per Client.

max_borrowed_responses_per_pending_response

The maximum amount of borrowed Response per PendingResponse on the Client side.

max_clients

The maximum amount of supported Client

max_loaned_requests

Defines how many RequestMut a Client can loan in parallel.

max_nodes

The maximum amount of supported iceoryx2.Node instances. Defines indirectly how many processes can open the service at the same time.

max_response_buffer_size

The maximum Response buffer size for a PendingResponse.

max_servers

The maximum amount of supported Server

server_backpressure_strategy

Defines the BackpressureStrategy when a Server could not deliver the response to the Client.

server_expired_connection_buffer

Defines the size of the internal Server buffer that contains expired connections. An connection is expired when the Client disconnected from a service and the connection still contains an unconsumed ActiveRequest.

server_max_loaned_responses_per_request

Defines how many ResponseMut a Server can loan in parallel per ActiveRequest.

class iceoryx2.config.Service

Bases: object

All configurable settings of a iceoryx2.Service.

cleanup_dead_nodes_on_open

When true, the ServiceBuilder will clean up dead nodes when opening an existing service.

connection_suffix

The suffix of a one-to-one connection

data_segment_suffix

The suffix of the ports data segment

directory

The directory in which all service files are stored

dynamic_config_storage_suffix

The suffix of the dynamic config file

event_connection_suffix

The suffix of a one-to-one connection

flatbuffer_schema_path

A list of directories where iceoryx2 will look for .fbs flatbuffer schemas. If no path is provided, iceoryx2 will perform no lookup and the user must explicitly define the path to the flatbuffer schemas.

static_config_storage_suffix

The suffix of the static config file

iceoryx2.config.default()
iceoryx2.config.default_config_file_name()

The name of the default iceoryx2 config file

iceoryx2.config.default_config_file_path()

Path to the default config file

iceoryx2.config.default_user_config_file_path()

Path to the default user config file

iceoryx2.config.from_file(config_file)

Loads a configuration from a file. On success it returns a Config object otherwise a ConfigCreationError describing the failure.

iceoryx2.config.global_config()
iceoryx2.config.relative_config_path()

Relative path to the config file

iceoryx2.config.setup_global_config_from_file(config_file)