Carl Hetherington
e09e185e3e
Add what I think is a missing lock when reading controllables.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 15:37:54 +00:00
1708ab55b9
fix MIDI binding stuff when the controllable does actually exist the first time we go looking for it ( #4950 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12957 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-28 14:44:29 +00:00
dde521f2c6
fix up some issues introduced by lifecycle tracking of Controllable in Generic MIDI control code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-26 19:10:11 +00:00
92469df6ab
add late/lazy binding between generic MIDI bindings and controllable elements in the session. this allows you to load a binding map that refers to elements that have not yet been created in the session, and when they are created, the binding will work
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12921 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:33:13 +00:00
4522ef26a2
Use Glib instead of pbd/filesystem.h in GenericMidiControlProtocol
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:42 +00:00
bc205191bf
Use Glib::file_test instead of PBD::sys::exists
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:09:02 +00:00
105caf23da
Use std::string instead of PBD::sys::path in pbd/search_path.h, pbd/file_utils.h and ardour/session_dir.h
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23 05:06:54 +00:00
Carl Hetherington
3dd8fbdefa
Hush some debug messages.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-19 13:28:13 +00:00
Carl Hetherington
72642335d1
Slightly tweaked patch from royvegard to add optional threshold for catch-up of non motorised controls in generic MIDI surfaces ( #4828 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12716 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 21:53:50 +00:00
813c5f0af9
major rationalization of use of search paths. ardour now has just 4 functions used to define how external resources are located: ardour_config_search_path() (for system or user specific configuration data), ardour_data_search_path() (for machine, user and system independent data), ardour_dll_directory() (base directory where shared libraries are found) and user_config_directory(). These are now used throughout the code. the config, data and dll paths/directories can be overridden by environment variables. the user config dir is added as the first element of the first two search paths, and use selectively when searching for a few other things.
...
This commit re-enabes ./waf install, and it is believed that it works fully at this point (more testing likely required)
git-svn-id: svn://localhost/ardour2/branches/3.0@12326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-18 17:24:06 +00:00
ec1ef5d6b5
remove the apparently unnecessary "ui_bind()" macro from entire source base
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12088 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-25 12:58:19 +00:00
72678cc230
revert previous commit (it should work, but did not); minor tweaks elsewhere
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 20:27:13 +00:00
2171bba037
make generic MIDI support handle SendFeedback() in process()-context, not in the MIDIControlUI event loop
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12083 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 19:25:57 +00:00
4e9173ff62
likely fix for various odd problems with cross-thread callbacks
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-24 19:19:39 +00:00
4bfdcc18bd
ControlProtocol doesn't actually need any record of an event loop and doesn't need to connect to any signals itself
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12063 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-23 10:54:34 +00:00
Carl Hetherington
8063027507
Add set_motorised().
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11728 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-19 01:34:35 +00:00
Carl Hetherington
fb6895ba86
Add motorised attribute to DeviceInfo for generic MIDI maps so that
...
we can specify if a surface is motorised, and as such will keep its
phyiscal controls in sync with Ardour's controllables at all times.
If this is not the case, we enable the code to avoid jumps when controls and
controllables are out of sync. Mark the BCF2000 as motorised.
git-svn-id: svn://localhost/ardour2/branches/3.0@11611 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 01:11:22 +00:00
Carl Hetherington
fe86f97563
Work around problems with some JACK<->ALSA midi bridges which don't
...
transfer multiple MIDI messages when they are written in one
jack_midi_event_write. Support pitch bend messages in the
generic midi control surface code.
git-svn-id: svn://localhost/ardour2/branches/3.0@11601 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-06 15:08:17 +00:00
ae5f278202
make control protocol's SelectByRID signal work, thus enabling MIDI binding maps to use function="select" with an argument; fix minor bug in previous commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-14 17:11:33 +00:00
f75bbfd8ac
track changes to config parameters for MMC device id's correctly (from roy vegard)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9985 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-13 16:27:29 +00:00
0a07cca64c
if a binding map specifies controllables that don't exist in the session, drop those bindings so that we don't crash from having bindings without controllables (should fix #4256 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-10 15:57:03 +00:00
4ef712df25
permit envvar to define where to find MIDI binding maps (for bundle, or other reasons)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-25 21:21:05 +00:00
665f3bea5a
fix all manner of wrongness with port buffer offsets
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-07 19:06:42 +00:00
7cbcf258cc
changes associated with save/restore of AutomationControl id's
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8111 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27 17:43:32 +00:00
b85b4d9e54
make ardour3 build and link on OS X (tiger, at least)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
Carl Hetherington
648a169d8f
Move MIDI control port ownership into the MIDI Manager, since control port state should be Ardour-wide, not per-session. Fix up port connection state management.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7394 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-08 22:55:20 +00:00
Carl Hetherington
ea23298f10
Setup fixed ports for MIDI control data; hence remove configuration of those ports. Move MIDI tracer to the Windows menu. Trim some unused code from the midi++ Manager.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7384 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-07 00:40:58 +00:00
77c09fc824
add support for "msg=" bindings and also action="SomeGroup/Action"
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-08 21:05:55 +00:00
14b0ca31bc
handle deletion of UI objects between the time that a callback is queued with the UI event loop and the execution of the callback (intrusive, big)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6807 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-30 15:18:43 +00:00
ac5bbf4b99
use correct (RCConfig-based) name for MIDI port in generic MIDI control stuff; make monitor section track configuration params that apply to it; add use-monitor-bus option to rc option editor
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-25 16:03:31 +00:00
2196bb614e
Fix illegal iterator usage.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6613 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-01 20:03:25 +00:00
11792ed95d
provide a real and usable MuteControllable for Routes (so that MIDI can use it)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6445 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-04 18:15:29 +00:00
6ddcd8f0b9
add a way to see (most of) the waf config used to build ardour at run time (from the about dialog). buttons still need reordering there
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6439 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-04 02:04:05 +00:00
6572f421a4
provide limited momentary note on/off MIDI binding option; remove some debugging output; add bank selector to generic MIDI UI
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01 18:14:32 +00:00
6c717a56e2
new PBD::ControllableDescriptor class to encapsulate parsing of binding URIs and speed up lookup at runtime
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6427 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 23:43:47 +00:00
74933f5865
restore excess calls to sync-order stuff (for now); allow MIDI controllers to use the same non-linear fader response as the gui; add various flags to PBD::Controllable and remove URI from that class
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 16:48:58 +00:00
8a17b0fb90
make generic MIDI control track remote control ID changes; fixup messes in the editor+mixer that caused excessive calls to SyncOrderKey stuff. generic MIDI still doesn't track editor/mixer order changes if we're not syncing both windows
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6413 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 12:41:10 +00:00
77cc0f7cc8
editors for control protocols (generalized); editor for Generic MIDI that allows choosing a MIDI binding map (or none); support banking in binding URLs, and other miscellany related to generic MIDI; save+restore JACK_MidiPort connection state (but cause a crash at shutdown time)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-29 21:31:14 +00:00
e10d0339cc
add sysex support to MIDI binding maps, and a couple more functions
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6410 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 23:55:33 +00:00
109acd1568
MIDI binding maps make their debut
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 16:49:44 +00:00
f450df300c
fully implement and deploy explicit x-thread signal connection syntax (testing comes next)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21 18:23:07 +00:00
738387f9a4
remove a couple of boost::signals2 trouble spots; fix some --strict compile time warnings
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:50:41 +00:00
aae367b63c
use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +00:00
f6fdd8dcbf
switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
53bbac4eb6
fix compilation breakages from the last commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 03:18:17 +00:00
c83e48e07a
Trim session.h include dependency tree.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5979 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-30 15:30:22 +00:00
e5258d4ed1
Fix angle bracket project-local include paths.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5975 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-30 00:21:40 +00:00
8713667ec1
rework Stateful::set_state() patch to avoid default version argument
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 18:56:11 +00:00
Carl Hetherington
79f91c7a20
Part 1 of loading 2.X sessions; some things work, some things don't, hacks a-plenty.
...
LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE,
MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION.
So don't do that unless you make a backup of the session file first.
git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 00:57:55 +00:00
Carl Hetherington
b65f8073ba
Fix some unused parameter warnings.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 15:55:17 +00:00