TracktionEngine
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tracktion::engine::TrackOutput Class Reference

Represents the destination output device(s) for a track. More...

#include <tracktion_TrackOutput.h>

Inherits juce::ValueTree::Listener.

Public Member Functions

 TrackOutput (Track &)
 
 ~TrackOutput () override
 
void initialise ()
 
void flushStateToValueTree ()
 
void updateOutput ()
 called as a sanity-check after edit has created all the tracks
 
bool outputsToDevice (const juce::String &deviceName, bool compareDefaultDevices) const
 if compareDefaultDevices is true, then this returns true if the device name is 'default ..' and the actual device is named, or vice-versa
 
juce::String getOutputDeviceID () const
 The ID of the track's target device (if one is set).
 
juce::String getOutputName () const
 description of where it's going.
 
juce::String getDescriptiveOutputName () const
 includes the dest track's name, if relevant
 
AudioTrackgetDestinationTrack () const
 if the track's being routed into another one, this returns it
 
bool outputsToDestTrack (AudioTrack &) const
 True if this track's direct destination is the one given.
 
bool feedsInto (const Track *possibleDestTrack) const
 true if any downstream tracks match this one
 
bool usesDefaultAudioOut () const
 True if this output is going to the default audio out.
 
bool usesDefaultMIDIOut () const
 True if this output is going to the default MIDI out.
 
OutputDevicegetOutputDevice (bool traceThroughDestTracks) const
 finds the output device.
 
void setOutputToDeviceID (const juce::String &deviceID)
 
void setOutputToTrack (AudioTrack *)
 
void setOutputToDefaultDevice (bool isMidi)
 
bool canPlayAudio () const
 
bool canPlayMidi () const
 (also true for virtual devices with midi synths)
 
bool injectLiveMidiMessage (const juce::MidiMessage &)
 false if not possible
 

Static Public Member Functions

static void getPossibleOutputDeviceNames (const juce::Array< AudioTrack * > &tracks, juce::StringArray &s, juce::StringArray &a, juce::BigInteger &hasAudio, juce::BigInteger &hasMidi)
 

Public Attributes

juce::ValueTree state
 

Detailed Description

Represents the destination output device(s) for a track.

Constructor & Destructor Documentation

◆ TrackOutput()

tracktion::engine::TrackOutput::TrackOutput ( Track )

◆ ~TrackOutput()

tracktion::engine::TrackOutput::~TrackOutput ( )
override

Member Function Documentation

◆ initialise()

void tracktion::engine::TrackOutput::initialise ( )

◆ flushStateToValueTree()

void tracktion::engine::TrackOutput::flushStateToValueTree ( )

◆ updateOutput()

void tracktion::engine::TrackOutput::updateOutput ( )

called as a sanity-check after edit has created all the tracks

◆ outputsToDevice()

bool tracktion::engine::TrackOutput::outputsToDevice ( const juce::String &  deviceName,
bool  compareDefaultDevices 
) const

if compareDefaultDevices is true, then this returns true if the device name is 'default ..' and the actual device is named, or vice-versa

◆ getOutputDeviceID()

juce::String tracktion::engine::TrackOutput::getOutputDeviceID ( ) const

The ID of the track's target device (if one is set).

◆ getOutputName()

juce::String tracktion::engine::TrackOutput::getOutputName ( ) const

description of where it's going.

◆ getDescriptiveOutputName()

juce::String tracktion::engine::TrackOutput::getDescriptiveOutputName ( ) const

includes the dest track's name, if relevant

◆ getDestinationTrack()

AudioTrack * tracktion::engine::TrackOutput::getDestinationTrack ( ) const

if the track's being routed into another one, this returns it

◆ outputsToDestTrack()

bool tracktion::engine::TrackOutput::outputsToDestTrack ( AudioTrack ) const

True if this track's direct destination is the one given.

◆ feedsInto()

bool tracktion::engine::TrackOutput::feedsInto ( const Track possibleDestTrack) const

true if any downstream tracks match this one

◆ usesDefaultAudioOut()

bool tracktion::engine::TrackOutput::usesDefaultAudioOut ( ) const

True if this output is going to the default audio out.

◆ usesDefaultMIDIOut()

bool tracktion::engine::TrackOutput::usesDefaultMIDIOut ( ) const

True if this output is going to the default MIDI out.

◆ getOutputDevice()

OutputDevice * tracktion::engine::TrackOutput::getOutputDevice ( bool  traceThroughDestTracks) const

finds the output device.

If the track feeds into another track, this will optionally recurse into the dest track to find the device.

◆ setOutputToDeviceID()

void tracktion::engine::TrackOutput::setOutputToDeviceID ( const juce::String &  deviceID)

◆ setOutputToTrack()

void tracktion::engine::TrackOutput::setOutputToTrack ( AudioTrack )

◆ setOutputToDefaultDevice()

void tracktion::engine::TrackOutput::setOutputToDefaultDevice ( bool  isMidi)

◆ getPossibleOutputDeviceNames()

static void tracktion::engine::TrackOutput::getPossibleOutputDeviceNames ( const juce::Array< AudioTrack * > &  tracks,
juce::StringArray &  s,
juce::StringArray &  a,
juce::BigInteger &  hasAudio,
juce::BigInteger &  hasMidi 
)
static

◆ canPlayAudio()

bool tracktion::engine::TrackOutput::canPlayAudio ( ) const

◆ canPlayMidi()

bool tracktion::engine::TrackOutput::canPlayMidi ( ) const

(also true for virtual devices with midi synths)

◆ injectLiveMidiMessage()

bool tracktion::engine::TrackOutput::injectLiveMidiMessage ( const juce::MidiMessage &  )

false if not possible

Member Data Documentation

◆ state

juce::ValueTree tracktion::engine::TrackOutput::state

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