XCORE SDK
XCORE Software Development Kit
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler > Class Template Reference

Represents the microphone array component of an application. More...

#include <MicArray.hpp>

Public Member Functions

 MicArray ()
 Construct a MicArray.
 
 MicArray (TPdmRx pdm_rx, TSampleFilter sample_filter, TOutputHandler output_handler)
 Construct a MicArray. More...
 
 MicArray (TPdmRx pdm_rx, TOutputHandler output_handler)
 Construct a MicArray More...
 
void ThreadEntry ()
 Entry point for the decimation thread.
 

Public Attributes

TPdmRx PdmRx
 The PDM rx service. More...
 
TDecimator Decimator
 The Decimator. More...
 
TSampleFilter SampleFilter
 The output filter. More...
 
TOutputHandler OutputHandler
 The output handler. More...
 

Static Public Attributes

static constexpr unsigned MicCount = MIC_COUNT
 Number of microphone channels.
 

Detailed Description

template<unsigned MIC_COUNT, class TDecimator, class TPdmRx, class TSampleFilter, class TOutputHandler>
class mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >

Represents the microphone array component of an application.

Template Parameters
MIC_COUNTNumber of microphones.
TDecimatorType for the decimator.
TPdmRxType for the PDM rx service used.
TSampleFilterType for the output filter used.
TOutputHandlerType for the output handler used.

Constructor & Destructor Documentation

◆ MicArray() [1/2]

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::MicArray ( TPdmRx  pdm_rx,
TSampleFilter  sample_filter,
TOutputHandler  output_handler 
)
inline

Construct a MicArray.

Parameters
pdm_rx
sample_filter
output_handler

◆ MicArray() [2/2]

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::MicArray ( TPdmRx  pdm_rx,
TOutputHandler  output_handler 
)
inline

Construct a MicArray

Parameters
pdm_rx
output_handler

Member Data Documentation

◆ Decimator

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
TDecimator mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::Decimator

The Decimator.

This two-stage decimator is used to convert and down-sample the PDM stream into a PCM stream.

◆ OutputHandler

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
TOutputHandler mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::OutputHandler

The output handler.

This is used to transmit samples or frames to subsequent stages of the processing pipeline.

◆ PdmRx

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
TPdmRx mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::PdmRx

The PDM rx service.

This is used for capturing PDM data from a port.

◆ SampleFilter

template<unsigned MIC_COUNT, class TDecimator , class TPdmRx , class TSampleFilter , class TOutputHandler >
TSampleFilter mic_array::MicArray< MIC_COUNT, TDecimator, TPdmRx, TSampleFilter, TOutputHandler >::SampleFilter

The output filter.

This is used to perform sample-by-sample filtering of the output from the second stage decimator.


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