34 : m_CapabilityClass(capabilityClass)
51 virtual std::unique_ptr<ITensorHandle> CreateSubTensorHandle(
ITensorHandle& parent,
53 unsigned int const* subTensorOrigin)
const = 0;
55 virtual std::unique_ptr<ITensorHandle> CreateTensorHandle(
const TensorInfo& tensorInfo)
const = 0;
57 virtual std::unique_ptr<ITensorHandle> CreateTensorHandle(
const TensorInfo& tensorInfo,
64 const bool IsMemoryManaged)
const 67 return CreateTensorHandle(tensorInfo);
72 const bool IsMemoryManaged)
const 75 return CreateTensorHandle(tensorInfo, dataLayout);
78 virtual const FactoryId& GetId()
const = 0;
82 virtual bool SupportsSubTensors()
const = 0;
96 return std::vector<Capability>();
static const FactoryId DeferredFactoryId
Use the workload factory to create the tensor handle.
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
No strategy has been defined. Used internally to verify integrity of optimizations.
CapabilityClass
Capability class to calculate in the GetCapabilities function so that only the capability in the scop...
Capability(CapabilityClass capabilityClass, bool value)
Source backends tensor data can be exported to destination backend tensor without copy...
unsigned int MemorySourceFlags
CapabilityClass m_CapabilityClass
Copyright (c) 2021 ARM Limited and Contributors.
void IgnoreUnused(Ts &&...)
virtual bool SupportsInPlaceComputation() const
Capability of the TensorHandleFactory.
Destination backend can work directly with tensors on source backend.
virtual std::vector< Capability > GetCapabilities(const IConnectableLayer *layer, const IConnectableLayer *connectedLayer, CapabilityClass capabilityClass)
virtual MemorySourceFlags GetExportFlags() const
virtual ~ITensorHandleFactory()
Some TensorHandleFactory decisions are deferred to run-time.
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo, DataLayout dataLayout, const bool IsMemoryManaged) const
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo, const bool IsMemoryManaged) const
Utility Functions for backends which require TensorHandles to have unmanaged memory.
virtual MemorySourceFlags GetImportFlags() const
virtual bool SupportsMapUnmap() const
static const FactoryId LegacyFactoryId