VISR  0.12.0
Versatile Interactive Scene Renderer
visr::reverbobject::ReverbObjectRenderer Class Reference

#include <reverb_object_renderer.hpp>

Inheritance diagram for visr::reverbobject::ReverbObjectRenderer:
visr::CompositeComponent visr::Component

Public Member Functions

 ReverbObjectRenderer (SignalFlowContext const &context, char const *name, CompositeComponent *parent, std::string const &reverbConfig, panning::LoudspeakerArray const &arrayConfig, std::size_t numberOfObjectSignals)
 
 ~ReverbObjectRenderer ()
 
- Public Member Functions inherited from visr::CompositeComponent
 CompositeComponent (SignalFlowContext const &context, char const *name, CompositeComponent *parent=nullptr)
 
 ~CompositeComponent ()
 
std::size_t numberOfComponents () const
 
impl::CompositeComponentImplementationimplementation ()
 
impl::CompositeComponentImplementation const & implementation () const
 
void parameterConnection (char const *sendComponent, char const *sendPort, char const *receiveComponent, char const *receivePort)
 
void parameterConnection (ParameterPortBase &sender, ParameterPortBase &receiver)
 
void audioConnection (char const *sendComponent, char const *sendPort, ChannelList const &sendIndices, char const *receiveComponent, char const *receivePort, ChannelList const &receiveIndices)
 
void audioConnection (AudioPortBase &sendPort, ChannelList const &sendIndices, AudioPortBase &receivePort, ChannelList const &receiveIndices)
 
void audioConnection (AudioPortBase &sendPort, AudioPortBase &receivePort)
 
- Public Member Functions inherited from visr::Component
 Component (SignalFlowContext const &context, char const *componentName, CompositeComponent *parent)
 
 Component (SignalFlowContext const &context, std::string const &componentName, CompositeComponent *parent)
 
 Component (Component const &)=delete
 
 Component (Component &&)=delete
 
Componentoperator= (Component const &)=delete
 
Componentoperator= (Component &&)=delete
 
virtual ~Component ()
 
std::string const & name () const
 
std::string fullName () const
 
void status (StatusMessage::Kind status, char const *message)
 
template<typename... MessageArgs>
void status (StatusMessage::Kind status, MessageArgs...args)
 
bool isComposite () const
 
AudioPortBaseaudioPort (char const *portName)
 
AudioPortBase const & audioPort (char const *portName) const
 
AudioPortBaseaudioPort (std::string const &portName)
 
AudioPortBase const & audioPort (std::string const &portName) const
 
ParameterPortBaseparameterPort (char const *portName)
 
ParameterPortBase const & parameterPort (char const *portName) const
 
ParameterPortBaseparameterPort (std::string const &portName)
 
ParameterPortBase const & parameterPort (std::string const &portName) const
 
SamplingFrequencyType samplingFrequency () const
 
std::size_t period () const
 
bool isTopLevel () const
 
impl::ComponentImplementationimplementation ()
 
impl::ComponentImplementation const & implementation () const
 

Additional Inherited Members

- Public Types inherited from visr::CompositeComponent
using ChannelRange = visr::ChannelRange
 
using ChannelList = visr::ChannelList
 
- Static Public Member Functions inherited from visr::Component
static const std::string & nameSeparator ()
 
- Protected Member Functions inherited from visr::Component
 Component (impl::ComponentImplementation *impl)
 

Detailed Description

Rendering subgraph for reverb objects. Usually used as part of a larger renderer that handles object volume + EQ, signal routing and the direct part of the renderer.

Constructor & Destructor Documentation

visr::reverbobject::ReverbObjectRenderer::ReverbObjectRenderer ( SignalFlowContext const &  context,
char const *  name,
CompositeComponent parent,
std::string const &  reverbConfig,
panning::LoudspeakerArray const &  arrayConfig,
std::size_t  numberOfObjectSignals 
)
explicit

Constructor to create, initialise and interconnect the processing components.

Parameters
contextConfiguration object holding basic execution parameters.
nameName of the component.
parentPointer to containing component (if there is one). A value of nullptr signals that this is a top-level component.
reverbConfigJSON-formatted string to hold the reverb-specific configuration.
  • numReverbObjects (integer) The maximum number of reverb objects (at a given time)
  • lateReverbFilterLength (floating-point) The length of the late reverberation filter (in seconds)
  • discreteReflectionsPerObject (integer) The number of discrete reflections per reverb object.
  • lateReverbDecorrelationFilters (string) Absolute or relative file path (relative to start directory of the renderer) to a multichannel audio file (typically WAV) containing the filter coefficients for the decorrelation of the late part.
arrayConfigArray configuration object to describe the reproduction system.
numberOfObjectSignalsTotal number of object audio signals that might carry reverb objects.
visr::reverbobject::ReverbObjectRenderer::~ReverbObjectRenderer ( )
default

The documentation for this class was generated from the following files: