summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/plugin.h
AgeCommit message (Collapse)Author
2015-12-25Keep plugin presets in sync across plugin-instances.Robin Gareus
2015-12-25don't assume plugin presets start their numbering at zero.Robin Gareus
2015-12-25add a PluginPreset struct: combined plugin-info + preset-recordRobin Gareus
...in preparation to allow adding presets directly.
2015-12-18save/restore plugin state with track-templateRobin Gareus
2015-11-18add dedicated API to check plugin classRobin Gareus
2015-10-20rename Plugin::ParameterChanged to ParameterChangedExternally to reflect its ↵Paul Davis
intent, and clean up the libardour side of result. The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST) has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics.
2015-10-20Revert "rename ParameterChanged signal in Plugin to ↵Paul Davis
ParameterChangedExternally to reflect its intent, and clean up the result." This reverts commit 336b2eb9a4a8634bae84a15e952d20335aa28c12.
2015-10-20rename ParameterChanged signal in Plugin to ParameterChangedExternally to ↵Paul Davis
reflect its intent, and clean up the result. The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST) has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics. Significant modification of LV2 GUI updating was required. Still to be tested for feedback loop issues: AudioUnits
2015-10-14Fix a problem where VST automation data wasn't getting written (if the ↵4.3John Emmas
adjustments were made from the plugin's own controls)
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2014-12-30Fix some mangled whitespace (noop).David Robillard
2014-11-03Reduce coupling between Plugin and PluginInsert.David Robillard
2014-11-02Automation of LV2 plugin properties.David Robillard
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-11-02Move ParameterDescriptor from Plugin to its own header.David Robillard
This fixes circular dependency issues that arise when using ParameterDescriptor more widely.
2014-11-02Decouple ControlUI from port index.David Robillard
2014-10-31More generic RT-safe implementation of LV2 properties.David Robillard
2014-10-22remove obsolete jack includes in libardourRobin Gareus
2013-12-03fix up wscript/build issues in exportvis after merge with masterPaul Davis
2013-10-23initialize plugin param descriptor structRobin Gareus
2013-10-22honor LV2 units:midiNote: display Note name instead of integer3.5.14Robin Gareus
2013-10-17add export visibility macros across libardourPaul Davis
2013-08-02rework MIDI [processor|plugin] chainRobin Gareus
* forward midi-data around plugins that have no MIDI-out * allow to insert plugins with no MIDI-input at a point with one MIDI-channel This works because excess ports (both plugin and route) remain unconnected and use scratch-buffers. Tested with LV2, LXVST and LADSPA. (AU plugins with variable in/out retain the old behavior, no bypass) fixes http://tracker.ardour.org/view.php?id=5630
2012-07-11add StartTouch and EndTouch signals to Plugin class; make PluginInsert ↵Paul Davis
handle these signals and mark the start end of touch/gestures for a given AutomationControl; net result is that touch automation now works for AudioUnit plugins, at least those whose GUIs send kAudioUnitEvent_{Begin,End}ParameterGesture events git-svn-id: svn://localhost/ardour2/branches/3.0@13028 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-19patch from colinf that adds an 'empty' preset to the preset drop-down list, ↵Paul Davis
so that plugins can be set back to the 'no preset' state rather than being stuck in the state of 'preset loaded and modified'. This should apply to all plugin types, though I've only tried it on LV2 and LADSPA. git-svn-id: svn://localhost/ardour2/branches/3.0@12787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13flip default value of Plugin::presets_are_MIDI_programs and ↵Paul Davis
Plugin::current_preset_uses_general_midi git-svn-id: svn://localhost/ardour2/branches/3.0@12697 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11lots more work trying to create a common structure for accessing plugin and ↵Paul Davis
MIDNAME patch/preset/program names. still not done git-svn-id: svn://localhost/ardour2/branches/3.0@12665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-07move ::reconfigurable_io() from Plugin to PluginInfo so that the GUI can ↵Paul Davis
offer correct information without having ccess to a Plugin instance git-svn-id: svn://localhost/ardour2/branches/3.0@12200 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-02more fixes/tweaks from the land of the lionPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@12150 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-20Add "Description" pane to generic plugin UI for LV2 plugins with ↵David Robillard
documentation (rdfs:comment property). A Gtk::Entry might be better here, making Gtk::Label wrap based on size is tedious... git-svn-id: svn://localhost/ardour2/branches/3.0@12043 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-20Set tooltips on generic UI controls for LV2 plugin controls with ↵David Robillard
documentation (rdfs:comment property). git-svn-id: svn://localhost/ardour2/branches/3.0@12042 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-21Use combo box for plugin controls for ports marked asCarl Hetherington
lv2:enumeration. git-svn-id: svn://localhost/ardour2/branches/3.0@11745 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02add virtual method is_instrument() to PluginInfo (already existed for ↵Paul Davis
AUPluginInfo) and use to determine if plugin is an instrument for the purposes of AddRouteDialog, since the rules are plugin-type specific git-svn-id: svn://localhost/ardour2/branches/3.0@11426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26a grab bag of changes correcting and improving the way MIDI note on/off ↵Paul Davis
tracking is done. may/should fix a number of problem with spurious note-offs under a variety of circumstances git-svn-id: svn://localhost/ardour2/branches/3.0@11074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18changes for OS X support: change waf config define to COREAUDIO_SUPPORT, ↵Paul Davis
remove PluginInsert call to IO::PortCountChanged, remove use of explicit Carbon linkage, fix up AudioUnit internals to actually work (Cocoa GUIs still currently broken) git-svn-id: svn://localhost/ardour2/branches/3.0@10224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30fixes for 98% of all the warnings/errors reported by OS X gcc on tigerPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01Fix broken whitespace. I'd apologize for the compile times if it was my ↵David Robillard
fault :D git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-14Generic scale points API.David Robillard
Hide scale points implementation inside specific Plugin subclass. Don't needlessley/slowly get scale points twice for each port while building UI. Remove dependence on specific plugin types from GenericPluginUI. git-svn-id: svn://localhost/ardour2/branches/3.0@9511 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-05remove unused arguments to keep gcc quietPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@9291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-03Implement LV2 files extension.David Robillard
This extension works with the persist extension to allow plugins to save references to files in their state, but still allow the host (e.g. Ardour) to control where files are located, making it possible to do a deep export of a session with all files (e.g. loaded sampler banks) included. Tested working with a patched version of LinuxSampler... TODO: Make symlinks in the plugin state directory rather than refer to absolute file paths in state files (i.e. support session export, either by ardour or any other tool, in particular the Jack session manager...) git-svn-id: svn://localhost/ardour2/branches/3.0@9272 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-15Clean up and hopefully fix handling of logarithmic plugin parameters (fixes ↵Carl Hetherington
#3769). git-svn-id: svn://localhost/ardour2/branches/3.0@8850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-19Clean up plugin preset handling a bit.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07Add scrollbar to edit presets dialogue, and the ability to differentiate ↵Carl Hetherington
between built-in and user presets. git-svn-id: svn://localhost/ardour2/branches/3.0@8215 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07Put plugin-note-off code in the right place.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8207 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07Send note-offs to VST instrument plugins on transport stop. Fixes #3583.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07Move RDF-based preset stuff into LadspaPlugin, to make way for a set of evil ↵Carl Hetherington
hacks to make VST chunk-based presets work (for some values of `work'). May fix #3577. git-svn-id: svn://localhost/ardour2/branches/3.0@8202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-06Add dialog to allow removal of plugin presets. Should fix #2662.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-06Manage attempts to save plugin presets with the same name. Helps with #2662.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03Remove all use of nframes_t.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13make ardour3 build and link on OS X (tiger, at least)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf