|
iceoryx2
C++ 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]. | |
| template<typename U = RequestPayload, typename = std::enable_if_t<has_flatbuffer_marker<U>(), void>> | |
| auto | request_flatbuffer_schema_path (const bb::FilePath &value) &&-> ServiceBuilderRequestResponse< U, RequestUserHeader, ResponsePayload, ResponseUserHeader, S > && |
| template<typename U = ResponsePayload, typename = std::enable_if_t<has_flatbuffer_marker<U>(), void>> | |
| auto | response_flatbuffer_schema_path (const bb::FilePath &value) &&-> ServiceBuilderRequestResponse< RequestPayload, RequestUserHeader, U, ResponseUserHeader, S > && |
| 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 121 of file service_builder_request_response.hpp.
|
inline |
Creates a new [Service].
Definition at line 512 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
Creates a new [Service] with a set of attributes.
Definition at line 534 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 467 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 422 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 444 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 489 of file service_builder_request_response.hpp.
References iox2::bb::err().
|
inline |
Sets the path to the request flatbuffer schema file. If this is not explicitly defined, iceoryx2 will try to find the best fitting schema file in the configured flatbuffer schema paths defined in the config.
Definition at line 568 of file service_builder_request_response.hpp.
| 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 365 of file service_builder_request_response.hpp.
|
inline |
Sets the path to the response flatbuffer schema file. If this is not explicitly defined, iceoryx2 will try to find the best fitting schema file in the configured flatbuffer schema paths defined in the config.
Definition at line 583 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 387 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 408 of file service_builder_request_response.hpp.
|
friend |
Definition at line 311 of file service_builder_request_response.hpp.
|
friend |
|
friend |
|
friend |
|
friend |