8#if defined(SharedTBBExtension) or defined(SharedTBB)
12#include <tbb/task_arena.h>
14#include <oneapi/tbb/task_group.h>
15#include <oneapi/tbb/task_arena.h>
16#include <oneapi/tbb/concurrent_hash_map.h>
17#include <oneapi/tbb/concurrent_queue.h>
20#if !defined(SharedTBBExtension) and !defined(TBB_USE_TASK_GROUP_PREVIEW)
63 #if !defined(SharedTBBExtension) and !defined(TBB_USE_TASK_GROUP_PREVIEW)
64 using Handle = ::oneapi::tbb::task_handle;
96 #if !defined(SharedTBBExtension) and !defined(TBB_USE_TASK_GROUP_PREVIEW)
97 using HashMap = oneapi::tbb::concurrent_hash_map<TaskNumber, oneapi::tbb::task_handle*>;
99 using HashMap = oneapi::tbb::concurrent_hash_map<TaskNumber, ::tbb::dynamic_task_graph_node*>;
Simple utility class around dynamic task graphs to work with integer task numbers.
oneapi::tbb::concurrent_hash_map< TaskNumber, oneapi::tbb::task_handle * > HashMap
void registerTask(Handle *newTask, TaskNumber number)
Factory mechanism.
void addDependencies(Handle *newTask, const std::set< TaskNumber > &in_dependencies)
HashMap _taskHandleContainer
::oneapi::tbb::task_handle Handle
TaskHandleRepository()=default
void addDependency(Handle *newTask, const TaskNumber &in_dependency)
Add dependency.
Represents one node in task graph.
Have to include this header, as I need access to the SYCL_EXTERNAL keyword.
I've written an API to IIT, but I'm not currently using.