TracktionEngine
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
engine::WaveOutputDevice Class Reference

A (virtual) audio output device. More...

#include <tracktion_WaveOutputDevice.h>

Inheritance diagram for engine::WaveOutputDevice:

Public Member Functions

 WaveOutputDevice (Engine &, const WaveDeviceDescription &)
 
 ~WaveOutputDevice () override
 
void resetToDefault ()
 
juce::String getDeviceTypeDescription () const override
 
void setEnabled (bool) override
 
const ChannelConfiguration & getChannels () const noexcept
 
const juce::AudioChannelSet & getChannelSet () const noexcept
 
void reverseChannels (bool)
 
bool isReversed () const
 
void setDithered (bool)
 
bool isDithered () const
 
int getLeftChannel () const
 
int getRightChannel () const
 
bool isStereoPair () const
 
void setStereoPair (bool)
 
juce::PopupMenu createChannelGroupMenu (bool includeSetAllChannelsOptions)
 
WaveOutputDeviceInstancecreateInstance (EditPlaybackContext &)
 
void updateLevelMeasurer (float *const *outputChannelData, int totalNumOutputChannels, int numSamples)
 
void startTestTone ()
 Starts a gentle 1 second 440 Hz sine test tone playing through this device's channels.
 
void renderTestTone (float *const *outputChannelData, int totalNumOutputChannels, int numSamples)
 Called on the audio thread — mixes any in-progress test tone into the device's output channels.
 
- Public Member Functions inherited from engine::OutputDevice
 OutputDevice (Engine &, juce::String name, juce::String deviceID)
 
 ~OutputDevice () override
 
bool isMidi () const override
 
bool isTrackDevice () const override
 

Public Attributes

WaveDeviceDescription deviceDescription
 
LevelMeasurer levelMeasurer
 

Protected Member Functions

juce::String openDevice () override
 
void closeDevice () override
 

Detailed Description

A (virtual) audio output device.

There'll be one or more instances of these, each one representing a group of channels from a physical device.

Constructor & Destructor Documentation

◆ WaveOutputDevice()

engine::WaveOutputDevice::WaveOutputDevice ( Engine ,
const WaveDeviceDescription  
)

◆ ~WaveOutputDevice()

engine::WaveOutputDevice::~WaveOutputDevice ( )
override

Member Function Documentation

◆ resetToDefault()

void engine::WaveOutputDevice::resetToDefault ( )

◆ getDeviceTypeDescription()

juce::String engine::WaveOutputDevice::getDeviceTypeDescription ( ) const
override

◆ setEnabled()

void engine::WaveOutputDevice::setEnabled ( bool  )
override

◆ getChannels()

const ChannelConfiguration & engine::WaveOutputDevice::getChannels ( ) const
noexcept

◆ getChannelSet()

const juce::AudioChannelSet & engine::WaveOutputDevice::getChannelSet ( ) const
noexcept

◆ reverseChannels()

void engine::WaveOutputDevice::reverseChannels ( bool  )

◆ isReversed()

bool engine::WaveOutputDevice::isReversed ( ) const

◆ setDithered()

void engine::WaveOutputDevice::setDithered ( bool  )

◆ isDithered()

bool engine::WaveOutputDevice::isDithered ( ) const

◆ getLeftChannel()

int engine::WaveOutputDevice::getLeftChannel ( ) const
Deprecated:
Use getChannels()[0].indexInDevice instead.

◆ getRightChannel()

int engine::WaveOutputDevice::getRightChannel ( ) const
Deprecated:
Use getChannels()[1].indexInDevice instead.

◆ isStereoPair()

bool engine::WaveOutputDevice::isStereoPair ( ) const
Deprecated:
Use getChannels().getNumChannels() == 2 instead.

◆ setStereoPair()

void engine::WaveOutputDevice::setStereoPair ( bool  )
Deprecated:
Use setChannelConfiguration() instead.

◆ createChannelGroupMenu()

juce::PopupMenu engine::WaveOutputDevice::createChannelGroupMenu ( bool  includeSetAllChannelsOptions)

◆ createInstance()

WaveOutputDeviceInstance * engine::WaveOutputDevice::createInstance ( EditPlaybackContext )

◆ updateLevelMeasurer()

void engine::WaveOutputDevice::updateLevelMeasurer ( float *const *  outputChannelData,
int  totalNumOutputChannels,
int  numSamples 
)

◆ startTestTone()

void engine::WaveOutputDevice::startTestTone ( )

Starts a gentle 1 second 440 Hz sine test tone playing through this device's channels.

◆ renderTestTone()

void engine::WaveOutputDevice::renderTestTone ( float *const *  outputChannelData,
int  totalNumOutputChannels,
int  numSamples 
)

Called on the audio thread — mixes any in-progress test tone into the device's output channels.

◆ openDevice()

juce::String engine::WaveOutputDevice::openDevice ( )
overrideprotectedvirtual

Implements engine::OutputDevice.

◆ closeDevice()

void engine::WaveOutputDevice::closeDevice ( )
overrideprotectedvirtual

Implements engine::OutputDevice.

Member Data Documentation

◆ deviceDescription

WaveDeviceDescription engine::WaveOutputDevice::deviceDescription

◆ levelMeasurer

LevelMeasurer engine::WaveOutputDevice::levelMeasurer

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