From 4840dfb7543d66652dc11c5ff39c8f5c1e2f9370 Mon Sep 17 00:00:00 2001 From: Ryan OShea Date: Tue, 25 Aug 2020 12:35:58 +0100 Subject: Updating Doxygen Documentation for 20.08 release Signed-off-by: Ryan OShea Change-Id: I605409f8720de5353feceb161b39f8a5f0598180 --- 20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml | 690 +++++++++++++++++++++ 1 file changed, 690 insertions(+) create mode 100644 20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml (limited to '20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml') diff --git a/20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml b/20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml new file mode 100644 index 0000000000..6d14383256 --- /dev/null +++ b/20.08/classarmnn_1_1_i_tensor_handle_factory.xhtml @@ -0,0 +1,690 @@ + + + + + + + + + + + + + +ArmNN: ITensorHandleFactory Class Reference + + + + + + + + + + + + + + + + +
+
+ + + + ArmNN + + + +
+
+  20.08 +
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ITensorHandleFactory Class Referenceabstract
+
+
+ +

#include <ITensorHandleFactory.hpp>

+
+Inheritance diagram for ITensorHandleFactory:
+
+
+ + +ClTensorHandleFactory +NeonTensorHandleFactory +RefTensorHandleFactory +SampleDynamicTensorHandleFactory + +
+ + + + +

+Public Types

using FactoryId = std::string
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual ~ITensorHandleFactory ()
 Some TensorHandleFactory decisions are deferred to run-time. More...
 
virtual std::unique_ptr< ITensorHandleCreateSubTensorHandle (ITensorHandle &parent, TensorShape const &subTensorShape, unsigned int const *subTensorOrigin) const =0
 
virtual std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo) const =0
 
virtual std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo, DataLayout dataLayout) const =0
 
virtual std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo, const bool IsMemoryManaged) const
 Utility Functions for backends which require TensorHandles to have unmanaged memory. More...
 
virtual std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo, DataLayout dataLayout, const bool IsMemoryManaged) const
 
virtual const FactoryIdGetId () const =0
 
virtual bool SupportsSubTensors () const =0
 
virtual bool SupportsMapUnmap () const final
 
virtual MemorySourceFlags GetExportFlags () const
 
virtual MemorySourceFlags GetImportFlags () const
 
virtual std::vector< CapabilityGetCapabilities (const IConnectableLayer *layer, const IConnectableLayer *connectedLayer, CapabilityClass capabilityClass)
 
+ + + + + + +

+Static Public Attributes

static const FactoryId LegacyFactoryId = "armnn_legacy_factory"
 
static const FactoryId DeferredFactoryId = "armnn_deferred_factory"
 Use the workload factory to create the tensor handle. More...
 
+

Detailed Description

+
+

Definition at line 41 of file ITensorHandleFactory.hpp.

+

Member Typedef Documentation

+ +

◆ FactoryId

+ +
+
+ + + + +
using FactoryId = std::string
+
+ +

Definition at line 44 of file ITensorHandleFactory.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +

◆ ~ITensorHandleFactory()

+ +
+
+ + + + + +
+ + + + + + + +
virtual ~ITensorHandleFactory ()
+
+inlinevirtual
+
+ +

Some TensorHandleFactory decisions are deferred to run-time.

+ +

Definition at line 48 of file ITensorHandleFactory.hpp.

+
48 {}
+
+
+

Member Function Documentation

+ +

◆ CreateSubTensorHandle()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual std::unique_ptr<ITensorHandle> CreateSubTensorHandle (ITensorHandleparent,
TensorShape const & subTensorShape,
unsigned int const * subTensorOrigin 
) const
+
+pure virtual
+
+
+ +

◆ CreateTensorHandle() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::unique_ptr<ITensorHandle> CreateTensorHandle (const TensorInfotensorInfo) const
+
+pure virtual
+
+
+ +

◆ CreateTensorHandle() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual std::unique_ptr<ITensorHandle> CreateTensorHandle (const TensorInfotensorInfo,
DataLayout dataLayout 
) const
+
+pure virtual
+
+
+ +

◆ CreateTensorHandle() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual std::unique_ptr<ITensorHandle> CreateTensorHandle (const TensorInfotensorInfo,
const bool IsMemoryManaged 
) const
+
+inlinevirtual
+
+ +

Utility Functions for backends which require TensorHandles to have unmanaged memory.

+

These should be overloaded if required to facilitate direct import of input tensors and direct export of output tensors.

+ +

Reimplemented in NeonTensorHandleFactory, ClTensorHandleFactory, RefTensorHandleFactory, and SampleDynamicTensorHandleFactory.

+ +

Definition at line 62 of file ITensorHandleFactory.hpp.

+ +

References armnn::IgnoreUnused().

+
64  {
65  IgnoreUnused(IsMemoryManaged);
66  return CreateTensorHandle(tensorInfo);
67  }
void IgnoreUnused(Ts &&...)
+
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo) const =0
+
+
+
+ +

◆ CreateTensorHandle() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual std::unique_ptr<ITensorHandle> CreateTensorHandle (const TensorInfotensorInfo,
DataLayout dataLayout,
const bool IsMemoryManaged 
) const
+
+inlinevirtual
+
+ +

Reimplemented in NeonTensorHandleFactory, ClTensorHandleFactory, RefTensorHandleFactory, and SampleDynamicTensorHandleFactory.

+ +

Definition at line 69 of file ITensorHandleFactory.hpp.

+ +

References armnn::IgnoreUnused().

+
72  {
73  IgnoreUnused(IsMemoryManaged);
74  return CreateTensorHandle(tensorInfo, dataLayout);
75  }
void IgnoreUnused(Ts &&...)
+
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo) const =0
+
+
+
+ +

◆ GetCapabilities()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual std::vector<Capability> GetCapabilities (const IConnectableLayerlayer,
const IConnectableLayerconnectedLayer,
CapabilityClass capabilityClass 
)
+
+inlinevirtual
+
+ +

Reimplemented in NeonTensorHandleFactory.

+ +

Definition at line 86 of file ITensorHandleFactory.hpp.

+ +

References armnn::IgnoreUnused().

+ +

Referenced by armnn::CalculateEdgeStrategy(), ConcatLayer::CreateWorkload(), and SplitterLayer::CreateWorkload().

+
89  {
90  IgnoreUnused(layer);
91  IgnoreUnused(connectedLayer);
92  IgnoreUnused(capabilityClass);
93  return std::vector<Capability>();
94  }
void IgnoreUnused(Ts &&...)
+
+
+
+ +

◆ GetExportFlags()

+ +
+
+ + + + + +
+ + + + + + + +
virtual MemorySourceFlags GetExportFlags () const
+
+inlinevirtual
+
+
+ +

◆ GetId()

+ +
+
+ + + + + +
+ + + + + + + +
virtual const FactoryId& GetId () const
+
+pure virtual
+
+
+ +

◆ GetImportFlags()

+ +
+
+ + + + + +
+ + + + + + + +
virtual MemorySourceFlags GetImportFlags () const
+
+inlinevirtual
+
+
+ +

◆ SupportsMapUnmap()

+ +
+
+ + + + + +
+ + + + + + + +
virtual bool SupportsMapUnmap () const
+
+inlinefinalvirtual
+
+ +

Definition at line 81 of file ITensorHandleFactory.hpp.

+ +

Referenced by armnn::CalculateEdgeStrategy(), armnn::CalculateSlotOption(), and armnn::CalculateSlotOptionForInput().

+
81 { return true; }
+
+
+ +

◆ SupportsSubTensors()

+ +
+
+ + + + + +
+ + + + + + + +
virtual bool SupportsSubTensors () const
+
+pure virtual
+
+
+

Member Data Documentation

+ +

◆ DeferredFactoryId

+ +
+
+ + + + + +
+ + + + +
const ITensorHandleFactory::FactoryId DeferredFactoryId = "armnn_deferred_factory"
+
+static
+
+ +

Use the workload factory to create the tensor handle.

+ +

Definition at line 46 of file ITensorHandleFactory.hpp.

+ +

Referenced by armnn::CalculateSlotOptionForOutput().

+ +
+
+ +

◆ LegacyFactoryId

+ + +
The documentation for this class was generated from the following files: +
+
+ + + + -- cgit v1.2.1