ArmNN
 25.11
Loading...
Searching...
No Matches
QSymm8PerAxisEncoder Class Reference

#include <BaseIterator.hpp>

Inheritance diagram for QSymm8PerAxisEncoder:
[legend]
Collaboration diagram for QSymm8PerAxisEncoder:
[legend]

Public Member Functions

 QSymm8PerAxisEncoder (int8_t *data, const armnn::TensorInfo &tensorInfo)
void Set (float right)
float Get () const
float GetScale () const
Public Member Functions inherited from PerAxisIterator< int8_t, Encoder< float > >
 PerAxisIterator (int8_t *data=nullptr, unsigned int axisFactor=0, unsigned int axisDimensionality=0)
void Reset (void *data) override
PerAxisIteratoroperator++ () override
PerAxisIteratoroperator+= (const unsigned int increment) override
PerAxisIteratoroperator-= (const unsigned int decrement) override
PerAxisIteratorSetIndexOnMem (const unsigned int index)
PerAxisIteratoroperator[] (const unsigned int index) override
Public Member Functions inherited from Encoder< float >
 Encoder ()
virtual ~Encoder ()
Public Member Functions inherited from BaseIterator
 BaseIterator ()
virtual ~BaseIterator ()

Additional Inherited Members

Protected Attributes inherited from PerAxisIterator< int8_t, Encoder< float > >
int8_t * m_Iterator
int8_t * m_Start
unsigned int m_AxisIndex
unsigned int m_AxisDimensionality
unsigned int m_AxisFactor
unsigned int m_Index

Detailed Description

Definition at line 832 of file BaseIterator.hpp.

Constructor & Destructor Documentation

◆ QSymm8PerAxisEncoder()

QSymm8PerAxisEncoder ( int8_t * data,
const armnn::TensorInfo & tensorInfo )
inline

Definition at line 835 of file BaseIterator.hpp.

836 : PerAxisIterator(data, tensorInfo.GetShape(), tensorInfo.GetQuantizationDim().value()),
837 m_Scale(tensorInfo.GetQuantizationScales()), m_Offset(tensorInfo.GetQuantizationOffset())
838 {}
const TensorShape & GetShape() const
Definition Tensor.hpp:193
int32_t GetQuantizationOffset() const
Definition Tensor.cpp:482
Optional< unsigned int > GetQuantizationDim() const
Definition Tensor.cpp:498
std::vector< float > GetQuantizationScales() const
Definition Tensor.cpp:451

References PerAxisIterator< int8_t, Encoder< float > >::PerAxisIterator().

Member Function Documentation

◆ Get()

float Get ( ) const
inlinevirtual

Implements Encoder< float >.

Definition at line 845 of file BaseIterator.hpp.

846 {
847 return armnn::Dequantize(*m_Iterator, m_Scale[m_AxisIndex], m_Offset);
848 }

References armnn::Dequantize, PerAxisIterator< int8_t, Encoder< float > >::m_AxisIndex, and PerAxisIterator< int8_t, Encoder< float > >::m_Iterator.

◆ GetScale()

float GetScale ( ) const
inline

Definition at line 851 of file BaseIterator.hpp.

852 {
853 return m_Scale[m_AxisIndex];
854 }

References PerAxisIterator< int8_t, Encoder< float > >::m_AxisIndex.

◆ Set()

void Set ( float right)
inlinevirtual

Implements Encoder< float >.

Definition at line 840 of file BaseIterator.hpp.

841 {
842 *m_Iterator = armnn::Quantize<int8_t>(right, m_Scale[m_AxisIndex], m_Offset);
843 }

References PerAxisIterator< int8_t, Encoder< float > >::m_AxisIndex, PerAxisIterator< int8_t, Encoder< float > >::m_Iterator, and armnn::Quantize.


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