iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
static_config_event.hpp
Go to the documentation of this file.
1// Copyright (c) 2024 Contributors to the Eclipse Foundation
2//
3// See the NOTICE file(s) distributed with this work for additional
4// information regarding copyright ownership.
5//
6// This program and the accompanying materials are made available under the
7// terms of the Apache Software License 2.0 which is available at
8// https://www.apache.org/licenses/LICENSE-2.0, or the MIT license
9// which is available at https://opensource.org/licenses/MIT.
10//
11// SPDX-License-Identifier: Apache-2.0 OR MIT
12
13#ifndef IOX2_STATIC_CONFIG_EVENT_HPP
14#define IOX2_STATIC_CONFIG_EVENT_HPP
15
17#include "iox2/bb/duration.hpp"
18#include "iox2/bb/optional.hpp"
19#include "iox2/event_id.hpp"
20#include "iox2/iceoryx2.h"
22
23namespace iox2 {
28 public:
31 auto max_nodes() const -> size_t;
32
34 auto max_notifiers() const -> size_t;
35
37 auto max_listeners() const -> size_t;
38
40 auto event_id_max_value() const -> size_t;
41
43 auto notifier_created_event() const -> bb::Optional<EventId>;
44
46 auto notifier_dropped_event() const -> bb::Optional<EventId>;
47
49 auto notifier_dead_event() const -> bb::Optional<EventId>;
50
56 auto deadline() const -> bb::Optional<iox2::bb::Duration>;
57
58 private:
59 template <ServiceType>
60 friend class PortFactoryEvent;
61 friend class StaticConfig;
62
63 explicit StaticConfigEvent(iox2_static_config_event_t value);
64
65 iox2_static_config_event_t m_value;
66};
67} // namespace iox2
68
69auto operator<<(std::ostream& stream, const iox2::StaticConfigEvent& value) -> std::ostream&;
70
71#endif
Type that allows to identify an event uniquely.
Definition event_id.hpp:22
Represents the port factory of a [Service] with [MessagingPattern::Event].
auto notifier_dropped_event() const -> bb::Optional< EventId >
Returns the emitted [EventId] when a notifier is dropped.
auto event_id_max_value() const -> size_t
Returns the largest [EventId] that is supported by the service.
auto notifier_created_event() const -> bb::Optional< EventId >
Returns the emitted [EventId] when a new notifier is created.
auto max_notifiers() const -> size_t
Returns the maximum supported amount of [Notifier] ports.
auto notifier_dead_event() const -> bb::Optional< EventId >
Returns the emitted [EventId] when a notifier is identified as dead.
auto max_listeners() const -> size_t
Returns the maximum supported amount of [Listener] ports.
auto max_nodes() const -> size_t
auto deadline() const -> bb::Optional< iox2::bb::Duration >
Defines a common set of static service configuration details every service shares.