AAX SDK  2.4.1
Avid Audio Extensions Development Kit
Namespaces | Macros | Functions
AAX_MiscUtils.h File Reference
#include "AAX_PlatformOptimizationConstants.h"
#include "AAX_Constants.h"
#include "AAX_Denormal.h"

Go to the source code of this file.

Description

Miscellaneous signal processing utilities.

Namespaces

 AAX
 

Macros

#define AAX_MISCUTILS_H
 
#define AAX_ALIGNMENT_HINT(a, b)
 Currently only functional on TI, these word alignments will provide better performance on TI. More...
 
#define AAX_WORD_ALIGNED_HINT(a)
 
#define AAX_DWORD_ALIGNED_HINT(a)
 
#define AAX_LO(x)   x
 These macros are used on TI to convert 2 single words accesses to one double word access to provide additional optimization. More...
 
#define AAX_HI(x)   *((const_cast<float*>(&x))+1)
 
#define AAX_INT_LO(x)   x
 
#define AAX_INT_HI(x)   *((const_cast<int32_t*>(reinterpret_cast<const int32_t*>(&x)))+1)
 

Functions

template<class GFLOAT >
GFLOAT AAX::ClampToZero (GFLOAT iValue, GFLOAT iClampThreshold)
 
void AAX::ZeroMemory (void *iPointer, int iNumBytes)
 
void AAX::ZeroMemoryDW (void *iPointer, int iNumBytes)
 
template<typename T , int N>
void AAX::Fill (T *iArray, const T *iVal)
 
template<typename T , int M, int N>
void AAX::Fill (T *iArray, const T *iVal)
 
template<typename T , int L, int M, int N>
void AAX::Fill (T *iArray, const T *iVal)
 
double AAX::fabs (double iVal)
 
float AAX::fabs (float iVal)
 
float AAX::fabsf (float iVal)
 
template<class T >
AAX::AbsMax (const T &iValue, const T &iMax)
 
template<class T >
AAX::MinMax (const T &iValue, const T &iMin, const T &iMax)
 
template<class T >
AAX::Max (const T &iValue1, const T &iValue2)
 
template<class T >
AAX::Min (const T &iValue1, const T &iValue2)
 
template<class T >
AAX::Sign (const T &iValue)
 
double AAX::PolyEval (double x, const double *coefs, int numCoefs)
 
double AAX::CeilLog2 (double iValue)
 
void AAX::SinCosMix (float aLinearMix, float &aSinMix, float &aCosMix)
 

Macro Definition Documentation

◆ AAX_MISCUTILS_H

#define AAX_MISCUTILS_H

◆ AAX_ALIGNMENT_HINT

#define AAX_ALIGNMENT_HINT (   a,
 
)

Currently only functional on TI, these word alignments will provide better performance on TI.

◆ AAX_WORD_ALIGNED_HINT

#define AAX_WORD_ALIGNED_HINT (   a)

◆ AAX_DWORD_ALIGNED_HINT

#define AAX_DWORD_ALIGNED_HINT (   a)

◆ AAX_LO

#define AAX_LO (   x)    x

These macros are used on TI to convert 2 single words accesses to one double word access to provide additional optimization.

◆ AAX_HI

#define AAX_HI (   x)    *((const_cast<float*>(&x))+1)

◆ AAX_INT_LO

#define AAX_INT_LO (   x)    x

◆ AAX_INT_HI

#define AAX_INT_HI (   x)    *((const_cast<int32_t*>(reinterpret_cast<const int32_t*>(&x)))+1)