VISR  0.12.0
Versatile Interactive Scene Renderer
visr::objectmodel::ChannelObject Class Reference

#include <channel_object.hpp>

Inheritance diagram for visr::objectmodel::ChannelObject:
visr::objectmodel::Object

Public Types

using OutputChannelId = std::string
 
using OutputChannelList = std::vector< OutputChannelId >
 
using OutputChannelContainer = std::vector< OutputChannelList >
 
- Public Types inherited from visr::objectmodel::Object
using Coordinate = float
 
using Priority = unsigned char
 
using ChannelIndex = unsigned int
 

Public Member Functions

 ChannelObject ()=delete
 
 ChannelObject (ObjectId id)
 
virtual ~ChannelObject ()
 
ObjectTypeId type () const
 
std::unique_ptr< Objectclone () const
 
std::size_t size () const
 
OutputChannelContainer const & outputChannels () const
 
OutputChannelList const & outputChannel (std::size_t index) const
 
void setOutputChannels (OutputChannelContainer const &newChannels)
 
void setOutputChannels (OutputChannelId const *val, std::size_t numValues)
 
void setOutputChannel (std::size_t index, OutputChannelId val)
 
void setOutputChannel (std::size_t index, OutputChannelList const &outputChannels)
 
LevelType diffuseness () const
 
void setDiffuseness (LevelType newDiffuseness)
 
- Public Member Functions inherited from visr::objectmodel::Object
 Object ()=delete
 
 Object (ObjectId id)
 
virtual ~Object ()=0
 
ObjectId id () const
 
GroupId groupId () const
 
void setGroupId (ObjectId newId)
 
LevelType level () const
 
void setLevel (LevelType newLevel)
 
Priority priority () const
 
void setPriority (Priority newPriority)
 
rbbl::ParametricIirCoefficientList< Coordinate > const & eqCoefficients () const
 
void setEqCoefficients (rbbl::ParametricIirCoefficientList< Coordinate > const &newCoeffs)
 
std::size_t numberOfChannels () const
 
ChannelIndex channelIndex (std::size_t index) const
 
void resetNumberOfChannels (std::size_t numChannels)
 
void setChannelIndex (std::size_t index, ChannelIndex channelIndex)
 

Additional Inherited Members

- Static Public Attributes inherited from visr::objectmodel::Object
static const ObjectId cInvalidObjectId = UINT_MAX
 
static const GroupId cDefaultGroupId = 0
 
static const ChannelIndex cInvalidChannelIndex = UINT_MAX
 

Member Typedef Documentation

◆ OutputChannelContainer

Container type for holding the output channel indices. Each entry marks all output channels to which a specific input is routed.

◆ OutputChannelId

The data type used to represent the channels to which the contained audio signals are routed. This corresponds to the loudspeaker IDs used in the array configuration file, i.e., a string.

◆ OutputChannelList

Container for all output loudspeakers (as loudspeaker labels) of one signal channel.

Constructor & Destructor Documentation

◆ ChannelObject() [1/2]

visr::objectmodel::ChannelObject::ChannelObject ( )
delete

◆ ChannelObject() [2/2]

visr::objectmodel::ChannelObject::ChannelObject ( ObjectId  id)
explicit

◆ ~ChannelObject()

visr::objectmodel::ChannelObject::~ChannelObject ( )
virtualdefault

Member Function Documentation

◆ clone()

std::unique_ptr< Object > visr::objectmodel::ChannelObject::clone ( ) const
virtual

Clone function used to emulate 'virtual copy constructor' functionality. Must be implemented in every derived instantiated class.

Implements visr::objectmodel::Object.

◆ diffuseness()

LevelType visr::objectmodel::ChannelObject::diffuseness ( ) const

◆ outputChannel()

ChannelObject::OutputChannelList const & visr::objectmodel::ChannelObject::outputChannel ( std::size_t  index) const

Return all output loudspeaker indices for one channel.

Exceptions
std::out_of_rangeIf index exceeds the number of signal channels of the channel object

◆ outputChannels()

ChannelObject::OutputChannelContainer const & visr::objectmodel::ChannelObject::outputChannels ( ) const

Return the vector of output channel indices. The number of elements is identical to the number of channels (numberOfChannels())

◆ setDiffuseness()

void visr::objectmodel::ChannelObject::setDiffuseness ( LevelType  newDiffuseness)

◆ setOutputChannel() [1/2]

void visr::objectmodel::ChannelObject::setOutputChannel ( std::size_t  index,
OutputChannelId  val 
)

Set a specific channel to a single output channel.

◆ setOutputChannel() [2/2]

void visr::objectmodel::ChannelObject::setOutputChannel ( std::size_t  index,
OutputChannelList const &  outputChannels 
)

Set a list of output channels for a

◆ setOutputChannels() [1/2]

void visr::objectmodel::ChannelObject::setOutputChannels ( OutputChannelContainer const &  newChannels)

Set the output channel for a specific channel index.

Parameters
newChannelsContainer containing the new output channel indices

◆ setOutputChannels() [2/2]

void visr::objectmodel::ChannelObject::setOutputChannels ( OutputChannelId const *  val,
std::size_t  numValues 
)

◆ size()

std::size_t visr::objectmodel::ChannelObject::size ( ) const

Return the number of channels.

◆ type()

ObjectTypeId visr::objectmodel::ChannelObject::type ( ) const
virtual

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