hpx/components_base/component_type.hpp#

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

Defines

HPX_DEFINE_GET_COMPONENT_TYPE(component)#
HPX_DEFINE_GET_COMPONENT_TYPE_TEMPLATE(template_, component)#
HPX_DEFINE_GET_COMPONENT_TYPE_STATIC(component, type)#
HPX_DEFINE_COMPONENT_NAME(...)#
HPX_DEFINE_COMPONENT_NAME_(...)#
HPX_DEFINE_COMPONENT_NAME_2(Component, name)#
HPX_DEFINE_COMPONENT_NAME_3(Component, name, base_name)#
namespace hpx
namespace components

Typedefs

using component_deleter_type = void (*)(hpx::naming::gid_type const&, hpx::naming::address const&)#

Enums

enum component_enum_type#

Values:

enumerator component_invalid#
enumerator component_runtime_support#
enumerator component_plain_function#
enumerator component_base_lco#
enumerator component_base_lco_with_value_unmanaged#
enumerator component_base_lco_with_value#
enumerator component_latch#
enumerator component_barrier#
enumerator component_promise#
enumerator component_agas_locality_namespace#
enumerator component_agas_primary_namespace#
enumerator component_agas_component_namespace#
enumerator component_agas_symbol_namespace#
enumerator component_last#
enumerator component_first_dynamic#
enumerator component_upper_bound#
enum factory_state_enum#

Values:

enumerator factory_enabled#
enumerator factory_disabled#
enumerator factory_check#

Functions

bool &enabled(component_type type)#
util::atomic_count &instance_count(component_type type)#
component_deleter_type &deleter(component_type type)#
bool enumerate_instance_counts(hpx::move_only_function<bool(component_type)> const &f)#
const std::string get_component_type_name(component_type type)#

Return the string representation for a given component type id.

inline constexpr component_type get_base_type(component_type t) noexcept#

The lower short word of the component type is the type of the component exposing the actions.

inline constexpr component_type get_derived_type(component_type t) noexcept#

The upper short word of the component is the actual component type.

inline constexpr component_type derived_component_type(component_type derived, component_type base) noexcept#

A component derived from a base component exposing the actions needs to have a specially formatted component type.

inline constexpr bool types_are_compatible(component_type lhs, component_type rhs) noexcept#

Verify the two given component types are matching (compatible)

template<typename Component, typename Enable = void>
constexpr char const *get_component_name() noexcept#
template<typename Component, typename Enable = void>
constexpr const char *get_component_base_name() noexcept#
template<typename Component>
inline component_type get_component_type() noexcept#
template<typename Component>
inline void set_component_type(component_type type)#
namespace naming#

Functions

std::ostream &operator<<(std::ostream&, address const&)#