iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > Class Template Reference

#include <request_mut.hpp>

Public Member Functions

 RequestMut (RequestMut &&rhs) noexcept
 
auto operator= (RequestMut &&rhs) noexcept -> RequestMut &
 
 ~RequestMut () noexcept
 
 RequestMut (const RequestMut &)=delete
 
auto operator= (const RequestMut &) -> RequestMut &=delete
 
auto header () const -> RequestHeader
 Returns a reference to the iceoryx2 internal [RequestHeader].
 
template<typename T = RequestUserHeader, typename = std::enable_if_t<!std::is_same<void, RequestUserHeader>::value, T>>
auto user_header () const -> const T &
 Returns a reference to the user defined request header.
 
template<typename T = RequestUserHeader, typename = std::enable_if_t<!std::is_same<void, RequestUserHeader>::value, T>>
auto user_header_mut () -> T &
 Returns a mutable reference to the user defined request header.
 
template<typename T = RequestPayload, typename = std::enable_if_t<!bb::IsSlice<T>::VALUE, void>>
auto payload () const -> const RequestPayload &
 Returns a reference to the user defined request payload.
 
template<typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, void>>
auto payload () const -> bb::ImmutableSlice< ValueType >
 Returns a reference to the user defined request payload.
 
template<typename T = RequestPayload, typename = std::enable_if_t<!bb::IsSlice<T>::VALUE, void>>
auto payload_mut () -> RequestPayload &
 Returns a mutable reference to the user defined request payload.
 
template<typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, void>>
auto payload_mut () -> bb::MutableSlice< ValueType >
 Returns a mutable reference to the user defined request payload.
 

Friends

template<ServiceType , typename , typename , typename , typename >
class Client
 
template<ServiceType , typename , typename , typename , typename >
class RequestMutUninit
 
template<ServiceType S, typename RequestPayloadT , typename RequestUserHeaderT , typename ResponsePayloadT , typename ResponseUserHeaderT >
auto send (RequestMut< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT > &&request) -> bb::Expected< PendingResponse< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT >, RequestSendError >
 

Detailed Description

template<ServiceType Service, typename RequestPayload, typename RequestUserHeader, typename ResponsePayload, typename ResponseUserHeader>
class iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >

The [RequestMut] represents the object that contains the payload that the [Client] sends to the [Server].

Definition at line 38 of file request_mut.hpp.

Constructor & Destructor Documentation

◆ RequestMut() [1/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::RequestMut ( RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > &&  rhs)
inlinenoexcept

Definition at line 110 of file request_mut.hpp.

◆ ~RequestMut()

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::~RequestMut ( )
inlinenoexcept

Definition at line 142 of file request_mut.hpp.

◆ RequestMut() [2/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::RequestMut ( const RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > &  )
delete

Member Function Documentation

◆ header()

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::header ( ) const -> RequestHeader
inline

Returns a reference to the iceoryx2 internal [RequestHeader].

Definition at line 152 of file request_mut.hpp.

◆ operator=() [1/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::operator= ( const RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > &  ) -> RequestMut &=delete
delete

◆ operator=() [2/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::operator= ( RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > &&  rhs) -> RequestMut&
inlinenoexcept

Definition at line 126 of file request_mut.hpp.

◆ payload() [1/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, void>>
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::payload ( ) const -> bb::ImmutableSlice< ValueType >

Returns a reference to the user defined request payload.

◆ payload() [2/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T , typename >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::payload ( ) const -> const RequestPayload&
inline

Returns a reference to the user defined request payload.

Definition at line 192 of file request_mut.hpp.

◆ payload_mut() [1/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, void>>
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::payload_mut ( ) -> bb::MutableSlice< ValueType >

Returns a mutable reference to the user defined request payload.

◆ payload_mut() [2/2]

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T , typename >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::payload_mut ( ) -> RequestPayload&
inline

Returns a mutable reference to the user defined request payload.

Definition at line 227 of file request_mut.hpp.

◆ user_header()

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T , typename >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::user_header ( ) const -> const T&
inline

Returns a reference to the user defined request header.

Definition at line 166 of file request_mut.hpp.

◆ user_header_mut()

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<typename T , typename >
auto iox2::RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >::user_header_mut ( ) -> T&
inline

Returns a mutable reference to the user defined request header.

Definition at line 180 of file request_mut.hpp.

Friends And Related Symbol Documentation

◆ Client

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<ServiceType , typename , typename , typename , typename >
friend class Client
friend

Definition at line 80 of file request_mut.hpp.

◆ RequestMutUninit

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<ServiceType , typename , typename , typename , typename >
friend class RequestMutUninit
friend

Definition at line 82 of file request_mut.hpp.

◆ send

template<ServiceType Service, typename RequestPayload , typename RequestUserHeader , typename ResponsePayload , typename ResponseUserHeader >
template<ServiceType S, typename RequestPayloadT , typename RequestUserHeaderT , typename ResponsePayloadT , typename ResponseUserHeaderT >
auto send ( RequestMut< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT > &&  request) -> bb::Expected< PendingResponse< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT >, RequestSendError >
friend

Sends the [RequestMut] to all connected [Server](crate::port::server::Server)s of the [Service](crate::service::Service).


The documentation for this class was generated from the following files: