VISR  0.11.1
Versatile Interactive Scene Renderer
baseline_renderer.hpp
Go to the documentation of this file.
1 /* Copyright Institute of Sound and Vibration Research - All rights reserved */
2 
3 #ifndef VISR_SIGNALFLOWS_BASELINE_HPP_INCLUDED
4 #define VISR_SIGNALFLOWS_BASELINE_HPP_INCLUDED
5 
6 #include "core_renderer.hpp"
7 #include "export_symbols.hpp"
8 
10 #include <libvisr/audio_input.hpp>
11 #include <libvisr/audio_output.hpp>
12 
14 #include <librcl/scene_decoder.hpp>
15 #include <librcl/udp_receiver.hpp>
16 
18 #include <libpml/object_vector.hpp>
21 
22 #include <memory>
23 #include <string>
24 
25 namespace visr
26 {
27 
28 namespace signalflows
29 {
30 
34 class VISR_SIGNALFLOWS_LIBRARY_SYMBOL BaselineRenderer: public CompositeComponent
35 {
36 public:
60  explicit BaselineRenderer( SignalFlowContext const & context,
61  char const * name,
62  CompositeComponent * parent,
63  panning::LoudspeakerArray const & loudspeakerConfiguration,
64  std::size_t numberOfInputs,
65  std::size_t numberOfOutputs,
66  std::size_t interpolationPeriod,
67  efl::BasicMatrix<SampleType> const & diffusionFilters,
68  std::string const & trackingConfiguration,
69  std::size_t sceneReceiverPort,
70  std::size_t numberOfObjectEqSections,
71  std::string const & reverbConfig,
72  bool frequencyDependentPanning );
73 
77  explicit BaselineRenderer( SignalFlowContext const & context,
78  char const * name,
79  CompositeComponent * parent,
80  panning::LoudspeakerArray const & loudspeakerConfiguration,
81  std::size_t numberOfInputs,
82  std::size_t numberOfOutputs );
83 
85 
86 private:
87 
88  rcl::UdpReceiver mSceneReceiver;
89 
90  rcl::SceneDecoder mSceneDecoder;
91 
99  std::unique_ptr<rcl::UdpReceiver> mTrackingReceiver;
100 
104  std::unique_ptr<rcl::PositionDecoder> mTrackingPositionDecoder;
106 
107  CoreRenderer mCoreRenderer;
108 
109 
110  AudioInput mInput;
111  AudioOutput mOutput;
112 };
113 
114 } // namespace signalflows
115 } // namespace visr
116 
117 #endif // VISR_SIGNALFLOWS_BASELINE_HPP_INCLUDED
Definition: udp_receiver.hpp:35
Definition: scene_decoder.hpp:39
Definition: options.cpp:10
Definition: core_renderer.hpp:49
Definition: baseline_renderer.hpp:34
Definition: composite_component.hpp:29
Definition: LoudspeakerArray.h:42
Definition: signal_flow_context.hpp:15