Commit graph

574 commits

Author SHA1 Message Date
Paul Davis
b0e4f81eb3 merge exportvis branch into cairocanvas, to reduce the number of "floating" branches.
Still need to add API export/visibility macros for the canvas library.
2013-12-27 14:29:06 -05:00
Paul Davis
84f55440a3 fix redrawing of canvas with an optimized build
Best guess right now is that optimization does something bad when ceil() is called twice on a very large dbl-precision number,
which results in a zero (empty) redraw area. Without the removal of the redundant ceil & floor functions, no expose events
would be delivered to the canvas in an optimized build during drags (and maybe more).
2013-12-23 15:35:49 -05:00
Paul Davis
2065a2a2ac fix up OSC support to conform to new CP API and pay attention to feedback setting, even though feedback does nothing right now 2013-12-21 15:31:28 -05:00
Paul Davis
e9c47051f7 conform to new CP API 2013-12-21 15:31:28 -05:00
Paul Davis
91e2b5f88a conform to new CP API 2013-12-21 15:31:28 -05:00
Paul Davis
362769e967 new CP API and fix several egregious bugs with port handling when switching devices, setting state etc. 2013-12-21 15:31:28 -05:00
Paul Davis
644ead06b4 remove debug output 2013-12-21 15:31:28 -05:00
Paul Davis
5ebc8de6cc conform to new CP API design 2013-12-21 15:31:28 -05:00
Paul Davis
ea5fde0787 conform to new CP API design 2013-12-21 15:31:28 -05:00
Paul Davis
b0a10da783 clean up aspects of ControlProtocol API 2013-12-21 15:31:28 -05:00
Paul Davis
8a005319b8 clean up aspects of ControlProtocol API 2013-12-21 15:31:28 -05:00
Paul Davis
f6c9fa4d89 fix a crash caused by not checking if MackieControlProtocol::_surfaces_state exists
I forgot to add this check when i changed the member variable to a pointer.
2013-12-14 11:10:54 -05:00
Paul Davis
afabc09fbf change Generic MIDI control so that it handles a SendFeedback request synchronously within a process callback 2013-12-13 16:56:34 -05:00
Paul Davis
85cd647226 Mackie Control support now saves & restores port connections for devices not using ipMIDI (not required for ipMIDI anyway) 2013-12-13 16:04:34 -05:00
Paul Davis
a17bafa964 remove some unused code from mackie support 2013-12-13 16:04:34 -05:00
Tim Mayberry
3a885d6177 Only use __declspec(dllimport/dllexport) for MSVC compiler
Use the gcc visibility attributes when building with the MinGW compiler(gcc).
GCC also supports the __declspec syntax but it will not compile at the moment
until the issues(which may not even be exactly the same issues as with MSVC)
are resolved.
2013-12-05 21:11:18 +10:00
Paul Davis
f85c67501c reverse the visibility.h files assumptions that we don't build shared libs by default
This avoids having to define define LIBFOO_DLL=1 all over the place. If we ever go with static libs we will
need to define LIBFOO_STATIC=1 but hopefully in some central location like the top level wscript.

Oh, and I also dropped support for gcc older than version 4.x because ardour will already not build
on such an old version.
2013-10-18 11:50:44 -04:00
Paul Davis
683496c501 use libltc and libtimecode as static libs, and upgrade to waf 1.7
This is slightly awkward. It is important that we only link once to the static lib. Doing this at executable link time did not
work, possibly because waf insisted on putting the two static libraries at the front of the link list. So instead libardour
is now the point where linkage to these libraries occurs (and nowhere else). This should never be changed unless the change
just moves the linkage point to another location.

Also fix a bug with the libardour version tha was picked up by waf 1.7
2013-10-18 11:11:59 -04:00
Paul Davis
5b2a5d77b8 add -fvisibility=hidden to libardour_cp (control protocol) 2013-10-17 15:09:28 -04:00
Paul Davis
61c1956ef9 add -fvisibility=hidden to evoral, and make things work 2013-10-17 15:02:20 -04:00
Paul Davis
2fab8182cc add -fvisibility=hidden to libgtkmm2ext, and make things work 2013-10-17 14:36:41 -04:00
Paul Davis
98c93ee53e tweak up DLL=1 defs for control surfaces 2013-10-17 13:30:18 -04:00
Paul Davis
5896d773e4 add export control to control protocol library 2013-10-17 13:15:24 -04:00
Paul Davis
e5888d3983 merge with master and fix 2 conflicts 2013-10-16 22:06:56 -04:00
Paul Davis
58e8f43052 reduce default height of mackie control GUI, as per #5713 2013-10-15 13:28:01 -04:00
Paul Davis
f6ba1d2271 fix signed/unsigned issue pointed out by old apple gcc 2013-10-15 10:58:46 -04:00
Paul Davis
5e0e41e068 Merge branch 'master' into cairocanvas 2013-09-16 22:11:50 -04:00
Paul Davis
7cc451d81d fix language issue 2013-09-16 10:07:52 -04:00
Paul Davis
7c8f3adc75 allow waf to handle inconsistent case where cwiid.h is present but not the pkg-config file 2013-09-16 10:07:27 -04:00
Paul Davis
7a30e63eaa fix merge conflicts with master 2013-09-14 16:42:40 -04:00
Paul Davis
79fed95c1b tighten up error handling a little bit during various setup functions for Mackie Control 2013-09-06 10:39:14 -04:00
Paul Davis
1c49138e00 move MidiPortManager from AudioEngine to Session
This makes the responsibilities and ownership of non-Route related MIDI ports
more clear, and removes a few wierd bits of code. It also ensures that open/close/open
on the same session will retain connections for those MIDI ports
2013-09-05 13:22:34 -04:00
Paul Davis
d074bc586e Merge branch 'master' into audioengine 2013-09-03 17:41:49 -04:00
Paul Davis
9261d5908d fix error introduced during recent changes to Mackie control support, involving ambiguous enum usage 2013-09-03 08:48:11 -04:00
Paul Davis
41f6f5574b fix confusion about whether flip_mode in the Mackie support code is a bool or an enum 2013-08-24 11:46:44 -04:00
Paul Davis
e711dfae12 remove misleading + incorrect documentation 2013-08-14 12:44:59 -04:00
Robin Gareus
59a3b797d7 fix compiler warnings. 2013-08-08 15:26:16 -04:00
Paul Davis
b5da0c852f Revert "C++11 Building - Use new style struct field inititializing" (this code
change breaks gcc on several platforms).

This reverts commit bf153e58a5.
2013-08-08 15:23:10 -04:00
Michael R. Fisher
0c23314e3f C++11 Building - Use new style struct field inititializing
- clang with std=c++11 enabled was failing here
2013-08-08 15:23:09 -04:00
Paul Davis
1ab61b8564 major redesign of MIDI port heirarchy and management (part 2) 2013-08-07 22:22:11 -04:00
Paul Davis
616f2a0370 fix conflicts after merge with master 2013-08-05 14:22:32 -04:00
Robin Gareus
cd28d62b26 fix compiler warnings. 2013-07-28 20:32:52 +02:00
Paul Davis
9ac6bb9bef part-way through getting the audioengine changes to compile 2013-07-24 19:29:45 -04:00
Paul Davis
1b97f147eb Revert "C++11 Building - Use new style struct field inititializing" (this code
change breaks gcc on several platforms).

This reverts commit bf153e58a5.
2013-07-16 14:52:52 -04:00
Michael R. Fisher
bf153e58a5 C++11 Building - Use new style struct field inititializing
- clang with std=c++11 enabled was failing here
2013-07-15 22:57:34 -05:00
Paul Davis
f00b3b7f11 merge with master 2013-06-13 23:00:24 -04:00
Paul Davis
298da23619 save and restore Generic MIDI threshold/smoothing value 2013-06-10 12:37:09 -04:00
Robin Gareus
4cb31ef74e Revert all close-on-exec changes from earlier today
with b26cc125 these are no longer needed.
2013-06-07 21:07:41 +02:00
Paul Davis
31d234b48c Merge branch 'master' into cairocanvas 2013-06-07 13:18:48 -04:00
Robin Gareus
bdf91de8b7 more OSC socket fcntl() close-on-exec 2013-06-07 18:02:47 +02:00