|
tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications
« « « Anklang Documentation |
Represents an input device. More...
#include "tracktion_InputDevice.h"
Public Types | |
| enum | DeviceType { waveDevice , trackWaveDevice , physicalMidiDevice , virtualMidiDevice , trackMidiDevice } |
| enum to allow quick querying of the device type. More... | |
| enum class | MonitorMode { off , automatic , on } |
| Enum to describe monitor modes. More... | |
Public Types inherited from tracktion::engine::Selectable | |
| using | WeakRef = juce::WeakReference< Selectable > |
Public Member Functions | |
| InputDevice (Engine &, juce::String type, juce::String name, juce::String deviceID) | |
| const juce::String & | getName () const |
| const juce::String & | getType () const |
| juce::String | getDeviceID () const |
| virtual DeviceType | getDeviceType () const =0 |
| bool | isTrackDevice () const |
| juce::String | getAlias () const |
| the alias is the name shown in the draggable input device components | |
| void | setAlias (const juce::String &newAlias) |
| virtual bool | isAvailableToEdit () const |
| bool | isEnabled () const |
| virtual void | setEnabled (bool)=0 |
| virtual bool | isMidi () const |
| MonitorMode | getMonitorMode () const |
| void | setMonitorMode (MonitorMode) |
| virtual InputDeviceInstance * | createInstance (EditPlaybackContext &)=0 |
| Creates an instance to use for a given playback context. | |
| virtual void | masterTimeUpdate (double time)=0 |
| This is a bit of a hack but allows the time for MIDI devices to be set through the base class interface. | |
| virtual void | updateRetrospectiveBufferLength (double length)=0 |
| juce::String | getSelectableDescription () override |
| Subclasses must return a description of what they are. | |
| virtual void | saveProps ()=0 |
Public Member Functions inherited from tracktion::engine::Selectable | |
| virtual void | selectionStatusChanged (bool isNowSelected) |
| Can be overridden to tell this object that it has just been selected or deselected. | |
| virtual void | changed () |
| This should be called to send a change notification to any SelectableListeners that are registered with this object. | |
| virtual void | selectableAboutToBeDeleted () |
| Called just before the selectable is about to be deleted so any subclasses should still be valid at this point. | |
| void | addListener (SelectableListener *) |
| void | removeListener (SelectableListener *) |
| void | addSelectableListener (SelectableListener *) |
| void | removeSelectableListener (SelectableListener *) |
| void | cancelAnyPendingUpdates () |
| If changed() has been called, this will cancel any pending async change notificaions. | |
| void | deselect () |
| void | propertiesChanged () |
| void | notifyListenersOfDeletion () |
| WeakRef | getWeakRef () |
Static Public Member Functions | |
| static void | setRetrospectiveLock (Engine &, const juce::Array< InputDeviceInstance * > &, bool lock) |
Static Public Member Functions inherited from tracktion::engine::Selectable | |
| static void | initialise () |
| static bool | isSelectableValid (const Selectable *) noexcept |
| checks whether this object has been deleted. | |
Public Attributes | |
| Engine & | engine |
| LevelMeasurer | levelMeasurer |
Public Attributes inherited from tracktion::engine::Selectable | |
| WeakRef::Master | masterReference |
Protected Attributes | |
| std::atomic< bool > | enabled |
| MonitorMode | monitorMode |
| MonitorMode | defaultMonitorMode |
| bool | retrospectiveRecordLock |
Represents an input device.
A single InputDevice object exists for each device in the system. For each InputDevice, there may be multiple InputDeviceInstance objects, for all the active EditPlaybackContexts
Definition at line 21 of file tracktion_InputDevice.h.
enum to allow quick querying of the device type.
Definition at line 25 of file tracktion_InputDevice.h.
|
strong |
Enum to describe monitor modes.
| Enumerator | |
|---|---|
| off | Live input is never audible. |
| automatic | Live input is audible when record is enabled. |
| on | Live input is always audible. |
Definition at line 59 of file tracktion_InputDevice.h.
| tracktion::engine::InputDevice::InputDevice | ( | Engine & | e, |
| juce::String | type, | ||
| juce::String | name, | ||
| juce::String | deviceID | ||
| ) |
Definition at line 14 of file tracktion_InputDevice.cpp.
|
override |
Definition at line 20 of file tracktion_InputDevice.cpp.
|
pure virtual |
Creates an instance to use for a given playback context.
Implemented in tracktion::engine::PhysicalMidiInputDevice, tracktion::engine::VirtualMidiInputDevice, tracktion::engine::WaveInputDevice, and tracktion::engine::HostedMidiInputDevice.
| juce::String tracktion::engine::InputDevice::getAlias | ( | ) | const |
the alias is the name shown in the draggable input device components
Definition at line 35 of file tracktion_InputDevice.cpp.
| juce::String tracktion::engine::InputDevice::getDeviceID | ( | ) | const |
Definition at line 42 of file tracktion_InputDevice.h.
| MonitorMode tracktion::engine::InputDevice::getMonitorMode | ( | ) | const |
Definition at line 66 of file tracktion_InputDevice.h.
| const juce::String & tracktion::engine::InputDevice::getName | ( | ) | const |
Definition at line 39 of file tracktion_InputDevice.h.
|
overridevirtual |
Subclasses must return a description of what they are.
Implements tracktion::engine::Selectable.
Reimplemented in tracktion::engine::VirtualMidiInputDevice, and tracktion::engine::WaveInputDevice.
Definition at line 75 of file tracktion_InputDevice.cpp.
| const juce::String & tracktion::engine::InputDevice::getType | ( | ) | const |
Definition at line 40 of file tracktion_InputDevice.h.
|
virtual |
Definition at line 51 of file tracktion_InputDevice.h.
| bool tracktion::engine::InputDevice::isEnabled | ( | ) | const |
Definition at line 59 of file tracktion_InputDevice.cpp.
|
virtual |
Definition at line 56 of file tracktion_InputDevice.h.
| bool tracktion::engine::InputDevice::isTrackDevice | ( | ) | const |
Definition at line 29 of file tracktion_InputDevice.cpp.
|
pure virtual |
This is a bit of a hack but allows the time for MIDI devices to be set through the base class interface.
Implemented in tracktion::engine::MidiInputDevice, and tracktion::engine::WaveInputDevice.
| void tracktion::engine::InputDevice::setAlias | ( | const juce::String & | newAlias | ) |
Definition at line 43 of file tracktion_InputDevice.cpp.
| void tracktion::engine::InputDevice::setMonitorMode | ( | MonitorMode | newMode | ) |
Definition at line 64 of file tracktion_InputDevice.cpp.
|
static |
Definition at line 80 of file tracktion_InputDevice.cpp.
|
protected |
Definition at line 89 of file tracktion_InputDevice.h.
|
protected |
Definition at line 87 of file tracktion_InputDevice.h.
| Engine& tracktion::engine::InputDevice::engine |
Definition at line 83 of file tracktion_InputDevice.h.
| LevelMeasurer tracktion::engine::InputDevice::levelMeasurer |
Definition at line 84 of file tracktion_InputDevice.h.
|
protected |
Definition at line 88 of file tracktion_InputDevice.h.
|
protected |
Definition at line 90 of file tracktion_InputDevice.h.