summaryrefslogtreecommitdiff
path: root/libs/ardour/automatable.cc
AgeCommit message (Collapse)Author
2016-08-19MIDI polyphonic pressure, part 2Paul Davis
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-06-28ignore automation for non-automatables.Robin Gareus
Since 4.7-1477-g2c6d595 Ardour implements Control::NotAutomatable. This can lead to situations where automation exists for parameters that were not supposed to be automatable, which in turn caused a "programming-error" abort() in RouteTimeAxisView::add_processor_automation_curve()
2016-05-31implementation side of Controllable::get_user_string() with const argPaul Davis
2016-05-31extend function of Automatable::control_factory() [ this may be the wrong ↵Paul Davis
design ... review coming ]
2016-05-31do not non-automable controls to an Automatable's list of what can be automatedPaul Davis
2016-05-04OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)Paul Davis
2016-01-18move Amp::GainControl out into its own source module and out of AmpPaul Davis
2016-01-18change ownership of the AutomationControl used by Amp.Paul Davis
It used to be owned by Amp. Now it is owned by Amp's owner
2015-11-02Clean up _before XMLNode in AutomationList if no automation write occurred.nick_m
2015-11-01Revert starting write pass only in write mode when transport located.nick_m
2015-10-21fix automation update at transport stop when in automation Play modePaul Davis
2015-10-20Automation - more toggled controller twiddling.nick_m
2015-10-20Automation - fix occasional inverted bool state after write.nick_m
2015-10-20Make automation record undo per pass rather than per touch.nick_m
2015-10-07only subdivide plugin-cycle when automation is playingRobin Gareus
PluginInsert::automation_run() subdivides plugin-run on every control-port automation event (without splitting the process cycle). libevoral has no automation-control context, hence this function must be implemented by Automatable.
2015-10-05use quotes for in-tree pbd/glib wrapper includeRobin Gareus
2015-10-05remove i/ofstream from libardourRobin Gareus
except: * audio-unit (ifstream is known to work on OSX) * evoral curve algorithm debugger * cycle-timer debug code * export_handler's CDMarker -> TODO
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-05-04add signal for automation state changes per pluginRobin Gareus
2015-04-25prepare trim automationRobin Gareus
2015-03-08Fix compilation with --no-lv2 (#0006169).David Robillard
Not that I condone such backwards behaviour. (Different issue in the ticket, but it was still broken at link time).
2014-12-24Remove warning when adding MIDI model controls.David Robillard
This is fine, unlike the other cases, MidiTrack is not the only thing that can have a MIDI automation control.
2014-12-01Replace half-baked param metadata with descriptor.David Robillard
Among other things, this means that automation controls/lists have the actual min/max/normal/toggled of parameters, and not those inferred from the Parameter ID, which is not correct for things like plugin parameters. Pushing things down to the Evoral::ParmeterDescriptor may be useful in the future to have lists do smarter things based on parameter range, but currently I have just pushed down the above-mentioned currently used attributes.
2014-11-30Replace thinning static state with parameter.David Robillard
2014-11-07Just rename problematic Variant::VOID type.David Robillard
2014-11-02Display gain and midiNote plugin parameters/properties nicely.David Robillard
Show fancy values on generic GUI controls, automation lane controls, and automation lane verbose cursor. Fix text display of midiNote values. Make bigstep of midiNote parameters 12 (one octave). Add ARDOUR::value_as_string() as a stateless one-stop-shop for value printing.
2014-11-02Automation of LV2 plugin properties.David Robillard
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-08-31Fix crash when changing automation mode for MIDI track control automation.David Robillard
Also some work towards tolerating automation controls with no automation list, towards actually doing something for these cases, though not required just to fix this crash (MidiTrack::set_parameter_automation_state() avoids those paths).
2014-07-01add partial support for mute automation (playback does not work, data is not ↵Paul Davis
recorded in the session)
2013-01-20Show matching controller name in automation lane header.David Robillard
Completely eliminate static MIDI controller name code. Reduce dependency on midnam_patch.h (which would have saved me several hours if I did it earlier). Store controller name numbers as an integer. Keep controller names in a map keyed by int instead of a list for fast lookup. More cleanup of MIDI::Name code. git-svn-id: svn://localhost/ardour2/branches/3.0@13927 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-19remove unused Automatable::automation_interval and related codePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13534 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-13dramatic overhaul of automation. too long to explain here. this work is not ↵Paul Davis
finished - write/touch passes do not correctly overwrite existing data because the semantics of ControlList::insert_iterator need clarification. more to follow git-svn-id: svn://localhost/ardour2/branches/3.0@13038 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11major, substantive reworking of how we store GUI information (visibility, ↵Paul Davis
height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-09fix serious breakage with setup of plugin automatable controls/parameters, ↵Paul Davis
in which the relative ordering of things during ::set_state() was totally wrong. still see multiple instances of automation tracks for processors in GUI git-svn-id: svn://localhost/ardour2/branches/3.0@9698 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-04-20Fix an assertion failure when stopping the transport with an active ↵Carl Hetherington
controllable touch gesture. git-svn-id: svn://localhost/ardour2/branches/3.0@9389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02Number CC automation tracks from 0 rather than 1 (#3814)Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@9032 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27virtualize the way that AutomationController gets strings to display values, ↵Paul Davis
so that we can callback through the owner of an AutomationControl, not just rely on the value from the AutomationControl; make pan automation tracks use this to display more audio-centric values git-svn-id: svn://localhost/ardour2/branches/3.0@8590 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27merge 3.0-panexp (pan experiments) branch, revisions 8534-8585 into 3.0, ↵Paul Davis
thus ending 3.0-panexp. THIS COMMIT WILL BREAK ALL EXISTING 3.0 SESSIONS IN SOME WAY (possibly not fatally). git-svn-id: svn://localhost/ardour2/branches/3.0@8586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-11Reset PanControllable StreamPanners when they change.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8243 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-28more or less complete restoration of Controllable::_id from XML, with all ↵Paul Davis
that implies for MIDI bindings continuing to work across session reloads, and also that the controlled parameter is now set from Controllable::set_value() during session loading, not directly from its "own" XML value; still some funny stuff going on with Panners. This may have broken 2.X session loading in that panners may not be setup correctly git-svn-id: svn://localhost/ardour2/branches/3.0@8117 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-18Fix save/reload of pan automation.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-24fix load+save of plugin parameter automationPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@7678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-19forward port automation handling changes from 2.x, upto and including about ↵Paul Davis
rev 6981 (will need full testing in the 3.X context). as on 2.x, this removes real-time visual updates to automation curves during write/touch automation recording git-svn-id: svn://localhost/ardour2/branches/3.0@7653 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-17forward port 2.X changes up to and including rev 6909Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@7639 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-09Fix save/load of MIDI automation state. Fixes #3354.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7578 d708f5d6-7413-0410-9779-e7cbd77b26cf