aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/graph/Workload.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm_compute/graph/Workload.h')
-rw-r--r--arm_compute/graph/Workload.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arm_compute/graph/Workload.h b/arm_compute/graph/Workload.h
index e9368eefd0..682b08d88d 100644
--- a/arm_compute/graph/Workload.h
+++ b/arm_compute/graph/Workload.h
@@ -69,6 +69,20 @@ public:
*/
struct ExecutionTask
{
+ ExecutionTask(std::unique_ptr<arm_compute::IFunction> &&f, INode *n)
+ : task(std::move(f)), node(n)
+ {
+ }
+ /** Prevent instances of this class from being copied (As this class contains pointers) */
+ ExecutionTask(const ExecutionTask &) = delete;
+ /** Prevent instances of this class from being copied (As this class contains pointers) */
+ ExecutionTask &operator=(const ExecutionTask &) = delete;
+ /** Default Move Constructor. */
+ ExecutionTask(ExecutionTask &&) noexcept = default;
+ /** Default move assignment operator */
+ ExecutionTask &operator=(ExecutionTask &&) noexcept = default;
+ /** Default destructor */
+ ~ExecutionTask() = default;
// TODO (geopin01) : Support vector of functions?
std::unique_ptr<arm_compute::IFunction> task = {}; /**< Task to execute */
INode *node = {}; /**< Node bound to this workload */