|
VST 3 Interfaces VST 3.8
SDK for developing VST plug-in
|
Vst::ITransportControl Interface. More...
#include <ivsttransportcontrol.h>
Inheritance diagram for ITransportControl:Public Types | |
| enum | Action : int32 { Locate = 0 , PlaybackStart , PlaybackStop , LocateAndPlaybackStart , PlaybackStopAndLocate , RecordOnPlaybackStart , LocateAndRecordOnPlaybackStart , RecordOff , RecordOffPlaybackStop , RecordOffPlaybackStopAndLocate , SetCycleStart , SetCycleEnd , CycleOn , CycleOff } |
| Transport action requested by the plug-in. More... | |
Public Member Functions | |
| virtual tresult | requestAction (int32 action, TransportPosition *position=nullptr)=0 |
| Request a transport action from the host. | |
| virtual tresult | isActionSupported (int32 action)=0 |
| Query whether the host supports the given action. | |
Public Member Functions inherited from FUnknown | |
| virtual tresult | queryInterface (const TUID _iid, void **obj)=0 |
| virtual uint32 | addRef ()=0 |
| virtual uint32 | release ()=0 |
Static Public Attributes | |
| static const FUID | iid |
Static Public Attributes inherited from FUnknown | |
| static const FUID | iid |
Vst::ITransportControl Interface.
This interface allows a plug-in to request transport-related actions from the host. Typical use cases include:
All calls must be made from the UI thread. Hosts may accept or deny requests depending on their internal policies or the current editing mode (e.g., offline rendering, write-protected state, etc.).
Transport action requested by the plug-in.
| Enumerator | |
|---|---|
| Locate | Locate transport to a new position. Requires a valid TransportPosition. |
| PlaybackStart | Playback control. Start playback at current position |
| PlaybackStop | Stop playback, keep current position. |
| LocateAndPlaybackStart | Locate and start playback (position required) |
| PlaybackStopAndLocate | Stop and locate (position required) |
| RecordOnPlaybackStart | Recording control. Start recording and playback at current position |
| LocateAndRecordOnPlaybackStart | Locate and start recording and playback (position required) |
| RecordOff | Stop recording and continue playback. |
| RecordOffPlaybackStop | Stop recording and playback, keep current position. |
| RecordOffPlaybackStopAndLocate | Stop recording and playback and locate (position required) |
| SetCycleStart | Cycle / Loop control. Set start of cycle/loop region (position required) |
| SetCycleEnd | Set end of cycle/loop region (position required) |
| CycleOn | Enable looping/cycle mode. |
| CycleOff | Disable looping/cycle mode. |
|
pure virtual |
Request a transport action from the host.
The host may accept the request or refuse it based on its current state (editing mode, user preferences, restricted transport control policies).
| action | The action to perform. |
| position | Optional pointer to a TransportPosition. Required for locate or cycle-related actions. |
Query whether the host supports the given action.
This is useful for updating plug-in UI elements (enabling or disabling buttons).
| action | The action to test. |
|
static |