TracktionEngine
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
tracktion::engine::CustomControlSurface Class Reference
Inheritance diagram for tracktion::engine::CustomControlSurface:

Classes

struct  Mapping
 
struct  MappingSet
 

Public Types

enum  ActionID {
  playId = 1 , stopId = 2 , recordId = 3 , homeId = 4 ,
  endId = 5 , rewindId = 6 , fastForwardId = 7 , markInId = 10 ,
  markOutId = 11 , automationReadId = 12 , automationRecordId = 23 , addMarkerId = 17 ,
  nextMarkerId = 13 , previousMarkerId = 14 , nudgeLeftId = 15 , nudgeRightId = 16 ,
  abortId = 18 , abortRestartId = 19 , jogId = 20 , jumpToMarkInId = 21 ,
  jumpToMarkOutId = 22 , timecodeId = 25 , toggleBeatsSecondsModeId = 50 , toggleLoopId = 51 ,
  togglePunchId = 52 , toggleClickId = 53 , toggleSnapId = 54 , toggleSlaveId = 55 ,
  toggleEtoEId = 56 , toggleScrollId = 57 , toggleAllArmId = 58 , masterVolumeId = 8 ,
  masterVolumeTextId = 26 , masterPanId = 9 , quickParamId = 24 , paramTrackId = 1600 ,
  paramNameTrackId = 2500 , paramTextTrackId = 2600 , clearAllSoloId = 27 , nameTrackId = 2100 ,
  numberTrackId = 2700 , volTrackId = 1800 , volTextTrackId = 2200 , panTrackId = 1700 ,
  panTextTrackId = 2400 , muteTrackId = 1100 , soloTrackId = 1200 , armTrackId = 1300 ,
  selectTrackId = 1400 , auxTrackId = 1500 , auxTextTrackId = 2300 , zoomInId = 100 ,
  zoomOutId = 101 , scrollTracksUpId = 102 , scrollTracksDownId = 103 , scrollTracksLeftId = 104 ,
  scrollTracksRightId = 105 , zoomTracksInId = 106 , zoomTracksOutId = 107 , toggleSelectionModeId = 108 ,
  selectLeftId = 109 , selectRightId = 110 , selectUpId = 111 , selectDownId = 112 ,
  selectClipInTrackId = 1900 , selectPluginInTrackId = 2000 , selectedPluginNameId = 113 , faderBankLeftId = 208 ,
  faderBankLeft1Id = 200 , faderBankLeft4Id = 201 , faderBankLeft8Id = 202 , faderBankLeft16Id = 206 ,
  faderBankRightId = 209 , faderBankRight1Id = 203 , faderBankRight4Id = 204 , faderBankRight8Id = 205 ,
  faderBankRight16Id = 207 , paramBankLeftId = 220 , paramBankLeft1Id = 221 , paramBankLeft4Id = 222 ,
  paramBankLeft8Id = 223 , paramBankLeft16Id = 224 , paramBankLeft24Id = 225 , paramBankRightId = 226 ,
  paramBankRight1Id = 227 , paramBankRight4Id = 228 , paramBankRight8Id = 229 , paramBankRight16Id = 230 ,
  paramBankRight24Id = 231 , userAction1Id = 300 , userAction2Id = 301 , userAction3Id = 302 ,
  userAction4Id = 303 , userAction5Id = 304 , userAction6Id = 305 , userAction7Id = 306 ,
  userAction8Id = 307 , userAction9Id = 308 , userAction10Id = 309 , userAction11Id = 310 ,
  userAction12Id = 311 , userAction13Id = 312 , userAction14Id = 313 , userAction15Id = 314 ,
  userAction16Id = 315 , userAction17Id = 316 , userAction18Id = 317 , userAction19Id = 318 ,
  userAction20Id = 319 , emptyTextId = 9998 , none = 9999
}
 enum used to determine the action type. More...
 
- Public Types inherited from tracktion::engine::Selectable
using WeakRef = juce::WeakReference< Selectable >
 

Public Member Functions

 CustomControlSurface (ExternalControllerManager &, const juce::String &name, ExternalControllerManager::Protocol)
 
 CustomControlSurface (ExternalControllerManager &, const juce::XmlElement &)
 
 ~CustomControlSurface () override
 
void initialiseDevice (bool connect) override
 
void shutDownDevice () override
 
void updateOSCSettings (int oscInputPort, int oscOutputPort, juce::String oscOutputAddr) override
 
void updateMiscFeatures () override
 
void acceptMidiMessage (int, const juce::MidiMessage &) override
 
bool wantsMessage (int, const juce::MidiMessage &) override
 
bool eatsAllMessages () override
 
bool canSetEatsAllMessages () override
 
void setEatsAllMessages (bool eatAll) override
 
void moveFader (int channelNum, float newSliderPos) override
 
void moveMasterLevelFader (float newLeftSliderPos, float newRightSliderPos) override
 
void movePanPot (int channelNum, float newPan) override
 
void moveAux (int channel, const char *bus, float newPos) override
 
void updateSoloAndMute (int channelNum, Track::MuteAndSoloLightState, bool isBright) override
 
void soloCountChanged (bool) override
 
void playStateChanged (bool isPlaying) override
 
void recordStateChanged (bool isRecording) override
 
void automationReadModeChanged (bool isReading) override
 
void automationWriteModeChanged (bool isWriting) override
 
void faderBankChanged (int newStartChannelNumber, const juce::StringArray &trackNames) override
 
void channelLevelChanged (int channel, float l, float r) override
 
void trackSelectionChanged (int channel, bool isSelected) override
 
void trackRecordEnabled (int channel, bool isEnabled) override
 
void masterLevelsChanged (float leftLevel, float rightLevel) override
 
void timecodeChanged (int barsOrHours, int beatsOrMinutes, int ticksOrSeconds, int millisecs, bool isBarsBeats, bool isFrames) override
 
void clickOnOffChanged (bool isClickOn) override
 
void snapOnOffChanged (bool isSnapOn) override
 
void loopOnOffChanged (bool isLoopOn) override
 
void slaveOnOffChanged (bool isSlaving) override
 
void punchOnOffChanged (bool isPunching) override
 
void scrollOnOffChanged (bool isPunching) override
 
void parameterChanged (int parameterNumber, const ParameterSetting &newValue) override
 
void clearParameter (int parameterNumber) override
 
bool canChangeSelectedPlugin () override
 
void currentSelectionChanged (juce::String) override
 
void deleteController () override
 
void markerChanged (int parameterNumber, const MarkerSetting &newValue) override
 
void clearMarker (int parameterNumber) override
 
bool removeMapping (ActionID, int controllerID, int note, int channel)
 
void showMappingsEditor (juce::DialogWindow::LaunchOptions &)
 This will put the surface in listen and assign mode, launching the given dialog window. More...
 
int getNumMappings () const
 
void listenToRow (int)
 
int getRowBeingListenedTo () const
 
bool allowsManualEditing () const
 
void showMappingsListForRow (int)
 
void setLearntParam (bool keepListening)
 
void removeMapping (int index)
 
MappinggetMappingForRow (int) const
 
std::pair< juce::String, juce::String > getTextForRow (int) const
 
virtual void play (float val, int param)
 
virtual void stop (float val, int param)
 
virtual void record (float val, int param)
 
virtual void home (float val, int param)
 
virtual void end (float val, int param)
 
virtual void rewind (float val, int param)
 
virtual void fastForward (float val, int param)
 
virtual void markIn (float val, int param)
 
virtual void markOut (float val, int param)
 
virtual void automationReading (float val, int param)
 
virtual void automationWriting (float val, int param)
 
virtual void addMarker (float val, int param)
 
virtual void prevMarker (float val, int param)
 
virtual void nextMarker (float val, int param)
 
virtual void nudgeLeft (float val, int param)
 
virtual void nudgeRight (float val, int param)
 
virtual void abort (float val, int param)
 
virtual void abortRestart (float val, int param)
 
virtual void jog (float val, int param)
 
virtual void jumpToMarkIn (float val, int param)
 
virtual void jumpToMarkOut (float val, int param)
 
virtual void clearAllSolo (float val, int param)
 
virtual void toggleBeatsSecondsMode (float val, int param)
 
virtual void toggleLoop (float val, int param)
 
virtual void togglePunch (float val, int param)
 
virtual void toggleClick (float val, int param)
 
virtual void toggleSnap (float val, int param)
 
virtual void toggleSlave (float val, int param)
 
virtual void toggleEtoE (float val, int param)
 
virtual void toggleScroll (float val, int param)
 
virtual void toggleAllArm (float val, int param)
 
virtual void masterVolume (float val, int param)
 
virtual void masterPan (float val, int param)
 
virtual void quickParam (float val, int param)
 
virtual void paramTrack (float val, int param)
 
virtual void volTrack (float val, int param)
 
virtual void panTrack (float val, int param)
 
virtual void muteTrack (float val, int param)
 
virtual void soloTrack (float val, int param)
 
virtual void armTrack (float val, int param)
 
virtual void selectTrack (float val, int param)
 
virtual void auxTrack (float val, int param)
 
virtual void zoomIn (float val, int param)
 
virtual void zoomOut (float val, int param)
 
virtual void scrollTracksUp (float val, int param)
 
virtual void scrollTracksDown (float val, int param)
 
virtual void scrollTracksLeft (float val, int param)
 
virtual void scrollTracksRight (float val, int param)
 
virtual void zoomTracksIn (float val, int param)
 
virtual void zoomTracksOut (float val, int param)
 
virtual void toggleSelectionMode (float val, int param)
 
virtual void selectLeft (float val, int param)
 
virtual void selectRight (float val, int param)
 
virtual void selectUp (float val, int param)
 
virtual void selectDown (float val, int param)
 
virtual void selectClipInTrack (float val, int param)
 
virtual void selectFilterInTrack (float val, int param)
 
virtual void faderBankLeft (float val, int param)
 
virtual void faderBankLeft1 (float val, int param)
 
virtual void faderBankLeft4 (float val, int param)
 
virtual void faderBankLeft8 (float val, int param)
 
virtual void faderBankLeft16 (float val, int param)
 
virtual void faderBankRight (float val, int param)
 
virtual void faderBankRight1 (float val, int param)
 
virtual void faderBankRight4 (float val, int param)
 
virtual void faderBankRight8 (float val, int param)
 
virtual void faderBankRight16 (float val, int param)
 
virtual void paramBankLeft (float val, int param)
 
virtual void paramBankLeft1 (float val, int param)
 
virtual void paramBankLeft4 (float val, int param)
 
virtual void paramBankLeft8 (float val, int param)
 
virtual void paramBankLeft16 (float val, int param)
 
virtual void paramBankLeft24 (float val, int param)
 
virtual void paramBankRight (float val, int param)
 
virtual void paramBankRight1 (float val, int param)
 
virtual void paramBankRight4 (float val, int param)
 
virtual void paramBankRight8 (float val, int param)
 
virtual void paramBankRight16 (float val, int param)
 
virtual void paramBankRight24 (float val, int param)
 
virtual void userFunction1 (float val, int param)
 
virtual void userFunction2 (float val, int param)
 
virtual void userFunction3 (float val, int param)
 
virtual void userFunction4 (float val, int param)
 
virtual void userFunction5 (float val, int param)
 
virtual void userFunction6 (float val, int param)
 
virtual void userFunction7 (float val, int param)
 
virtual void userFunction8 (float val, int param)
 
virtual void userFunction9 (float val, int param)
 
virtual void userFunction10 (float val, int param)
 
virtual void userFunction11 (float val, int param)
 
virtual void userFunction12 (float val, int param)
 
virtual void userFunction13 (float val, int param)
 
virtual void userFunction14 (float val, int param)
 
virtual void userFunction15 (float val, int param)
 
virtual void userFunction16 (float val, int param)
 
virtual void userFunction17 (float val, int param)
 
virtual void userFunction18 (float val, int param)
 
virtual void userFunction19 (float val, int param)
 
virtual void userFunction20 (float val, int param)
 
void null (float, int)
 
virtual void loadFunctions ()
 
virtual juce::XmlElement * createXml ()
 
virtual void importSettings (const juce::File &)
 
virtual void importSettings (const juce::String &)
 
virtual void exportSettings (const juce::File &)
 
int getPacketsIn ()
 
int getPacketsOut ()
 
- Public Member Functions inherited from tracktion::engine::ControlSurface
 ControlSurface (ExternalControllerManager &)
 
 ~ControlSurface () override
 
virtual void initialiseDevice ([[maybe_unused]] bool connect)
 
virtual void numExtendersChanged ([[maybe_unused]] int num, [[maybe_unused]] int main)
 
virtual void acceptMidiMessage ([[maybe_unused]] int idx, const juce::MidiMessage &)
 
virtual void movePanPot ([[maybe_unused]] int channelNum, [[maybe_unused]] float newPan)
 
virtual void moveAux ([[maybe_unused]] int channel, [[maybe_unused]] const char *bus, [[maybe_unused]] float newPos)
 
virtual void clearAux (int)
 
virtual void updateSoloAndMute ([[maybe_unused]] int channelNum, Track::MuteAndSoloLightState, [[maybe_unused]] bool isBright)
 
virtual void soloCountChanged ([[maybe_unused]] bool anySoloTracks)
 
virtual void playStateChanged ([[maybe_unused]] bool isPlaying)
 
virtual void recordStateChanged ([[maybe_unused]] bool isRecording)
 
virtual void automationReadModeChanged ([[maybe_unused]] bool isReading)
 
virtual void automationWriteModeChanged ([[maybe_unused]] bool isWriting)
 
virtual void faderBankChanged ([[maybe_unused]] int newStartChannelNumber, [[maybe_unused]] const juce::StringArray &trackNames)
 
virtual void channelLevelChanged ([[maybe_unused]] int channel, [[maybe_unused]] float l, [[maybe_unused]] float r)
 
virtual void trackSelectionChanged ([[maybe_unused]] int channel, [[maybe_unused]] bool isSelected)
 
virtual void trackRecordEnabled ([[maybe_unused]] int channel, [[maybe_unused]] bool isEnabled)
 
virtual void masterLevelsChanged ([[maybe_unused]] float leftLevel, [[maybe_unused]] float rightLevel)
 
virtual void timecodeChanged ([[maybe_unused]] int barsOrHours, [[maybe_unused]] int beatsOrMinutes, [[maybe_unused]] int ticksOrSeconds, [[maybe_unused]] int millisecs, [[maybe_unused]] bool isBarsBeats, [[maybe_unused]] bool isFrames)
 
virtual void clickOnOffChanged ([[maybe_unused]] bool isClickOn)
 
virtual void snapOnOffChanged ([[maybe_unused]] bool isSnapOn)
 
virtual void loopOnOffChanged ([[maybe_unused]] bool isLoopOn)
 
virtual void slaveOnOffChanged ([[maybe_unused]] bool isSlaving)
 
virtual void punchOnOffChanged ([[maybe_unused]] bool isPunching)
 
virtual void scrollOnOffChanged ([[maybe_unused]] bool isScroll)
 
virtual void undoStatusChanged ([[maybe_unused]] bool canUundo, [[maybe_unused]] bool canReo)
 
virtual void parameterChanged ([[maybe_unused]] int parameterNumber, [[maybe_unused]] const ParameterSetting &newValue)
 
virtual void clearParameter ([[maybe_unused]] int parameterNumber)
 
virtual void markerChanged ([[maybe_unused]] int parameterNumber, [[maybe_unused]] const MarkerSetting &newValue)
 
virtual void clearMarker ([[maybe_unused]] int parameterNumber)
 
virtual void auxBankChanged (int)
 
juce::String getSelectableDescription () override
 Subclasses must return a description of what they are. More...
 
virtual bool showingPluginParams ()
 
virtual bool showingMarkers ()
 
virtual bool showingTracks ()
 
virtual void pluginBypass (bool)
 
virtual bool isPluginSelected (Plugin *)
 
virtual void currentEditChanged (Edit *e)
 
EditgetEdit () const noexcept
 
TransportControlgetTransport () const noexcept
 
bool isSafeRecording () const
 
int getMarkerBankOffset () const
 
int getFaderBankOffset () const
 
int getAuxBankOffset () const
 
int getParamBankOffset () const
 
void sendMidiCommandToController (int idx, const void *midiData, int numBytes)
 
void sendMidiCommandToController (int idx, const juce::MidiMessage &)
 
template<size_t size>
void sendMidiArray (int idx, const uint8_t(&rawData)[size])
 
void userMovedFader (int channelNum, float newFaderPosition, bool delta=false)
 
void userMovedPanPot (int channelNum, float newPanPosition, bool delta=false)
 
void userMovedMasterLevelFader (float newLevel, bool delta=false)
 
void userMovedMasterPanPot (float newLevel)
 
void userMovedAux (int channelNum, float newPosition)
 
void userPressedAux (int channelNum)
 
void userMovedQuickParam (float newLevel)
 
void userPressedSolo (int channelNum)
 
void userPressedSoloIsolate (int channelNum)
 
void userPressedMute (int channelNum, bool muteVolumeControl)
 
void userSelectedTrack (int channelNum)
 
void userSelectedClipInTrack (int channelNum)
 
void userSelectedPluginInTrack (int channelNum)
 
void userPressedRecEnable (int channelNum, bool enableEtoE)
 
void userPressedPlay ()
 
void userPressedRecord ()
 
void userPressedStop ()
 
void userPressedHome ()
 
void userPressedEnd ()
 
void userPressedMarkIn ()
 
void userPressedMarkOut ()
 
void userPressedAutomationReading ()
 
void userPressedAutomationWriting ()
 
void userToggledBeatsSecondsMode ()
 
void userPressedSave ()
 
void userPressedSaveAs ()
 
void userPressedArmAll ()
 
void userPressedJumpToMarkIn ()
 
void userPressedJumpToMarkOut ()
 
void userPressedZoomIn ()
 
void userPressedZoomOut ()
 
void userPressedZoomToFit ()
 
void userPressedCreateMarker ()
 
void userPressedNextMarker ()
 
void userPressedPreviousMarker ()
 
void userPressedRedo ()
 
void userPressedUndo ()
 
void userPressedAbort ()
 
void userPressedAbortRestart ()
 
void userPressedCut ()
 
void userPressedCopy ()
 
void userPressedPaste (bool insert)
 
void userPressedDelete (bool marked)
 
void userPressedZoomFitToTracks ()
 
void userPressedInsertTempoChange ()
 
void userPressedInsertPitchChange ()
 
void userPressedInsertTimeSigChange ()
 
void userToggledVideoWindow ()
 
void userToggledMixerWindow (bool fullscreen)
 
void userToggledMidiEditorWindow (bool fullscreen)
 
void userToggledTrackEditorWindow (bool zoomed)
 
void userToggledBrowserWindow ()
 
void userToggledActionsWindow ()
 
void userPressedUserAction (int)
 
void userPressedFreeze ()
 
void userPressedClearAllSolo ()
 
void userPressedClearAllMute ()
 
void userToggledLoopOnOff ()
 
void userToggledPunchOnOff ()
 
void userToggledClickOnOff ()
 
void userToggledSnapOnOff ()
 
void userToggledSlaveOnOff ()
 
void userToggledEtoE ()
 
void userToggledScroll ()
 
void userSkippedToNextMarkerLeft ()
 
void userSkippedToNextMarkerRight ()
 
void userNudgedLeft ()
 
void userNudgedRight ()
 
void userZoomedIn ()
 
void userZoomedOut ()
 
void userScrolledTracksUp ()
 
void userScrolledTracksDown ()
 
void userScrolledTracksLeft ()
 
void userScrolledTracksRight ()
 
void userZoomedTracksIn ()
 
void userZoomedTracksOut ()
 
void selectOtherObject (SelectableClass::Relationship, bool moveFromCurrentPlugin)
 
void muteOrUnmutePluginsInTrack ()
 
void userChangedFaderBanks (int channelNumDelta)
 
void userMovedJogWheel (float amount)
 
void userChangedRewindButton (bool isButtonDown)
 
void userChangedFastForwardButton (bool isButtonDown)
 
void userMovedParameterControl (int parameter, float newValue)
 
void userPressedParameterControl (int paramNumber)
 
void userChangedParameterBank (int deltaParams)
 
void userChangedMarkerBank (int deltaMarkers)
 
void userPressedGoToMarker (int marker)
 
void userChangedAuxBank (int delta)
 
void updateDeviceState ()
 
void redrawSelectedPlugin ()
 
void redrawSelectedTracks ()
 
EditgetEditIfOnEditScreen () const
 
- Public Member Functions inherited from tracktion::engine::Selectable
 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 ()
 

Static Public Member Functions

static juce::String getNameForActionID (ExternalControllerManager &, ActionID)
 
static juce::Array< ControlSurface * > getCustomSurfaces (ExternalControllerManager &)
 
static juce::Array< MappingSetgetMappingSetsForID (ExternalControllerManager &, ActionID)
 
static int getControllerNumberFromId (int) noexcept
 
static void saveAllSettings (Engine &engine)
 Saves the settings of all open custom surfaces. More...
 
- 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. More...
 

Additional Inherited Members

- Public Attributes inherited from tracktion::engine::ControlSurface
juce::String deviceDescription
 These values need to be set by the subclass. More...
 
int supportedExtenders = 0
 
bool needsMidiChannel = true
 
juce::String midiChannelName
 
bool needsMidiBackChannel = false
 
juce::String midiBackChannelName
 
bool needsOSCSocket = false
 
bool wantsClock = false
 
bool deletable = false
 
int numberOfFaderChannels = 0
 
int numCharactersForTrackNames = 0
 
bool allowBankingOffEnd = false
 
int numParameterControls = 0
 
int numCharactersForParameterLabels = 0
 
int numMarkers = 0
 
int numCharactersForMarkerLabels = 0
 
bool pickUpMode = false
 
int numAuxes = 0
 
int numCharactersForAuxLabels = 0
 
bool wantsAuxBanks = false
 
bool followsTrackSelection = false
 
Engineengine
 
ExternalControllerManagerexternalControllerManager
 
ExternalControllerowner = nullptr
 
- Public Attributes inherited from tracktion::engine::Selectable
WeakRef::Master masterReference
 

Member Enumeration Documentation

◆ ActionID

enum used to determine the action type.

Used mainly when queueing events for MIDI learn.

Enumerator
playId 
stopId 
recordId 
homeId 
endId 
rewindId 
fastForwardId 
markInId 
markOutId 
automationReadId 
automationRecordId 
addMarkerId 
nextMarkerId 
previousMarkerId 
nudgeLeftId 
nudgeRightId 
abortId 
abortRestartId 
jogId 
jumpToMarkInId 
jumpToMarkOutId 
timecodeId 
toggleBeatsSecondsModeId 
toggleLoopId 
togglePunchId 
toggleClickId 
toggleSnapId 
toggleSlaveId 
toggleEtoEId 
toggleScrollId 
toggleAllArmId 
masterVolumeId 
masterVolumeTextId 
masterPanId 
quickParamId 
paramTrackId 
paramNameTrackId 
paramTextTrackId 
clearAllSoloId 
nameTrackId 
numberTrackId 
volTrackId 
volTextTrackId 
panTrackId 
panTextTrackId 
muteTrackId 
soloTrackId 
armTrackId 
selectTrackId 
auxTrackId 
auxTextTrackId 
zoomInId 
zoomOutId 
scrollTracksUpId 
scrollTracksDownId 
scrollTracksLeftId 
scrollTracksRightId 
zoomTracksInId 
zoomTracksOutId 
toggleSelectionModeId 
selectLeftId 
selectRightId 
selectUpId 
selectDownId 
selectClipInTrackId 
selectPluginInTrackId 
selectedPluginNameId 
faderBankLeftId 
faderBankLeft1Id 
faderBankLeft4Id 
faderBankLeft8Id 
faderBankLeft16Id 
faderBankRightId 
faderBankRight1Id 
faderBankRight4Id 
faderBankRight8Id 
faderBankRight16Id 
paramBankLeftId 
paramBankLeft1Id 
paramBankLeft4Id 
paramBankLeft8Id 
paramBankLeft16Id 
paramBankLeft24Id 
paramBankRightId 
paramBankRight1Id 
paramBankRight4Id 
paramBankRight8Id 
paramBankRight16Id 
paramBankRight24Id 
userAction1Id 
userAction2Id 
userAction3Id 
userAction4Id 
userAction5Id 
userAction6Id 
userAction7Id 
userAction8Id 
userAction9Id 
userAction10Id 
userAction11Id 
userAction12Id 
userAction13Id 
userAction14Id 
userAction15Id 
userAction16Id 
userAction17Id 
userAction18Id 
userAction19Id 
userAction20Id 
emptyTextId 
none 

Constructor & Destructor Documentation

◆ CustomControlSurface() [1/2]

tracktion::engine::CustomControlSurface::CustomControlSurface ( ExternalControllerManager ,
const juce::String &  name,
ExternalControllerManager::Protocol   
)

◆ CustomControlSurface() [2/2]

tracktion::engine::CustomControlSurface::CustomControlSurface ( ExternalControllerManager ,
const juce::XmlElement &   
)

◆ ~CustomControlSurface()

tracktion::engine::CustomControlSurface::~CustomControlSurface ( )
override

Member Function Documentation

◆ getNameForActionID()

static juce::String tracktion::engine::CustomControlSurface::getNameForActionID ( ExternalControllerManager ,
ActionID   
)
static

◆ getCustomSurfaces()

static juce::Array<ControlSurface*> tracktion::engine::CustomControlSurface::getCustomSurfaces ( ExternalControllerManager )
static

◆ getMappingSetsForID()

static juce::Array<MappingSet> tracktion::engine::CustomControlSurface::getMappingSetsForID ( ExternalControllerManager ,
ActionID   
)
static

◆ getControllerNumberFromId()

static int tracktion::engine::CustomControlSurface::getControllerNumberFromId ( int  )
staticnoexcept

◆ initialiseDevice()

void tracktion::engine::CustomControlSurface::initialiseDevice ( bool  connect)
override

◆ shutDownDevice()

void tracktion::engine::CustomControlSurface::shutDownDevice ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ updateOSCSettings()

void tracktion::engine::CustomControlSurface::updateOSCSettings ( int  oscInputPort,
int  oscOutputPort,
juce::String  oscOutputAddr 
)
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ saveAllSettings()

static void tracktion::engine::CustomControlSurface::saveAllSettings ( Engine engine)
static

Saves the settings of all open custom surfaces.

◆ updateMiscFeatures()

void tracktion::engine::CustomControlSurface::updateMiscFeatures ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ acceptMidiMessage()

void tracktion::engine::CustomControlSurface::acceptMidiMessage ( int  ,
const juce::MidiMessage &   
)
override

◆ wantsMessage()

bool tracktion::engine::CustomControlSurface::wantsMessage ( int  ,
const juce::MidiMessage &   
)
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ eatsAllMessages()

bool tracktion::engine::CustomControlSurface::eatsAllMessages ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ canSetEatsAllMessages()

bool tracktion::engine::CustomControlSurface::canSetEatsAllMessages ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ setEatsAllMessages()

void tracktion::engine::CustomControlSurface::setEatsAllMessages ( bool  eatAll)
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ moveFader()

void tracktion::engine::CustomControlSurface::moveFader ( int  channelNum,
float  newSliderPos 
)
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ moveMasterLevelFader()

void tracktion::engine::CustomControlSurface::moveMasterLevelFader ( float  newLeftSliderPos,
float  newRightSliderPos 
)
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ movePanPot()

void tracktion::engine::CustomControlSurface::movePanPot ( int  channelNum,
float  newPan 
)
override

◆ moveAux()

void tracktion::engine::CustomControlSurface::moveAux ( int  channel,
const char *  bus,
float  newPos 
)
override

◆ updateSoloAndMute()

void tracktion::engine::CustomControlSurface::updateSoloAndMute ( int  channelNum,
Track::MuteAndSoloLightState  ,
bool  isBright 
)
override

◆ soloCountChanged()

void tracktion::engine::CustomControlSurface::soloCountChanged ( bool  )
override

◆ playStateChanged()

void tracktion::engine::CustomControlSurface::playStateChanged ( bool  isPlaying)
override

◆ recordStateChanged()

void tracktion::engine::CustomControlSurface::recordStateChanged ( bool  isRecording)
override

◆ automationReadModeChanged()

void tracktion::engine::CustomControlSurface::automationReadModeChanged ( bool  isReading)
override

◆ automationWriteModeChanged()

void tracktion::engine::CustomControlSurface::automationWriteModeChanged ( bool  isWriting)
override

◆ faderBankChanged()

void tracktion::engine::CustomControlSurface::faderBankChanged ( int  newStartChannelNumber,
const juce::StringArray &  trackNames 
)
override

◆ channelLevelChanged()

void tracktion::engine::CustomControlSurface::channelLevelChanged ( int  channel,
float  l,
float  r 
)
override

◆ trackSelectionChanged()

void tracktion::engine::CustomControlSurface::trackSelectionChanged ( int  channel,
bool  isSelected 
)
override

◆ trackRecordEnabled()

void tracktion::engine::CustomControlSurface::trackRecordEnabled ( int  channel,
bool  isEnabled 
)
override

◆ masterLevelsChanged()

void tracktion::engine::CustomControlSurface::masterLevelsChanged ( float  leftLevel,
float  rightLevel 
)
override

◆ timecodeChanged()

void tracktion::engine::CustomControlSurface::timecodeChanged ( int  barsOrHours,
int  beatsOrMinutes,
int  ticksOrSeconds,
int  millisecs,
bool  isBarsBeats,
bool  isFrames 
)
override

◆ clickOnOffChanged()

void tracktion::engine::CustomControlSurface::clickOnOffChanged ( bool  isClickOn)
override

◆ snapOnOffChanged()

void tracktion::engine::CustomControlSurface::snapOnOffChanged ( bool  isSnapOn)
override

◆ loopOnOffChanged()

void tracktion::engine::CustomControlSurface::loopOnOffChanged ( bool  isLoopOn)
override

◆ slaveOnOffChanged()

void tracktion::engine::CustomControlSurface::slaveOnOffChanged ( bool  isSlaving)
override

◆ punchOnOffChanged()

void tracktion::engine::CustomControlSurface::punchOnOffChanged ( bool  isPunching)
override

◆ scrollOnOffChanged()

void tracktion::engine::CustomControlSurface::scrollOnOffChanged ( bool  isPunching)
override

◆ parameterChanged()

void tracktion::engine::CustomControlSurface::parameterChanged ( int  parameterNumber,
const ParameterSetting newValue 
)
override

◆ clearParameter()

void tracktion::engine::CustomControlSurface::clearParameter ( int  parameterNumber)
override

◆ canChangeSelectedPlugin()

bool tracktion::engine::CustomControlSurface::canChangeSelectedPlugin ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ currentSelectionChanged()

void tracktion::engine::CustomControlSurface::currentSelectionChanged ( juce::String  )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ deleteController()

void tracktion::engine::CustomControlSurface::deleteController ( )
overridevirtual

Reimplemented from tracktion::engine::ControlSurface.

◆ markerChanged()

void tracktion::engine::CustomControlSurface::markerChanged ( int  parameterNumber,
const MarkerSetting newValue 
)
override

◆ clearMarker()

void tracktion::engine::CustomControlSurface::clearMarker ( int  parameterNumber)
override

◆ removeMapping() [1/2]

bool tracktion::engine::CustomControlSurface::removeMapping ( ActionID  ,
int  controllerID,
int  note,
int  channel 
)

◆ showMappingsEditor()

void tracktion::engine::CustomControlSurface::showMappingsEditor ( juce::DialogWindow::LaunchOptions &  )

This will put the surface in listen and assign mode, launching the given dialog window.

The call will block whilst assignments are made and return when the window is closed.

◆ getNumMappings()

int tracktion::engine::CustomControlSurface::getNumMappings ( ) const

◆ listenToRow()

void tracktion::engine::CustomControlSurface::listenToRow ( int  )

◆ getRowBeingListenedTo()

int tracktion::engine::CustomControlSurface::getRowBeingListenedTo ( ) const

◆ allowsManualEditing()

bool tracktion::engine::CustomControlSurface::allowsManualEditing ( ) const

◆ showMappingsListForRow()

void tracktion::engine::CustomControlSurface::showMappingsListForRow ( int  )

◆ setLearntParam()

void tracktion::engine::CustomControlSurface::setLearntParam ( bool  keepListening)

◆ removeMapping() [2/2]

void tracktion::engine::CustomControlSurface::removeMapping ( int  index)

◆ getMappingForRow()

Mapping* tracktion::engine::CustomControlSurface::getMappingForRow ( int  ) const

◆ getTextForRow()

std::pair<juce::String, juce::String> tracktion::engine::CustomControlSurface::getTextForRow ( int  ) const

◆ play()

virtual void tracktion::engine::CustomControlSurface::play ( float  val,
int  param 
)
virtual

◆ stop()

virtual void tracktion::engine::CustomControlSurface::stop ( float  val,
int  param 
)
virtual

◆ record()

virtual void tracktion::engine::CustomControlSurface::record ( float  val,
int  param 
)
virtual

◆ home()

virtual void tracktion::engine::CustomControlSurface::home ( float  val,
int  param 
)
virtual

◆ end()

virtual void tracktion::engine::CustomControlSurface::end ( float  val,
int  param 
)
virtual

◆ rewind()

virtual void tracktion::engine::CustomControlSurface::rewind ( float  val,
int  param 
)
virtual

◆ fastForward()

virtual void tracktion::engine::CustomControlSurface::fastForward ( float  val,
int  param 
)
virtual

◆ markIn()

virtual void tracktion::engine::CustomControlSurface::markIn ( float  val,
int  param 
)
virtual

◆ markOut()

virtual void tracktion::engine::CustomControlSurface::markOut ( float  val,
int  param 
)
virtual

◆ automationReading()

virtual void tracktion::engine::CustomControlSurface::automationReading ( float  val,
int  param 
)
virtual

◆ automationWriting()

virtual void tracktion::engine::CustomControlSurface::automationWriting ( float  val,
int  param 
)
virtual

◆ addMarker()

virtual void tracktion::engine::CustomControlSurface::addMarker ( float  val,
int  param 
)
virtual

◆ prevMarker()

virtual void tracktion::engine::CustomControlSurface::prevMarker ( float  val,
int  param 
)
virtual

◆ nextMarker()

virtual void tracktion::engine::CustomControlSurface::nextMarker ( float  val,
int  param 
)
virtual

◆ nudgeLeft()

virtual void tracktion::engine::CustomControlSurface::nudgeLeft ( float  val,
int  param 
)
virtual

◆ nudgeRight()

virtual void tracktion::engine::CustomControlSurface::nudgeRight ( float  val,
int  param 
)
virtual

◆ abort()

virtual void tracktion::engine::CustomControlSurface::abort ( float  val,
int  param 
)
virtual

◆ abortRestart()

virtual void tracktion::engine::CustomControlSurface::abortRestart ( float  val,
int  param 
)
virtual

◆ jog()

virtual void tracktion::engine::CustomControlSurface::jog ( float  val,
int  param 
)
virtual

◆ jumpToMarkIn()

virtual void tracktion::engine::CustomControlSurface::jumpToMarkIn ( float  val,
int  param 
)
virtual

◆ jumpToMarkOut()

virtual void tracktion::engine::CustomControlSurface::jumpToMarkOut ( float  val,
int  param 
)
virtual

◆ clearAllSolo()

virtual void tracktion::engine::CustomControlSurface::clearAllSolo ( float  val,
int  param 
)
virtual

◆ toggleBeatsSecondsMode()

virtual void tracktion::engine::CustomControlSurface::toggleBeatsSecondsMode ( float  val,
int  param 
)
virtual

◆ toggleLoop()

virtual void tracktion::engine::CustomControlSurface::toggleLoop ( float  val,
int  param 
)
virtual

◆ togglePunch()

virtual void tracktion::engine::CustomControlSurface::togglePunch ( float  val,
int  param 
)
virtual

◆ toggleClick()

virtual void tracktion::engine::CustomControlSurface::toggleClick ( float  val,
int  param 
)
virtual

◆ toggleSnap()

virtual void tracktion::engine::CustomControlSurface::toggleSnap ( float  val,
int  param 
)
virtual

◆ toggleSlave()

virtual void tracktion::engine::CustomControlSurface::toggleSlave ( float  val,
int  param 
)
virtual

◆ toggleEtoE()

virtual void tracktion::engine::CustomControlSurface::toggleEtoE ( float  val,
int  param 
)
virtual

◆ toggleScroll()

virtual void tracktion::engine::CustomControlSurface::toggleScroll ( float  val,
int  param 
)
virtual

◆ toggleAllArm()

virtual void tracktion::engine::CustomControlSurface::toggleAllArm ( float  val,
int  param 
)
virtual

◆ masterVolume()

virtual void tracktion::engine::CustomControlSurface::masterVolume ( float  val,
int  param 
)
virtual

◆ masterPan()

virtual void tracktion::engine::CustomControlSurface::masterPan ( float  val,
int  param 
)
virtual

◆ quickParam()

virtual void tracktion::engine::CustomControlSurface::quickParam ( float  val,
int  param 
)
virtual

◆ paramTrack()

virtual void tracktion::engine::CustomControlSurface::paramTrack ( float  val,
int  param 
)
virtual

◆ volTrack()

virtual void tracktion::engine::CustomControlSurface::volTrack ( float  val,
int  param 
)
virtual

◆ panTrack()

virtual void tracktion::engine::CustomControlSurface::panTrack ( float  val,
int  param 
)
virtual

◆ muteTrack()

virtual void tracktion::engine::CustomControlSurface::muteTrack ( float  val,
int  param 
)
virtual

◆ soloTrack()

virtual void tracktion::engine::CustomControlSurface::soloTrack ( float  val,
int  param 
)
virtual

◆ armTrack()

virtual void tracktion::engine::CustomControlSurface::armTrack ( float  val,
int  param 
)
virtual

◆ selectTrack()

virtual void tracktion::engine::CustomControlSurface::selectTrack ( float  val,
int  param 
)
virtual

◆ auxTrack()

virtual void tracktion::engine::CustomControlSurface::auxTrack ( float  val,
int  param 
)
virtual

◆ zoomIn()

virtual void tracktion::engine::CustomControlSurface::zoomIn ( float  val,
int  param 
)
virtual

◆ zoomOut()

virtual void tracktion::engine::CustomControlSurface::zoomOut ( float  val,
int  param 
)
virtual

◆ scrollTracksUp()

virtual void tracktion::engine::CustomControlSurface::scrollTracksUp ( float  val,
int  param 
)
virtual

◆ scrollTracksDown()

virtual void tracktion::engine::CustomControlSurface::scrollTracksDown ( float  val,
int  param 
)
virtual

◆ scrollTracksLeft()

virtual void tracktion::engine::CustomControlSurface::scrollTracksLeft ( float  val,
int  param 
)
virtual

◆ scrollTracksRight()

virtual void tracktion::engine::CustomControlSurface::scrollTracksRight ( float  val,
int  param 
)
virtual

◆ zoomTracksIn()

virtual void tracktion::engine::CustomControlSurface::zoomTracksIn ( float  val,
int  param 
)
virtual

◆ zoomTracksOut()

virtual void tracktion::engine::CustomControlSurface::zoomTracksOut ( float  val,
int  param 
)
virtual

◆ toggleSelectionMode()

virtual void tracktion::engine::CustomControlSurface::toggleSelectionMode ( float  val,
int  param 
)
virtual

◆ selectLeft()

virtual void tracktion::engine::CustomControlSurface::selectLeft ( float  val,
int  param 
)
virtual

◆ selectRight()

virtual void tracktion::engine::CustomControlSurface::selectRight ( float  val,
int  param 
)
virtual

◆ selectUp()

virtual void tracktion::engine::CustomControlSurface::selectUp ( float  val,
int  param 
)
virtual

◆ selectDown()

virtual void tracktion::engine::CustomControlSurface::selectDown ( float  val,
int  param 
)
virtual

◆ selectClipInTrack()

virtual void tracktion::engine::CustomControlSurface::selectClipInTrack ( float  val,
int  param 
)
virtual

◆ selectFilterInTrack()

virtual void tracktion::engine::CustomControlSurface::selectFilterInTrack ( float  val,
int  param 
)
virtual

◆ faderBankLeft()

virtual void tracktion::engine::CustomControlSurface::faderBankLeft ( float  val,
int  param 
)
virtual

◆ faderBankLeft1()

virtual void tracktion::engine::CustomControlSurface::faderBankLeft1 ( float  val,
int  param 
)
virtual

◆ faderBankLeft4()

virtual void tracktion::engine::CustomControlSurface::faderBankLeft4 ( float  val,
int  param 
)
virtual

◆ faderBankLeft8()

virtual void tracktion::engine::CustomControlSurface::faderBankLeft8 ( float  val,
int  param 
)
virtual

◆ faderBankLeft16()

virtual void tracktion::engine::CustomControlSurface::faderBankLeft16 ( float  val,
int  param 
)
virtual

◆ faderBankRight()

virtual void tracktion::engine::CustomControlSurface::faderBankRight ( float  val,
int  param 
)
virtual

◆ faderBankRight1()

virtual void tracktion::engine::CustomControlSurface::faderBankRight1 ( float  val,
int  param 
)
virtual

◆ faderBankRight4()

virtual void tracktion::engine::CustomControlSurface::faderBankRight4 ( float  val,
int  param 
)
virtual

◆ faderBankRight8()

virtual void tracktion::engine::CustomControlSurface::faderBankRight8 ( float  val,
int  param 
)
virtual

◆ faderBankRight16()

virtual void tracktion::engine::CustomControlSurface::faderBankRight16 ( float  val,
int  param 
)
virtual

◆ paramBankLeft()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft ( float  val,
int  param 
)
virtual

◆ paramBankLeft1()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft1 ( float  val,
int  param 
)
virtual

◆ paramBankLeft4()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft4 ( float  val,
int  param 
)
virtual

◆ paramBankLeft8()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft8 ( float  val,
int  param 
)
virtual

◆ paramBankLeft16()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft16 ( float  val,
int  param 
)
virtual

◆ paramBankLeft24()

virtual void tracktion::engine::CustomControlSurface::paramBankLeft24 ( float  val,
int  param 
)
virtual

◆ paramBankRight()

virtual void tracktion::engine::CustomControlSurface::paramBankRight ( float  val,
int  param 
)
virtual

◆ paramBankRight1()

virtual void tracktion::engine::CustomControlSurface::paramBankRight1 ( float  val,
int  param 
)
virtual

◆ paramBankRight4()

virtual void tracktion::engine::CustomControlSurface::paramBankRight4 ( float  val,
int  param 
)
virtual

◆ paramBankRight8()

virtual void tracktion::engine::CustomControlSurface::paramBankRight8 ( float  val,
int  param 
)
virtual

◆ paramBankRight16()

virtual void tracktion::engine::CustomControlSurface::paramBankRight16 ( float  val,
int  param 
)
virtual

◆ paramBankRight24()

virtual void tracktion::engine::CustomControlSurface::paramBankRight24 ( float  val,
int  param 
)
virtual

◆ userFunction1()

virtual void tracktion::engine::CustomControlSurface::userFunction1 ( float  val,
int  param 
)
virtual

◆ userFunction2()

virtual void tracktion::engine::CustomControlSurface::userFunction2 ( float  val,
int  param 
)
virtual

◆ userFunction3()

virtual void tracktion::engine::CustomControlSurface::userFunction3 ( float  val,
int  param 
)
virtual

◆ userFunction4()

virtual void tracktion::engine::CustomControlSurface::userFunction4 ( float  val,
int  param 
)
virtual

◆ userFunction5()

virtual void tracktion::engine::CustomControlSurface::userFunction5 ( float  val,
int  param 
)
virtual

◆ userFunction6()

virtual void tracktion::engine::CustomControlSurface::userFunction6 ( float  val,
int  param 
)
virtual

◆ userFunction7()

virtual void tracktion::engine::CustomControlSurface::userFunction7 ( float  val,
int  param 
)
virtual

◆ userFunction8()

virtual void tracktion::engine::CustomControlSurface::userFunction8 ( float  val,
int  param 
)
virtual

◆ userFunction9()

virtual void tracktion::engine::CustomControlSurface::userFunction9 ( float  val,
int  param 
)
virtual

◆ userFunction10()

virtual void tracktion::engine::CustomControlSurface::userFunction10 ( float  val,
int  param 
)
virtual

◆ userFunction11()

virtual void tracktion::engine::CustomControlSurface::userFunction11 ( float  val,
int  param 
)
virtual

◆ userFunction12()

virtual void tracktion::engine::CustomControlSurface::userFunction12 ( float  val,
int  param 
)
virtual

◆ userFunction13()

virtual void tracktion::engine::CustomControlSurface::userFunction13 ( float  val,
int  param 
)
virtual

◆ userFunction14()

virtual void tracktion::engine::CustomControlSurface::userFunction14 ( float  val,
int  param 
)
virtual

◆ userFunction15()

virtual void tracktion::engine::CustomControlSurface::userFunction15 ( float  val,
int  param 
)
virtual

◆ userFunction16()

virtual void tracktion::engine::CustomControlSurface::userFunction16 ( float  val,
int  param 
)
virtual

◆ userFunction17()

virtual void tracktion::engine::CustomControlSurface::userFunction17 ( float  val,
int  param 
)
virtual

◆ userFunction18()

virtual void tracktion::engine::CustomControlSurface::userFunction18 ( float  val,
int  param 
)
virtual

◆ userFunction19()

virtual void tracktion::engine::CustomControlSurface::userFunction19 ( float  val,
int  param 
)
virtual

◆ userFunction20()

virtual void tracktion::engine::CustomControlSurface::userFunction20 ( float  val,
int  param 
)
virtual

◆ null()

void tracktion::engine::CustomControlSurface::null ( float  ,
int   
)

◆ loadFunctions()

virtual void tracktion::engine::CustomControlSurface::loadFunctions ( )
virtual

◆ createXml()

virtual juce::XmlElement* tracktion::engine::CustomControlSurface::createXml ( )
virtual

◆ importSettings() [1/2]

virtual void tracktion::engine::CustomControlSurface::importSettings ( const juce::File &  )
virtual

◆ importSettings() [2/2]

virtual void tracktion::engine::CustomControlSurface::importSettings ( const juce::String &  )
virtual

◆ exportSettings()

virtual void tracktion::engine::CustomControlSurface::exportSettings ( const juce::File &  )
virtual

◆ getPacketsIn()

int tracktion::engine::CustomControlSurface::getPacketsIn ( )

◆ getPacketsOut()

int tracktion::engine::CustomControlSurface::getPacketsOut ( )

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