diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-10-10 12:58:38 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-10-10 12:58:38 -0400 |
commit | 2308291e59f93bcf406aa78f70f22215459d0f20 (patch) | |
tree | 26766ac31f438f27cf450e0add12fee71d99ca86 /libs/ardour/ardour/audio_backend.h | |
parent | c4b20f1a20956fa0ab77f36013aceb759837ab9c (diff) |
add API to AudioBackend to allow discovery of possible MIDI I/O options
Diffstat (limited to 'libs/ardour/ardour/audio_backend.h')
-rw-r--r-- | libs/ardour/ardour/audio_backend.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/libs/ardour/ardour/audio_backend.h b/libs/ardour/ardour/audio_backend.h index 0e39625e8c..f596164de7 100644 --- a/libs/ardour/ardour/audio_backend.h +++ b/libs/ardour/ardour/audio_backend.h @@ -239,7 +239,26 @@ class AudioBackend : public PortEngine { * app is undefined or cannot be launched. */ virtual void launch_control_app () = 0; - /* Basic state control */ + + /* @return a vector of strings that describe the available + * MIDI options. + * + * These can be presented to the user to decide which + * MIDI drivers, options etc. can be used. The returned strings + * should be thought of as the key to a map of possible + * approaches to handling MIDI within the backend. Ensure that + * the strings will make sense to the user. + */ + virtual std::vector<std::string> enumerate_midi_options () const = 0; + + /* Request the use of the MIDI option named @param option, which + * should be one of the strings returned by enumerate_midi_options() + * + * @return zero if successful, non-zero otherwise + */ + virtual int set_midi_option (const std::string& option) = 0; + + /* State Control */ /** Start using the device named in the most recent call * to set_device(), with the parameters set by various |