3 #ifndef VISR_LIBRCL_CROSSFADING_FIR_FILTER_MATRIX_HPP_INCLUDED 4 #define VISR_LIBRCL_CROSSFADING_FIR_FILTER_MATRIX_HPP_INCLUDED 30 template<
typename SampleType >
31 class CrossfadingConvolverUniform;
56 All = Filters | Routings
85 std::size_t numberOfInputs,
86 std::size_t numberOfOutputs,
87 std::size_t filterLength,
88 std::size_t maxFilters,
89 std::size_t maxRoutings,
90 std::size_t transitionSamples,
94 char const * fftImplementation =
"default" );
110 void clearRoutings();
121 void addRouting( std::size_t inputIdx, std::size_t outputIdx, std::size_t filterIdx,
122 SampleType
const gain = static_cast<SampleType>(1.0) );
130 bool removeRouting( std::size_t inputIdx, std::size_t outputIdx );
132 void clearFilters( );
134 void setFilter( std::size_t filterIdx, SampleType
const *
const impulseResponse, std::size_t filterLength, std::size_t alignment =0 );
149 std::unique_ptr<ParameterInput<pml::MessageQueueProtocol, pml::IndexedValueParameter< std::size_t, std::vector<SampleType > > > > mSetFilterInput;
151 std::unique_ptr<rbbl::CrossfadingConvolverUniform<SampleType> > mConvolver;
169 #endif // #ifndef VISR_LIBRCL_CROSSFADING_FIR_FILTER_MATRIX_HPP_INCLUDED Definition: filter_routing.hpp:22
Definition: options.cpp:10
Definition: atomic_component.hpp:21
Definition: composite_component.hpp:29
Definition: signal_flow_context.hpp:15
PortBase::Direction operator|(PortBase::Direction lhs, PortBase::Direction rhs)
Definition: port_base.cpp:10
Definition: crossfading_fir_filter_matrix.hpp:43
ControlPortConfig
Definition: crossfading_fir_filter_matrix.hpp:51
PortBase::Direction operator &(PortBase::Direction lhs, PortBase::Direction rhs)
Definition: port_base.cpp:16
float SampleType
Definition: constants.hpp:14
Definition: filter_routing.hpp:81