3 #ifndef VISR_LIBRCL_PANNING_CALCULATOR_HPP_INCLUDED 4 #define VISR_LIBRCL_PANNING_CALCULATOR_HPP_INCLUDED 33 class LoudspeakerArray;
40 template<
typename ElementType >
class MatrixParameter;
41 class SharedDataProtocol;
42 class DoubleBufferingProtocol;
61 All = Dualband | Diffuse
90 std::size_t numberOfObjects,
92 bool adaptiveListenerPosition =
false,
93 bool separateLowpassPanning =
false );
115 std::size_t numberOfObjects,
117 bool adaptiveListenerPosition,
144 bool separateLowpassPanning()
const {
return bool(mLowFrequencyGainOutput); }
147 using LoudspeakerIndexType = std::size_t;
153 bool isTwoD()
const {
return mVectorDimension == 2; }
166 void setListenerPosition( CoefficientType x, CoefficientType y, CoefficientType z );
181 std::size_t
const mNumberOfObjects;
187 std::size_t
const mNumberOfRegularLoudspeakers;
193 std::size_t
const mNumberOfAllLoudspeakers;
200 std::size_t
const mVectorDimension;
207 std::unique_ptr<panning::VBAP> mVbapCalculator;
222 Normalisation
const mLfNormalisation;
224 Normalisation
const mHfNormalisation;
226 Normalisation
const mDiffuseNormalisation;
228 using ChannelLabelLookup = std::map< std::string, std::size_t >;
230 ChannelLabelLookup
const mLabelLookup;
244 std::unique_ptr<ObjectPort> mObjectVectorInput;
246 std::unique_ptr<ListenerPositionPort> mListenerPositionInput;
251 std::unique_ptr<MatrixPort> mLowFrequencyGainOutput;
256 std::unique_ptr<MatrixPort> mHighFrequencyGainOutput;
261 std::unique_ptr<MatrixPort> mDiffuseGainOutput;
280 #endif // #ifndef VISR_LIBRCL_PANNING_CALCULATOR_HPP_INCLUDED Definition: parameter_output.hpp:45
CrossfadingFirFilterMatrix::ControlPortConfig operator &(CrossfadingFirFilterMatrix::ControlPortConfig lhs, CrossfadingFirFilterMatrix::ControlPortConfig rhs)
Definition: crossfading_fir_filter_matrix.cpp:16
Normalisation
Definition: panning_calculator.hpp:64
PanningMode
Definition: panning_calculator.hpp:54
Definition: options.cpp:10
Definition: atomic_component.hpp:21
SampleType CoefficientType
Definition: panning_calculator.hpp:75
Definition: composite_component.hpp:29
Definition: LoudspeakerArray.h:42
Definition: signal_flow_context.hpp:15
CrossfadingFirFilterMatrix::ControlPortConfig operator|(CrossfadingFirFilterMatrix::ControlPortConfig lhs, CrossfadingFirFilterMatrix::ControlPortConfig rhs)
Definition: crossfading_fir_filter_matrix.cpp:23
Definition: listener_position.hpp:31
float SampleType
Definition: constants.hpp:14
Definition: panning_calculator.hpp:51