hpx/lcos_distributed/server/channel.hpp

See Public API for a list of names and headers that are part of the public HPX API.

Defines

HPX_REGISTER_CHANNEL_DECLARATION(...)
HPX_REGISTER_CHANNEL_DECLARATION_(...)
HPX_REGISTER_CHANNEL_DECLARATION_1(type)
HPX_REGISTER_CHANNEL_DECLARATION_2(type, name)
HPX_REGISTER_CHANNEL(...)
HPX_REGISTER_CHANNEL_(...)
HPX_REGISTER_CHANNEL_1(type)
HPX_REGISTER_CHANNEL_2(type, name)
namespace hpx
namespace lcos
namespace server
template<typename T, typename RemoteType>
class channel

Public Types

template<>
using base_type_holder = lcos::base_lco_with_value<T, RemoteType, traits::detail::component_tag>
template<>
using wrapping_type = typename base_type::wrapping_type

Public Functions

channel()
naming::address get_current_address() const
void set_value(RemoteType &&result)
void set_exception(std::exception_ptr const&)
result_type get_value()
result_type get_value(error_code &ec)
hpx::future<T> get_generation(std::size_t generation)
void set_generation(RemoteType &&value, std::size_t generation)
std::size_t close(bool force_delete_entries)

Public Static Functions

static components::component_type get_component_type()
static void set_component_type(components::component_type type)

Private Types

template<>
using base_type = components::component_base<channel>
template<>
using result_type = std::conditional_t<std::is_void<T>::value, util::unused_type, T>

Private Members

lcos::local::channel<result_type> channel_