VISR  0.11.7
Versatile Interactive Scene Renderer
utility_functions.hpp
Go to the documentation of this file.
1 /* Copyright Institute of Sound and Vibration Research - All rights reserved */
2 
3 #ifndef VISR_MEX_MULTICHANNEL_CONVOLVER_UTILITY_FUNCTIONS_HPP_INCLUDED
4 #define VISR_MEX_MULTICHANNEL_CONVOLVER_UTILITY_FUNCTIONS_HPP_INCLUDED
5 
7 
9 
10 #include <mex.h>
11 #include <matrix.h>
12 
13 #include <algorithm>
14 #include <vector>
15 
16 namespace visr
17 {
18 namespace mex
19 {
20 namespace multichannel_convolver
21 {
22 
23 pml::FilterRoutingList createRoutingTable( mxArray const * mtx );
24 
25 template<typename SampleType>
26 void createFilterMatrix( mxArray const * array, efl::BasicMatrix<SampleType> & filters, std::size_t filterLength );
27 
28 template<typename SampleType>
29 void fillInputBuffers( double const * baseInputPtr, std::size_t sampleIdx, std::size_t rowStride, efl::BasicMatrix<SampleType> & inputMatrix );
30 
31 template<typename SampleType>
32 void copyOutputBuffers( efl::BasicMatrix<SampleType> const & outputMatrix, double * baseOutputPtr, std::size_t sampleIdx, std::size_t rowStride );
33 
34 } // namespace multichannel_convolver
35 } // namespace mex
36 } // namespace visr
37 
38 #endif // #ifndef VISR_MEX_MULTICHANNEL_CONVOLVER_UTILITY_FUNCTIONS_HPP_INCLUDED
void fillInputBuffers(double const *baseInputPtr, std::size_t sampleIdx, std::size_t rowStride, efl::BasicMatrix< SampleType > &inputMatrix)
Definition: utility_functions.cpp:58
void copyOutputBuffers(efl::BasicMatrix< SampleType > const &outputMatrix, double *baseOutputPtr, std::size_t sampleIdx, std::size_t rowStride)
Definition: utility_functions.cpp:83
void createFilterMatrix(mxArray const *array, efl::BasicMatrix< SampleType > &filters, std::size_t filterLength)
Definition: utility_functions.cpp:34
Definition: options.cpp:10
pml::FilterRoutingList createRoutingTable(mxArray const *mtx)
Definition: utility_functions.cpp:14