1 // 2 // Copyright © 2020 Arm Ltd. All rights reserved. 3 // SPDX-License-Identifier: MIT 4 // 5 #pragma once 6 7 #include <armnn/Types.hpp> 8 9 namespace armnn 10 { 11 12 /// Workload interface to enqueue a layer computation. 13 class IWorkload { 14 public: ~IWorkload()15 virtual ~IWorkload() {} 16 17 virtual void PostAllocationConfigure() = 0; 18 19 virtual void Execute() const = 0; 20 21 virtual profiling::ProfilingGuid GetGuid() const = 0; 22 RegisterDebugCallback(const DebugCallbackFunction &)23 virtual void RegisterDebugCallback(const DebugCallbackFunction & /*func*/) {} 24 }; 25 26 } //namespace armnn 27