ArmNN
 21.11
TensorHandle Class Reference

#include <TensorHandle.hpp>

Inheritance diagram for TensorHandle:
ConstTensorHandle ITensorHandle PassthroughTensorHandle ScopedTensorHandle

Public Member Functions

template<typename T >
T * GetTensor () const
 
template<>
void * GetTensor () const
 
template<>
void * GetTensor () const
 
- Public Member Functions inherited from ConstTensorHandle
template<typename T >
const T * GetConstTensor () const
 
const TensorInfoGetTensorInfo () const
 
virtual void Manage () override
 Indicate to the memory manager that this resource is active. More...
 
virtual ITensorHandleGetParent () const override
 Get the parent tensor if this is a subtensor. More...
 
virtual const void * Map (bool) const override
 Map the tensor data for access. More...
 
virtual void Unmap () const override
 Unmap the tensor data. More...
 
TensorShape GetStrides () const override
 Get the strides for each dimension ordered from largest to smallest where the smallest value is the same as the size of a single element in the tensor. More...
 
TensorShape GetShape () const override
 Get the number of elements for each dimension ordered from slowest iterating dimension to fastest iterating dimension. More...
 
template<>
const void * GetConstTensor () const
 
template<>
const void * GetConstTensor () const
 
- Public Member Functions inherited from ITensorHandle
virtual ~ITensorHandle ()
 
virtual void Allocate ()=0
 Indicate to the memory manager that this resource is no longer active. More...
 
void * Map (bool blocking=true)
 Map the tensor data for access. More...
 
void Unmap ()
 Unmap the tensor data that was previously mapped with call to Map(). More...
 
virtual unsigned int GetImportFlags () const
 Get flags describing supported import sources. More...
 
virtual bool Import (void *memory, MemorySource source)
 Import externally allocated memory. More...
 
virtual void Unimport ()
 Unimport externally allocated memory. More...
 

Protected Member Functions

 TensorHandle (const TensorInfo &tensorInfo)
 
void SetMemory (void *mem)
 
- Protected Member Functions inherited from ConstTensorHandle
 ConstTensorHandle (const TensorInfo &tensorInfo)
 
void SetConstMemory (const void *mem)
 

Detailed Description

Definition at line 76 of file TensorHandle.hpp.

Constructor & Destructor Documentation

◆ TensorHandle()

TensorHandle ( const TensorInfo tensorInfo)
protected

Definition at line 43 of file TensorHandle.cpp.

44 : ConstTensorHandle(tensorInfo)
45 , m_MutableMemory(nullptr)
46 {
47 }
ConstTensorHandle(const TensorInfo &tensorInfo)

Member Function Documentation

◆ GetTensor() [1/3]

void * GetTensor ( ) const

Definition at line 50 of file TensorHandle.cpp.

51 {
52  return m_MutableMemory;
53 }

◆ GetTensor() [2/3]

T* GetTensor ( ) const
inline

Definition at line 80 of file TensorHandle.hpp.

References ARMNN_ASSERT, and ConstTensorHandle::GetTensorInfo().

Referenced by ScopedTensorHandle::Allocate(), and ConstPassthroughTensorHandle::ConstPassthroughTensorHandle().

81  {
82  ARMNN_ASSERT(CompatibleTypes<T>(GetTensorInfo().GetDataType()));
83  return reinterpret_cast<T*>(m_MutableMemory);
84  }
const TensorInfo & GetTensorInfo() const
#define ARMNN_ASSERT(COND)
Definition: Assert.hpp:14

◆ GetTensor() [3/3]

void* GetTensor ( ) const

◆ SetMemory()

void SetMemory ( void *  mem)
inlineprotected

Definition at line 89 of file TensorHandle.hpp.

References ConstTensorHandle::SetConstMemory().

Referenced by ScopedTensorHandle::Allocate(), and ScopedTensorHandle::operator=().

90  {
91  m_MutableMemory = mem;
92  SetConstMemory(m_MutableMemory);
93  }
void SetConstMemory(const void *mem)

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