|
| VirtualMidiInputDevice (Engine &, const juce::String &name, DeviceType) |
|
| ~VirtualMidiInputDevice () override |
|
InputDeviceInstance * | createInstance (EditPlaybackContext &) override |
| Creates an instance to use for a given playback context. More...
|
|
void | handleIncomingMidiMessage (const juce::MidiMessage &) override |
|
juce::String | getSelectableDescription () override |
| Subclasses must return a description of what they are. More...
|
|
void | setEnabled (bool) override |
|
void | loadProps () override |
|
void | saveProps () override |
|
void | handleMessageFromPhysicalDevice (MidiInputDevice *, const juce::MidiMessage &) |
|
DeviceType | getDeviceType () const override |
|
void | handleIncomingMidiMessage (juce::MidiInput *, const juce::MidiMessage &) override |
|
virtual void | handleIncomingMidiMessage (const juce::MidiMessage &)=0 |
|
| MidiInputDevice (Engine &, const juce::String &type, const juce::String &name) |
|
| ~MidiInputDevice () override |
|
bool | isMidi () const override |
|
MidiChannel | getChannelToUse () const noexcept |
|
void | setChannelToUse (int) |
|
int | getProgramToUse () const noexcept |
|
void | setProgramToUse (int) |
|
void | setBankToUse (int) |
|
int | getBankToUse () const |
|
void | setChannelAllowed (int midiChannel, bool) |
|
bool | isChannelAllowed (int midiChannel) const |
|
void | setEndToEndEnabled (bool) |
|
bool | isEndToEndEnabled () const |
|
void | setOverridingNoteVelocities (bool) |
|
bool | isOverridingNoteVelocities () const |
|
void | setManualAdjustmentMs (double) |
|
double | getManualAdjustmentMs () const |
|
bool | isMPEDevice () const |
| Returns true if the given device is an MPE device and so should always record incoming MIDI to Note Expression. More...
|
|
void | flipEndToEnd () override |
|
void | masterTimeUpdate (double time) override |
| This is a bit of a hack but allows the time for MIDI devices to be set through the base class interface. More...
|
|
void | connectionStateChanged () |
|
void | addInstance (MidiInputDeviceInstanceBase *) |
|
void | removeInstance (MidiInputDeviceInstanceBase *) |
|
Clip * | addMidiToTrackAsTransaction (Clip *takeClip, AudioTrack &, juce::MidiMessageSequence &, TimeRange position, MergeMode, MidiChannel, SelectionManager *) |
|
void | handleIncomingMidiMessage (juce::MidiInput *, const juce::MidiMessage &) override |
|
RetrospectiveMidiBuffer * | getRetrospectiveMidiBuffer () const |
|
void | updateRetrospectiveBufferLength (double length) override |
|
double | getAdjustSecs () const |
|
juce::Array< AudioTrack * > | getDestinationTracks () |
|
MidiChannel | getMidiChannelFor (int rawChannelNumber) const |
|
MidiMessageArray::MPESourceID | getMPESourceID () const |
|
| InputDevice (Engine &, const juce::String &type, const juce::String &name) |
|
| ~InputDevice () override |
|
const juce::String & | getName () const |
|
const juce::String & | getType () const |
|
bool | isTrackDevice () const |
|
juce::String | getAlias () const |
| the alias is the name shown in the draggable input device components More...
|
|
void | setAlias (const juce::String &newAlias) |
|
void | initialiseDefaultAlias () |
| Called after all devices are constructed, so it can use all the device names in its calculations. More...
|
|
virtual bool | isAvailableToEdit () const |
|
bool | isEnabled () const |
|
bool | isEndToEndEnabled () const |
|
juce::String | getGlobalPropertyName () const |
|
| Selectable () |
|
virtual | ~Selectable () |
|
virtual void | selectionStatusChanged (bool isNowSelected) |
| Can be overridden to tell this object that it has just been selected or deselected. More...
|
|
virtual void | changed () |
| This should be called to send a change notification to any SelectableListeners that are registered with this object. More...
|
|
virtual void | selectableAboutToBeDeleted () |
| Called just before the selectable is about to be deleted so any subclasses should still be valid at this point. More...
|
|
void | addSelectableListener (SelectableListener *) |
|
void | removeSelectableListener (SelectableListener *) |
|
void | cancelAnyPendingUpdates () |
| If changed() has been called, this will cancel any pending async change notificaions. More...
|
|
void | deselect () |
|
void | propertiesChanged () |
|
void | notifyListenersOfDeletion () |
|
WeakRef | getWeakRef () |
|
|
enum class | MergeMode { always
, never
, optional
} |
|
enum | DeviceType {
waveDevice
, trackWaveDevice
, physicalMidiDevice
, virtualMidiDevice
,
trackMidiDevice
} |
| enum to allow quick querying of the device type. More...
|
|
using | WeakRef = juce::WeakReference< Selectable > |
|
void | handleNoteOn (juce::MidiKeyboardState *, int midiChannel, int midiNoteNumber, float velocity) override |
|
void | handleNoteOff (juce::MidiKeyboardState *, int midiChannel, int midiNoteNumber, float velocity) override |
|
void | timerCallback () override |
|
void | sendNoteOnToMidiKeyListeners (juce::MidiMessage &) |
|
void | loadProps (const juce::XmlElement *) |
|
void | saveProps (juce::XmlElement &) |
|
void | sendMessageToInstances (const juce::MidiMessage &) |
|
std::atomic< double > | adjustSecs { 0 } |
|
double | manualAdjustMs = 0 |
|
bool | overrideNoteVels = false |
|
bool | eventReceivedFromDevice = false |
|
juce::BigInteger | disallowedChannels |
|
MidiChannel | channelToUse |
|
int | programToUse = 0 |
|
bool | firstSetEnabledCall = true |
|
int | bankToUse = 0 |
|
MidiMessageArray::MPESourceID | midiSourceID = MidiMessageArray::createUniqueMPESourceID() |
|
juce::CriticalSection | noteLock |
|
bool | keysDown [128] |
|
bool | keysUp [128] |
|
uint8_t | keyDownVelocities [128] |
|
juce::SharedResourcePointer< MidiKeyChangeDispatcher > | midiKeyChangeDispatcher |
|
juce::CriticalSection | instanceLock |
|
juce::Array< MidiInputDeviceInstanceBase * > | instances |
|
std::unique_ptr< RetrospectiveMidiBuffer > | retrospectiveBuffer |
|
std::atomic< bool > | enabled { false } |
|
bool | endToEndEnabled = false |
|
bool | retrospectiveRecordLock = false |
|