ArmNN
 22.02
MockWorkloadFactory Class Reference

#include <MockBackend.hpp>

Inheritance diagram for MockWorkloadFactory:
IWorkloadFactory

Public Member Functions

 MockWorkloadFactory (const std::shared_ptr< MockMemoryManager > &memoryManager)
 
 MockWorkloadFactory ()
 
 ~MockWorkloadFactory ()
 
const BackendIdGetBackendId () const override
 
bool SupportsSubTensors () const override
 
std::unique_ptr< ITensorHandleCreateSubTensorHandle (ITensorHandle &, TensorShape const &, unsigned int const *) const override
 
std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo, const bool IsMemoryManaged=true) const override
 
std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &tensorInfo, DataLayout dataLayout, const bool IsMemoryManaged=true) const override
 
- Public Member Functions inherited from IWorkloadFactory
virtual ~IWorkloadFactory ()
 
virtual void AfterWorkloadsCreated ()
 
virtual std::unique_ptr< IWorkloadCreateInput (const InputQueueDescriptor &descriptor, const WorkloadInfo &info) const =0
 
virtual std::unique_ptr< IWorkloadCreateWorkload (LayerType type, const QueueDescriptor &descriptor, const WorkloadInfo &info) const
 

Public Attributes

ARMNN_DEPRECATED_MSG_REMOVAL_DATE("Use ABI stable " "CreateWorkload(LayerType, const QueueDescriptor&, const WorkloadInfo& info) instead.", "22.11") std std::unique_ptr< IWorkloadCreateWorkload (LayerType type, const QueueDescriptor &descriptor, const WorkloadInfo &info) const override
 

Additional Inherited Members

- Static Public Member Functions inherited from IWorkloadFactory
static bool IsLayerSupported (const BackendId &backendId, const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported)
 
static bool IsLayerSupported (const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported)
 
static bool IsLayerSupported (const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported, const ModelOptions &modelOptions)
 
static bool IsLayerSupported (const BackendId &backendId, const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported, const ModelOptions &modelOptions)
 

Detailed Description

Definition at line 41 of file MockBackend.hpp.

Constructor & Destructor Documentation

◆ MockWorkloadFactory() [1/2]

MockWorkloadFactory ( const std::shared_ptr< MockMemoryManager > &  memoryManager)
explicit

Definition at line 29 of file MockBackend.cpp.

30  : m_MemoryManager(memoryManager)
31 {}

◆ MockWorkloadFactory() [2/2]

Definition at line 33 of file MockBackend.cpp.

34  : m_MemoryManager(new MockMemoryManager())
35 {}

◆ ~MockWorkloadFactory()

~MockWorkloadFactory ( )
inline

Definition at line 48 of file MockBackend.hpp.

References GetBackendId().

49  {}

Member Function Documentation

◆ CreateSubTensorHandle()

std::unique_ptr<ITensorHandle> CreateSubTensorHandle ( ITensorHandle ,
TensorShape const &  ,
unsigned int const *   
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Definition at line 59 of file MockBackend.hpp.

References ARMNN_DEPRECATED_MSG.

62  {
63  return nullptr;
64  }

◆ CreateTensorHandle() [1/2]

std::unique_ptr<ITensorHandle> CreateTensorHandle ( const TensorInfo tensorInfo,
const bool  IsMemoryManaged = true 
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Definition at line 67 of file MockBackend.hpp.

References ARMNN_DEPRECATED_MSG, and armnn::IgnoreUnused().

69  {
70  IgnoreUnused(IsMemoryManaged);
71  return std::make_unique<MockTensorHandle>(tensorInfo, m_MemoryManager);
72  };
void IgnoreUnused(Ts &&...)

◆ CreateTensorHandle() [2/2]

std::unique_ptr<ITensorHandle> CreateTensorHandle ( const TensorInfo tensorInfo,
DataLayout  dataLayout,
const bool  IsMemoryManaged = true 
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Definition at line 75 of file MockBackend.hpp.

References armnn::ARMNN_DEPRECATED_MSG_REMOVAL_DATE(), armnn::IgnoreUnused(), armnn::info, WorkloadInfo::m_InputTensorInfos, WorkloadInfo::m_OutputTensorInfos, and armnn::Malloc.

78  {
79  IgnoreUnused(dataLayout, IsMemoryManaged);
80  return std::make_unique<MockTensorHandle>(tensorInfo, static_cast<unsigned int>(MemorySource::Malloc));
81  };
void IgnoreUnused(Ts &&...)

◆ GetBackendId()

const BackendId & GetBackendId ( ) const
overridevirtual

Implements IWorkloadFactory.

Definition at line 37 of file MockBackend.cpp.

References MockWorkloadFactory::CreateWorkload, armnn::info, QueueDescriptor::m_Inputs, and armnn::MemCopy.

38 {
39  return s_Id;
40 }

◆ SupportsSubTensors()

bool SupportsSubTensors ( ) const
inlineoverridevirtual

Implements IWorkloadFactory.

Definition at line 53 of file MockBackend.hpp.

References ARMNN_DEPRECATED_MSG.

54  {
55  return false;
56  }

Member Data Documentation

◆ CreateWorkload

std::unique_ptr< IWorkload > CreateWorkload
override

Definition at line 109 of file MockBackend.hpp.

Referenced by MockWorkloadFactory::GetBackendId().


The documentation for this class was generated from the following files: