hpx/async_distributed/base_lco.hpp#

Defined in header hpx/async_distributed/base_lco.hpp.

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

namespace hpx
template<>
struct get_lva<hpx::lcos::base_lco>#

Public Static Functions

static inline constexpr hpx::lcos::base_lco *call(hpx::naming::address_type lva) noexcept#
template<>
struct get_lva<hpx::lcos::base_lco const>#

Public Static Functions

static inline constexpr hpx::lcos::base_lco const *call(hpx::naming::address_type lva) noexcept#
namespace lcos
class base_lco#
#include <base_lco.hpp>

The base_lco class is the common base class for all LCO’s implementing a simple set_event action

Subclassed by hpx::lcos::base_lco_with_value< Result, RemoteResult, ComponentTag >, hpx::lcos::base_lco_with_value< void, void, ComponentTag >

Public Types

typedef components::managed_component<base_lco> wrapping_type#
typedef base_lco base_type_holder#

Public Functions

virtual void set_event() = 0#
virtual void set_exception(std::exception_ptr const &e)#
virtual void connect(hpx::id_type const&)#
virtual void disconnect(hpx::id_type const&)#
virtual ~base_lco()#

Destructor, needs to be virtual to allow for clean destruction of derived objects

void set_event_nonvirt()#

The function set_event_nonvirt is called whenever a set_event_action is applied on a instance of a LCO. This function just forwards to the virtual function set_event, which is overloaded by the derived concrete LCO.

void set_exception_nonvirt(std::exception_ptr const &e)#

The function set_exception is called whenever a set_exception_action is applied on a instance of a LCO. This function just forwards to the virtual function set_exception, which is overloaded by the derived concrete LCO.

Parameters:

e – [in] The exception encapsulating the error to report to this LCO instance.

void connect_nonvirt(hpx::id_type const &id)#

The function connect_nonvirt is called whenever a connect_action is applied on a instance of a LCO. This function just forwards to the virtual function connect, which is overloaded by the derived concrete LCO.

Parameters:

id – [in] target id

void disconnect_nonvirt(hpx::id_type const &id)#

The function disconnect_nonvirt is called whenever a disconnect_action is applied on a instance of a LCO. This function just forwards to the virtual function disconnect, which is overloaded by the derived concrete LCO.

Parameters:

id – [in] target id

Public Static Functions

static components::component_type get_component_type() noexcept#

Returns the component type associated with this LCO.

static void set_component_type(components::component_type type)#

Sets the component type associated with this LCO.

Parameters:

type – The component type to associate with this LCO.