HOA Library  beta 3.0
High Order Ambisonics Library
Public Member Functions | List of all members
Scope< D, T > Class Template Referenceabstract

The scope class offers a representation a the sound field in the harmonics domain. More...

#include <Hoa_Scope.hpp>

Inheritance diagram for Scope< D, T >:
ProcessorHarmonics< D, T > Processor< D, T >

Public Member Functions

 Scope (size_t order, size_t numberOfPoints)
 The scope constructor. More...
 
virtual ~Scope () hoa_noexcept=0
 The Scope destructor. More...
 
virtual void setViewRotation (const T x_axe, const T y_axe, const T z_axe) hoa_noexcept=0
 Set the offset. More...
 
virtual void computeRendering () hoa_noexcept=0
 Compute the values of the summation of every harmonic to the representation of the sound field. More...
 
virtual void process (const T *inputs, T *outputs) hoa_noexcept hoa_override=0
 This method performs the spherical/circular harmonics projection with single precision. More...
 
virtual void process (const T *inputs) hoa_noexcept=0
 This method performs the spherical harmonics projection with single precision. More...
 
- Public Member Functions inherited from ProcessorHarmonics< D, T >
 ProcessorHarmonics (const size_t order) hoa_noexcept
 The harmonics constructor. More...
 
virtual ~ProcessorHarmonics () hoa_noexcept
 The harmonics destructor.
 
size_t getDecompositionOrder () const hoa_noexcept
 Returns the order of decomposition.
 
size_t getNumberOfHarmonics () const hoa_noexcept
 Returns the number of harmonics.
 
size_t getHarmonicDegree (const size_t index) const hoa_noexcept
 Returns the degree of an harmonic. More...
 
long getHarmonicOrder (const size_t index) const hoa_noexcept
 Returns the azimuthal order of an harmonic. More...
 
size_t getHarmonicIndex (const size_t degree, const long order) const hoa_noexcept
 Returns the index of an harmonic given the degree and the azimuthal order. More...
 
std::string getHarmonicName (const size_t index) const hoa_noexcept
 Returns the name of an harmonic. More...
 
getHarmonicNormalization (const size_t index) const hoa_noexcept
 Returns the normalization of an harmonic. More...
 
getHarmonicSemiNormalization (const size_t index) const hoa_noexcept
 Returns the semi-normalization of an harmonic. More...
 
- Public Member Functions inherited from Processor< D, T >
virtual ~Processor () hoa_noexcept
 The destructor.
 

Detailed Description

template<Dimension D, typename T>
class hoa::Scope< D, T >

The scope class offers a representation a the sound field in the harmonics domain.

The scope discretize a circle for the 2d or a sphere for the 3d by a set of point and uses a decoder to project the harmonics on it. This class should be used for graphical interfaces outside the digital signal processing. If the number of points for the discretization is very large, then you should prefer to record snapshot of the harmonics and to call the process method at an interval adapted to a graphical rendering.

Definition at line 23 of file Hoa_Scope.hpp.

Constructor & Destructor Documentation

Scope ( size_t  order,
size_t  numberOfPoints 
)

The scope constructor.

The scope constructor allocates and initialize the member values to computes harmonics projection depending on a order of decomposition and a number of points. The order must be at least 1.

Parameters
orderThe order.
numberOfPointsThe number of points.
virtual ~Scope ( )
pure virtual

The Scope destructor.

The Scope destructor free the memory.

Member Function Documentation

virtual void setViewRotation ( const T  x_axe,
const T  y_axe,
const T  z_axe 
)
inlinepure virtual

Set the offset.

Set the rotation of the spherical harmonics in radian.

virtual void computeRendering ( )
pure virtual

Compute the values of the summation of every harmonic to the representation of the sound field.

Compute the values of the summation of every harmonic to the representation of the sound field

virtual void process ( const T *  inputs,
T *  outputs 
)
inlinepure virtual

This method performs the spherical/circular harmonics projection with single precision.

You should use this method to compute the projection of the spherical/circular harmonics over an ambisonic sphere. The inputs array contains the spherical/circular harmonics samples and the minimum size must be the number of harmonics.

Parameters
inputsThe inputs array.
outputsThe dummy outputs array (null).

Reimplemented from Processor< D, T >.

virtual void process ( const T *  inputs)
inlinepure virtual

This method performs the spherical harmonics projection with single precision.

You should use this method to compute the projection of the spherical harmonics over an ambisonic sphere. The inputs array contains the spherical harmonics samples and the minimum size must be the number of harmonics.

Parameters
inputsThe inputs array.