VISR  0.11.8
Versatile Interactive Scene Renderer
diffusion_gain_calculator.hpp
Go to the documentation of this file.
1 /* Copyright Institute of Sound and Vibration Research - All rights reserved */
2 
3 #ifndef VISR_LIBRCL_DIFFUSION_GAIN_CALCULATOR_HPP_INCLUDED
4 #define VISR_LIBRCL_DIFFUSION_GAIN_CALCULATOR_HPP_INCLUDED
5 
6 #include "export_symbols.hpp"
7 
8 #include <libvisr/constants.hpp>
12 
13 #include <libobjectmodel/object.hpp> // needed basically for type definitions
14 
17 #include <libpml/object_vector.hpp>
19 
20 #include <vector>
21 
22 namespace visr
23 {
24 namespace rcl
25 {
26 
30 class VISR_RCL_LIBRARY_SYMBOL DiffusionGainCalculator: public AtomicComponent
31 {
32 public:
37 
45  explicit DiffusionGainCalculator( SignalFlowContext const & context,
46  char const * name,
47  CompositeComponent * parent,
48  std::size_t numberOfObjectChannels );
49 
54 
55 
60 
61 // /**
62 // * Method to initialise the component.
63 // */
64 // void setup( std::size_t numberOfObjectChannels );
65 
69  void process() override;
70 
71 private:
75  std::size_t mNumberOfObjectChannels;
76 
80  void processInternal( objectmodel::ObjectVector const & objects, CoefficientType * gains );
81 
84 
85 };
86 
87 } // namespace rcl
88 } // namespace visr
89 
90 #endif // #ifndef VISR_LIBRCL_DIFFUSION_GAIN_CALCULATOR_HPP_INCLUDED
Definition: parameter_output.hpp:45
SampleType CoefficientType
Definition: diffusion_gain_calculator.hpp:36
Definition: options.cpp:10
Definition: atomic_component.hpp:21
Definition: parameter_input.hpp:45
Definition: composite_component.hpp:29
Definition: signal_flow_context.hpp:15
Definition: diffusion_gain_calculator.hpp:30
Definition: object_vector.hpp:22
float SampleType
Definition: constants.hpp:14