ArmNN
 24.02
QSymm8PerAxisEncoder Class Reference

#include <BaseIterator.hpp>

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

Public Member Functions

 QSymm8PerAxisEncoder (int8_t *data, const std::vector< float > &scale, unsigned int axisFactor)
 
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)
 
 PerAxisIterator (int8_t *data=nullptr, const armnn::TensorShape &tensorShape=TensorShape(), const unsigned int axis=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 ()
 
virtual float Get () const=0
 
- 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 std::vector< float > &  scale,
unsigned int  axisFactor 
)
inline

Definition at line 835 of file BaseIterator.hpp.

836  : PerAxisIterator(data, axisFactor), m_Scale(scale) {}

Member Function Documentation

◆ Get()

float Get ( ) const
inline

◆ GetScale()

float GetScale ( ) const
inline

Definition at line 849 of file BaseIterator.hpp.

850  {
851  return m_Scale[m_AxisIndex];
852  }

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

◆ Set()

void Set ( float  right)
inlinevirtual

Implements Encoder< float >.

Definition at line 838 of file BaseIterator.hpp.

839  {
840  *m_Iterator = armnn::Quantize<int8_t>(right, m_Scale[m_AxisIndex], 0);
841  }

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


The documentation for this class was generated from the following file:
armnn::PerAxisIterator< int8_t, Encoder< float > >::m_AxisIndex
unsigned int m_AxisIndex
Definition: BaseIterator.hpp:789
armnn::Dequantize
float Dequantize(QuantizedType value, float scale, int32_t offset)
Dequantize an 8-bit data type into a floating point data type.
Definition: TypesUtils.cpp:52
armnn::PerAxisIterator< int8_t, Encoder< float > >::m_Iterator
int8_t * m_Iterator
Definition: BaseIterator.hpp:787
armnn::PerAxisIterator< int8_t, Encoder< float > >::PerAxisIterator
PerAxisIterator(int8_t *data=nullptr, unsigned int axisFactor=0, unsigned int axisDimensionality=0)
Definition: BaseIterator.hpp:711