13#ifndef IOX2_SERVICE_BUILDER_HPP
14#define IOX2_SERVICE_BUILDER_HPP
25template <ServiceType S>
36 template <
typename Payload>
45 template <
typename RequestPayload,
typename ResponsePayload>
50 template <
typename KeyType>
55 template <
typename KeyType>
59 template <ServiceType>
61 ServiceBuilder(iox2_node_h_ref node_handle, iox2_service_name_ptr service_name_ptr);
63 iox2_service_builder_h m_handle =
nullptr;
66template <ServiceType S>
68 : m_handle { iox2_node_service_builder(node_handle, nullptr, service_name_ptr) } {
71template <ServiceType S>
76template <ServiceType S>
77template <
typename Payload>
82template <ServiceType S>
83template <
typename RequestPayload,
typename ResponsePayload>
89template <ServiceType S>
90template <
typename KeyType>
95template <ServiceType S>
96template <
typename KeyType>
Builder to create new [MessagingPattern::Blackboard] based [Service]s.
Builder to create new [MessagingPattern::Event] based [Service]s.
Builder to create new [MessagingPattern::PublishSubscribe] based [Service]s.
Builder to create or open [Service]s.
auto blackboard_creator() &&-> ServiceBuilderBlackboardCreator< KeyType, S >
~ServiceBuilder()=default
ServiceBuilder(const ServiceBuilder &)=delete
auto blackboard_opener() &&-> ServiceBuilderBlackboardOpener< KeyType, S >
auto operator=(ServiceBuilder &&) -> ServiceBuilder &=default
auto request_response() &&-> ServiceBuilderRequestResponse< RequestPayload, void, ResponsePayload, void, S >
auto event() &&-> ServiceBuilderEvent< S >
auto publish_subscribe() &&-> ServiceBuilderPublishSubscribe< Payload, void, S >
auto operator=(const ServiceBuilder &) -> ServiceBuilder &=delete
ServiceBuilder(ServiceBuilder &&)=default