17#ifndef IOX_POSH_POPO_RESPONSE_HPP
18#define IOX_POSH_POPO_RESPONSE_HPP
20#include "iceoryx_hoofs/cxx/type_traits.hpp"
21#include "iceoryx_hoofs/cxx/unique_ptr.hpp"
22#include "iceoryx_posh/internal/log/posh_logging.hpp"
23#include "iceoryx_posh/internal/popo/ports/server_port_user.hpp"
24#include "iceoryx_posh/internal/popo/smart_chunk.hpp"
25#include "iceoryx_posh/mepoo/chunk_header.hpp"
26#include "iceoryx_posh/popo/rpc_header.hpp"
33template <
typename RpcType,
typename SendErrorEnum>
39class Response :
public SmartChunk<RpcInterface<Response<T>, ServerSendError>,
41 cxx::add_const_conditionally_t<ResponseHeader, T>>
46 template <
typename S,
typename TT>
53 using BaseType::BaseType;
58 template <
typename S = T,
typename = ForServerOnly<S, T>>
75 using BaseType::release;
82#include "iceoryx_posh/internal/popo/response.inl"
The ClientImpl class implements the typed client API.
Definition client_impl.hpp:40
The Response class is a mutable abstraction over types which are written to loaned shared memory....
Definition response.hpp:42
cxx::add_const_conditionally_t< ResponseHeader, T > & getResponseHeader() noexcept
Retrieve the response-header of the underlying memory chunk loaned to the sample.
cxx::expected< ServerSendError > send() noexcept
Sends the response via the server from which it was loaned and automatically release ownership to it.
The ServerImpl class implements the typed server API.
Definition server_impl.hpp:40
the struct describes a callback with a user defined type which can be attached to a WaitSet or a List...
Definition notification_callback.hpp:58