legate::TaskInfo#

class TaskInfo#

An object describing a Legate task registration info.

Public Functions

explicit TaskInfo(std::string task_name)#

Construct a TaskInfo.

Parameters:

task_name – The name of the task.

inline explicit TaskInfo(InternalSharedPtr<detail::TaskInfo> impl)#

Construct a TaskInfo.

Parameters:

impl – A pointer to the implementation class.

std::string_view name() const#
Returns:

The name of the task.

std::optional<VariantInfo> find_variant(VariantCode vid) const#

Look up a variant of the task.

See also

VariantInfo

Parameters:

vid – The variant to look up.

Returns:

An optional containing the VariantInfo for the variant, or std::nullopt if the variant was not found.

void add_variant_(
AddVariantKey,
const Library &library,
VariantCode vid,
VariantImpl body,
Processor::TaskFuncPtr entry,
const TaskConfig &task_config,
const VariantOptions *decl_options,
const std::map<VariantCode, VariantOptions> &registration_options = {}
)#

Register a new variant to the task description.

Parameters:
  • library – The library to retrieve the default variant options from.

  • vid – The variant type to register.

  • body – The variant function pointer.

  • entry – The pointer to the entry point wrapping body, to be passed to Legion.

  • task_config – The task-wide configuration options.

  • decl_options – Any variant options declared in the task declaration, or nullptr if none were found.

  • registration_options – Variant options specified at task registration time.

template<typename T>
void add_variant_(
AddVariantKey,
const Library &library,
VariantCode vid,
LegionVariantImpl<T> body,
Processor::TaskFuncPtr entry,
const TaskConfig &task_config,
const VariantOptions *decl_options,
const std::map<VariantCode, VariantOptions> &registration_options = {}
)#

Register a new variant to the task description.

Parameters:
  • library – The library to retrieve the default variant options from.

  • vid – The variant type to register.

  • body – The variant function pointer.

  • entry – The pointer to the entry point wrapping body, to be passed to Legion.

  • task_config – The task-wide configuration options.

  • decl_options – Any variant options declared in the task declaration, or nullptr if none were found.

  • registration_options – Variant options specified at task registration time.

std::string to_string() const#
Returns:

A human-readable representation of the Task.

inline const SharedPtr<detail::TaskInfo> &impl() const#
Returns:

The private implementation pointer.

class AddVariantKey#