Commit graph

1002 commits

Author SHA1 Message Date
Robin Gareus
4561788777 fix optimized build 2016-03-19 17:14:23 +01:00
Robin Gareus
2288e04a5b suppress realloc-poll debug messages in optimized builds 2016-03-19 10:51:15 +01:00
Paul Davis
591f92e531 add new Controllable::GroupDisposition value, ForGroup, to identify changes being made *for* a RouteGroup 2016-03-14 10:41:33 -04:00
Florian Weimer
5a41b86028 fix __cpuid() on x86
The previous version used memory operands that gcc (probably dependent
on optimization flags and/or version) could address relative to the
stack pointer, but pushing %ebx onto the stack changed it. Here, the
address of the regs array is put into %esi and the individual members
are written into directly.
2016-03-08 14:54:41 +01:00
Robin Gareus
3dc09d42ab allow to override FPU detection 2016-03-04 18:05:47 +01:00
John Emmas
22ed6fb1f7 Accommodate newly introduced source(s) in our MSVC project (libpbd) 2016-02-27 16:29:52 +00:00
Robin Gareus
0e36f8e2d7 missing include for rand() in self-tests 2016-02-23 22:55:17 +01:00
Robin Gareus
f2afb95c5d add realloc pool to MSVC project 2016-02-22 22:06:47 +01:00
Robin Gareus
3c87629c7e realloc-pool unit-test 2016-02-22 22:06:47 +01:00
Robin Gareus
6cf5e989c0 time-bound memory-pool
O(1) realloc() for use with Lua.
A standard malloc/free/realloc API is exposed for testing and other
potential use-cases.

The current configuration it's performs well for lua-metatables
(regular calls to realloc() with varying tiny chunks ~1-50 bytes)
For the use-case at hand it outperforms TLSF.
2016-02-22 22:06:47 +01:00
Paul Davis
e9234c856a add syntax and scaffolding for MIDI binding maps to refer to selected tracks/busses.
THIS DOES NOT WORK YET. Selection information is not available in libardour at this time
2016-02-22 15:31:25 -05:00
Adrian Knoth
6fa88273aa Spelling correction patch from Debian
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch>
2016-02-22 15:13:01 -05:00
Robin Gareus
ec708926fa now with return value 2016-02-17 17:03:14 +01:00
Robin Gareus
5e50a7d6cf allot to open OSX Finder with arbitrary paths 2016-02-17 16:29:25 +01:00
Robin Gareus
455f07d087 fix rare livelock in std::map thread_buffer_requests
During initial session load it's possible that two threads call
PBD::notify_event_loops_about_thread_creation() simultaneously
(in particular the process threads). This can lead to an
endless loop in stl_tree.h when assigning thread_buffer_requests[key]

Now we only have WriteLocks.. unless some better solution comes up a
Mutex will do.
2016-02-14 02:13:04 +01:00
Robin Gareus
820bd0fe51 and another typo in d442190b 2016-02-14 00:10:41 +01:00
Robin Gareus
09167d3e59 fix typos in d442190b 2016-02-14 00:02:00 +01:00
Robin Gareus
d442190b8a slightly improved windows post-export hook support. 2016-02-13 23:12:50 +01:00
Robin Gareus
73245c6217 some half-baked support for windows command-arg substitutions 2016-02-13 17:04:11 +01:00
Robin Gareus
108528b63d amend d814acb - SystemExec/Export debugging 2016-02-13 01:39:41 +01:00
Ben Loftis
d814acbb8f add some debugging capability for users of SystemExec. Needs review. 2016-02-12 18:22:12 -06:00
Robin Gareus
2429308bac Open URis with spaces. 2016-02-11 16:43:35 +01:00
Paul Davis
57b9dab27c manually revert ec8cf4e4 with an extra comment explaining the significance 2016-02-03 11:45:23 -05:00
Robin Gareus
ec8cf4e4f5 Fix µ-iness. 2016-01-27 23:39:35 +01:00
Paul Davis
23794eca5b rename Controllable::WholeGroup => InverseGroup to reflect real intent.
Add logic to RouteGroupMember::use_group() to implement the real intent of InverseGroup
2016-01-22 11:58:31 -05:00
Paul Davis
cd401f5ab4 add new enums to libs/pbd enums registration 2016-01-18 12:11:09 -05:00
Paul Davis
9d65e6084c clean up functors used in cross-thread call_slot() messages, in case they contain shared_ptr<T>, which could result in a dangling reference 2016-01-16 09:33:31 -05:00
Paul Davis
2386410e4a remove debug output 2016-01-14 11:00:50 -05:00
Paul Davis
9ab92a67c8 use correct type of lock when removing a thread request buffer 2016-01-14 11:00:40 -05:00
Paul Davis
35807a1929 fully clean up request buffers when a thread dies 2016-01-14 10:53:32 -05:00
Paul Davis
077c65cc2a manually revert 4b3043cc and 141e6fb818; add detailed explanatory comment 2016-01-14 09:05:06 -05:00
Paul Davis
141e6fb818 don't pick up already dead thread request buffers when setting up an event loop 2016-01-13 23:25:17 -05:00
Paul Davis
4b3043ccda use a unique key to store per-thread request buffers 2016-01-13 23:00:02 -05:00
Paul Davis
d3ad5c16d1 yet more event loop debug tracing 2016-01-13 21:13:55 -05:00
Paul Davis
6d04a66eea more event loop debugging 2016-01-13 19:48:17 -05:00
Paul Davis
3e45254257 typo fix 2016-01-13 18:14:52 -05:00
Paul Davis
f3c9f5894a lots more DEBUG_TRACE statements for analysing malfunctioning system 2016-01-13 17:03:49 -05:00
Paul Davis
bcb865c235 improved debug trace messages from BaseUI class 2016-01-12 22:11:44 -05:00
Paul Davis
f1d0de029d remove debug output 2016-01-10 23:34:10 -05:00
Paul Davis
9e3299f97d change Controllable::set_value() API to include grouped control consideration.
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
Robin Gareus
80a730550d clang build fix (uint32_t is not declaed) 2015-12-29 18:49:56 +01:00
Robin Gareus
23333a271e fix windows/mingw builds 2015-12-29 10:30:27 +01:00
Paul Davis
0d9efc1148 redesign cross-thread registration/signalling system
This new design will work even when threads that need to receive
messages from RT threads are created *after* the RT threads. The
existing design would fail because the RT thread(s) would never
be known the later created threads, and so signals emitted by the
RT thread and causing call_slot() in the receiver would end up
being enqueued using a lock-protected list. The new design ensures
that communication always uses a lock-free FIFO instead
2015-12-28 10:14:17 -05:00
John Emmas
d880645cac Modify our MSVC project to accommodate newly introduced/removed source files (libpbd) 2015-12-23 15:09:17 +00:00
Robin Gareus
b48d87b3ea add API to query stateful ID override mode 2015-12-17 23:18:22 +01:00
Robin Gareus
6e13b91a35 portable pthread_self() debug message 2015-12-13 11:28:56 +01:00
Paul Davis
f32fc212f3 change AbstractUI implementation to use EventLoop::event_loop_name() and add extra DEBUG_TRACE statements to track thread registration with event loops 2015-12-12 11:12:10 -05:00
Paul Davis
a419fb5af0 fix endless-loop-at-shutdown bug now that abstract UI request buffers are used 2015-12-12 11:12:10 -05:00
Paul Davis
f369f33955 move BaseUI::_name into EventLoop; rename access method in EventLoop as event_loop_name() to clarify usage 2015-12-12 11:12:10 -05:00
Robin Gareus
162352419d NO-OP re-indent 2015-12-12 14:54:52 +01:00