|
iceoryx2
C++ Language Bindings
|
#include <service_builder_request_response.hpp>
Public Member Functions | |
| auto | request_payload_alignment (const uint64_t value) -> decltype(auto) |
| auto | response_payload_alignment (const uint64_t value) -> decltype(auto) |
| auto | enable_safe_overflow_for_requests (const bool value) -> decltype(auto) |
| auto | enable_safe_overflow_for_responses (const bool value) -> decltype(auto) |
| auto | max_active_requests_per_client (const uint64_t value) -> decltype(auto) |
| auto | max_response_buffer_size (const uint64_t value) -> decltype(auto) |
| auto | max_servers (const uint64_t value) -> decltype(auto) |
| auto | max_clients (const uint64_t value) -> decltype(auto) |
| auto | max_nodes (const uint64_t value) -> decltype(auto) |
| auto | max_borrowed_responses_per_pending_response (const uint64_t value) -> decltype(auto) |
| auto | max_loaned_requests (const uint64_t value) -> decltype(auto) |
| auto | enable_fire_and_forget_requests (const bool value) -> decltype(auto) |
If the [Service] is created, defines the fire-and-forget behavior of the service for requests. | |
| template<typename NewRequestUserHeader > | |
| auto | request_user_header () &&-> ServiceBuilderRequestResponse< RequestPayload, NewRequestUserHeader, ResponsePayload, ResponseUserHeader, S > && |
Sets the request user header type of the [Service]. | |
| template<typename NewResponseUserHeader > | |
| auto | response_user_header () &&-> ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, NewResponseUserHeader, S > && |
Sets the response user header type of the [Service]. | |
| auto | resume_build () &-> ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S > && |
| auto | open_or_create () &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseOpenOrCreateError > |
| auto | open_or_create_with_attributes (const AttributeVerifier &required_attributes) &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseOpenOrCreateError > |
| auto | open () &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseOpenError > |
Opens an existing [Service]. | |
| auto | open_with_attributes (const AttributeVerifier &required_attributes) &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseOpenError > |
| auto | create () &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseCreateError > |
Creates a new [Service]. | |
| auto | create_with_attributes (const AttributeSpecifier &attributes) &&-> bb::Expected< PortFactoryRequestResponse< S, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >, RequestResponseCreateError > |
Creates a new [Service] with a set of attributes. | |
Friends | |
| template<ServiceType > | |
| class | ServiceBuilder |
| template<typename ReqP , typename ReqH , typename ResP , typename ResH , ServiceType St> | |
| auto | set_request_header_type_details (ServiceBuilderRequestResponse< ReqP, ReqH, ResP, ResH, St > &builder, const TypeDetail &value) -> std::enable_if_t< std::is_same< ReqH, CustomHeaderMarker >::value > |
| template<typename ReqP , typename ReqH , typename ResP , typename ResH , ServiceType St> | |
| auto | set_response_header_type_details (ServiceBuilderRequestResponse< ReqP, ReqH, ResP, ResH, St > &builder, const TypeDetail &value) -> std::enable_if_t< std::is_same< ResH, CustomHeaderMarker >::value > |
| template<typename ReqP , typename ReqH , typename ResP , typename ResH , ServiceType St> | |
| auto | set_request_payload_type_details (ServiceBuilderRequestResponse< ReqP, ReqH, ResP, ResH, St > &builder, const TypeDetail &value) -> std::enable_if_t< std::is_same< ReqP, bb::Slice< CustomPayloadMarker > >::value > |
| template<typename ReqP , typename ReqH , typename ResP , typename ResH , ServiceType St> | |
| auto | set_response_payload_type_details (ServiceBuilderRequestResponse< ReqP, ReqH, ResP, ResH, St > &builder, const TypeDetail &value) -> std::enable_if_t< std::is_same< ResP, bb::Slice< CustomPayloadMarker > >::value > |
Definition at line 122 of file service_builder_request_response.hpp.
|
inline |
Creates a new [Service].
Definition at line 487 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
Creates a new [Service] with a set of attributes.
Definition at line 509 of file service_builder_request_response.hpp.
References iox2::bb::err().
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::enable_fire_and_forget_requests | ( | const bool | value | ) | -> decltype(auto) |
If the [Service] is created, defines the fire-and-forget behavior of the service for requests.
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::enable_safe_overflow_for_requests | ( | const bool | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::enable_safe_overflow_for_responses | ( | const bool | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_active_requests_per_client | ( | const uint64_t | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_borrowed_responses_per_pending_response | ( | const uint64_t | value | ) | -> decltype(auto) |
If the [Service] is created it defines how many [Response]s shall be able to be borrowed in parallel per [PendingResponse]. If an existing [Service] is opened it defines how many borrows must be at least supported.
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_clients | ( | const uint64_t | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_loaned_requests | ( | const uint64_t | value | ) | -> decltype(auto) |
If the [Service] is created it defines how many [RequestMut] a [Client] can loan in parallel.
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_nodes | ( | const uint64_t | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_response_buffer_size | ( | const uint64_t | value | ) | -> decltype(auto) |
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::max_servers | ( | const uint64_t | value | ) | -> decltype(auto) |
|
inline |
Opens an existing [Service].
Definition at line 442 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
If the [Service] exists, it will be opened otherwise a new [Service] will be created.
Definition at line 397 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
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, and service payload type must be the same, otherwise the open process will fail. If the [Service] does not exist the required attributes will be defined in the [Service].
Definition at line 419 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
Opens an existing [Service] with attribute requirements. If the defined attribute requirements are not satisfied the open process will fail.
Definition at line 464 of file service_builder_request_response.hpp.
References iox2::bb::err().
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::request_payload_alignment | ( | const uint64_t | value | ) | -> decltype(auto) |
If the [Service] is created, it defines the request [Alignment] of the payload for the service. If an existing [Service] is opened it requires the service to have at least the defined [Alignment]. If the Payload [Alignment] is greater than the provided [Alignment] then the Payload [Alignment] is used.
|
inline |
Sets the request user header type of the [Service].
Definition at line 340 of file service_builder_request_response.hpp.
| auto iox2::ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader, S >::response_payload_alignment | ( | const uint64_t | value | ) | -> decltype(auto) |
If the [Service] is created, it defines the response [Alignment] of the payload for the service. If an existing [Service] is opened it requires the service to have at least the defined [Alignment]. If the Payload [Alignment] is greater than the provided [Alignment] then the Payload [Alignment] is used.
|
inline |
Sets the response user header type of the [Service].
Definition at line 362 of file service_builder_request_response.hpp.
|
inline |
Returns the builder as an r-value so the fluent chain can be resumed after a free function, such as [set_request_header_type_details()] or [set_request_payload_type_details()], has been applied to the named builder.
Definition at line 383 of file service_builder_request_response.hpp.
|
friend |
Definition at line 296 of file service_builder_request_response.hpp.
|
friend |
|
friend |
|
friend |
|
friend |