Brought plugin automation into the fold of new automation system.
Fixed plugin automation, broke panner automation :] (pending Panner work).
Made AutomationController better at automatically following it's controller value (mimic what gain meter does).
Fixed some visible automation track bugs (but still broken WRT serialization).
git-svn-id: svn://localhost/ardour2/trunk@2092 d708f5d6-7413-0410-9779-e7cbd77b26cf
Use uint32_t instead of size_t counts (halves size of ChanCount on 64-bit).
Shift DataType values down to eliminate subtraction every index of a ChanCount or *Set.
Allow using DataType directly as an array index (prettier/terser).
Fix some mixed spaces/tabs in file comment headers.
git-svn-id: svn://localhost/ardour2/trunk@2082 d708f5d6-7413-0410-9779-e7cbd77b26cf
making automation + GUI + play/write/touch generic and easily reusable.
Added bar controller to automation track controls (mostly relevant for MIDI CC, but added for gain and pan too Just Because).
Fixed glaring "redirect" list errors.
Fix plugin controls/automation loading.
git-svn-id: svn://localhost/ardour2/trunk@2080 d708f5d6-7413-0410-9779-e7cbd77b26cf
Fix display/menu generation when adding a MIDI CC track.
Fix crash bug triggered by recording MIDI track with visible CC child track.
git-svn-id: svn://localhost/ardour2/trunk@2073 d708f5d6-7413-0410-9779-e7cbd77b26cf
Things with automation parameters now inherit from Automatable, which handles serialization, fetching/adding/removing parameters, etc.
Use AutomationList everywhere instead of Curve, make Curve a member of AutomationList instead (towards other types of "Curve" needed for CC, among other things).
Work towards MIDI CC sending "automation" tracks.
git-svn-id: svn://localhost/ardour2/trunk@2069 d708f5d6-7413-0410-9779-e7cbd77b26cf
Rename ARDOUR::config_search_path to ARDOUR::system_config_search_path
Use PBD::find_file_in_search_path in Configuration::load_state
git-svn-id: svn://localhost/ardour2/trunk@2054 d708f5d6-7413-0410-9779-e7cbd77b26cf
These two functions are for convenience and wrap the glib functions
g_get_system_data_dirs and g_get_system_config_dirs.
git-svn-id: svn://localhost/ardour2/trunk@2051 d708f5d6-7413-0410-9779-e7cbd77b26cf
This is so I can remove ARDOUR::get_user_ardour_path which is replaced by
ARDOUR::user_config_directory
git-svn-id: svn://localhost/ardour2/trunk@2050 d708f5d6-7413-0410-9779-e7cbd77b26cf
Remove Session::control_protocol_path and the supporting non-portable
Session::suffixed_search_path from Session.
Add ARDOUR::control_protocol_search_path which is used in place of
Session::control_protocol_path
Replace ARDOUR::get_system_module_path with ARDOUR::system_module_directory which
is used by ARDOUR::control_protocol_search_path
Export ARDOUR_SURFACES_PATH in gtk2_ardour/ardev_common.sh which is returned
by ARDOUR::control_protocol_search_path if defined. This means the control surfaces
in the libs/surfaces/* directories can now be used without installing them.
Add pbd/file_utils.h/cc containing functions for finding files matching a certain
pattern
Update documentation in SearchPath and add another constructor that takes
a sys::path
git-svn-id: svn://localhost/ardour2/trunk@2049 d708f5d6-7413-0410-9779-e7cbd77b26cf
Use Glib::filename_to_uri to create the src uri(which didn't look valid as it was)
git-svn-id: svn://localhost/ardour2/trunk@2046 d708f5d6-7413-0410-9779-e7cbd77b26cf
Stateful::add_instant_xml was modified so it would create the user
config directory if it doesn't exist, create_directories may throw
if it cannot be created. This isn't a change in behaviour as
ARDOUR::get_user_ardour_path also throws an exception(although I
can't see any existing code to handle it)
git-svn-id: svn://localhost/ardour2/trunk@2043 d708f5d6-7413-0410-9779-e7cbd77b26cf