iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
dynamic_config_publish_subscribe.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_DYNAMIC_CONFIG_PUBLISH_SUBSCRIBE_HPP
14#define IOX2_DYNAMIC_CONFIG_PUBLISH_SUBSCRIBE_HPP
15
20
21#include <cstdint>
22
23namespace iox2 {
24
29 public:
31 // NOTE: can be changed to '= delete' when C++17 becomes mandatory and we can rely on RVO
36
38 auto number_of_publishers() const -> uint64_t;
39
41 auto number_of_subscribers() const -> uint64_t;
42
47 void list_publishers(const iox2::bb::StaticFunction<CallbackProgression(PublisherDetailsView)>& callback) const;
48
53 void list_subscribers(const iox2::bb::StaticFunction<CallbackProgression(SubscriberDetailsView)>& callback) const;
54
55 private:
56 template <ServiceType, typename, typename>
58
59 explicit DynamicConfigPublishSubscribe(iox2_port_factory_pub_sub_h handle);
60
61 iox2_port_factory_pub_sub_h m_handle = nullptr;
62};
63} // namespace iox2
64
65#endif
void list_subscribers(const iox2::bb::StaticFunction< CallbackProgression(SubscriberDetailsView)> &callback) const
DynamicConfigPublishSubscribe(const DynamicConfigPublishSubscribe &)=delete
auto operator=(const DynamicConfigPublishSubscribe &) -> DynamicConfigPublishSubscribe &=delete
DynamicConfigPublishSubscribe(DynamicConfigPublishSubscribe &&)=default
auto number_of_subscribers() const -> uint64_t
Returns how many [Subscriber] ports are currently connected.
auto number_of_publishers() const -> uint64_t
Returns how many [Publisher] ports are currently connected.
auto operator=(DynamicConfigPublishSubscribe &&) -> DynamicConfigPublishSubscribe &=delete
void list_publishers(const iox2::bb::StaticFunction< CallbackProgression(PublisherDetailsView)> &callback) const
Contains the communication settings of the connected [Publisher].
Contains the communication settings of the connected [Subscriber].