Robin Gareus
7dfd39e708
add a single-element ring-buffer write function
2016-07-10 15:56:18 +02:00
Paul Davis
58b2931685
add the potential for a bit more debugging of signal connects
2016-07-01 17:47:05 -04:00
Paul Davis
ba700ecc63
add the potential for a bit more debugging of signal connects
2016-07-01 17:47:05 -04:00
Robin Gareus
86763cba90
Enable build for FreeBSD (part 1/2)
...
Adopted from Michael Beer -- GH pull-request #232 with minor changes:
* rebased on master,
* removed trailing whitespace,
* don't explicitly change saved configuration defaults (wscript)
* moved sys/wait (WNOHANG) to header include
* separate changes in GUI and lib
2016-06-26 16:43:07 +02:00
Paul Davis
d5127001bb
move ControllableDescriptor from libpbd to libardour; add support for describing VCAs
2016-05-31 15:30:42 -04:00
Paul Davis
e1bcd70712
a slew of as-yet incomplete work to get VCA solo+mute closer to working
2016-05-31 15:30:40 -04:00
Paul Davis
2c6d595614
add a new Controllable::NotAutomable flag
2016-05-31 15:30:40 -04:00
Paul Davis
653ae4acd6
universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
...
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-31 15:30:40 -04:00
Paul Davis
5531c83496
change API of Controllable::Changed signal to include (from_self, GroupControlDisposition)
...
This allows the signal to convey more information, which may be required by some handlers of a control's Changed signal
2016-05-31 15:30:40 -04:00
John Emmas
22e031135a
Emulate 'log1p()' and 'expm1()' using 'log()' and 'exp()'
...
(for MSVC which didn't implement those functions until very recent versions).
2016-05-28 19:07:22 +01:00
Robin Gareus
f445ba8bdc
locale debugging
2016-05-07 12:15:12 +02:00
Robin Gareus
3dc7728038
we always only use the "C" locale when saving.
2016-05-05 21:49:56 +02:00
Robin Gareus
f2c5522f0f
rework locale-guard for C and C++ locales
...
let's hope querying the C-locale is more lightweight than setting it
on windows.
2016-05-05 20:02:48 +02:00
Paul Davis
17ace643e4
OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)
2016-05-04 23:09:45 -04:00
Robin Gareus
255b5174c4
add a const method to check for existing key/value properties
...
handy to lookup up XMLNodes with "id" == ID w/o allocating memory.
2016-05-03 03:03:00 +02:00
Robin Gareus
f6a621346c
some notes on mem-leaks...
2016-04-24 14:43:18 +02:00
Robin Gareus
04c56a0618
some strategic documentation
...
Prevent class descriptions inheriting the doc from PBD:Stateful by
adding some specific doc.
2016-04-12 17:03:44 +02:00
Robin Gareus
ff05c82312
Revert "experimental session-save speedup" -- needs C++11
...
This reverts commit d1dcedaccf .
2016-04-08 21:21:38 +02:00
Robin Gareus
3def1b2830
more potential session-save speedup.
...
std:vector trumps std::list speed in all aspects: traversal, insertion
(at end) and Deletion. ..but we'll have to be careful about iterators..
2016-04-08 21:03:23 +02:00
Robin Gareus
d1dcedaccf
experimental session-save speedup
...
property order is not important,
unordered_map lookup and insertion is O(1)
2016-04-08 20:32:49 +02:00
Robin Gareus
e19744430a
don't collect rt-mempoll statistics anymore (by default)
2016-04-03 23:54:53 +02:00
Robin Gareus
a9187a9e25
Add a few class documentations to override inherited doc.
...
clang doxygen comments follows class inheritance.
Undocumented Ardour classes which inherit from sigc::trackable
also inherit sigc's documentation.
2016-03-31 01:16:07 +02: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
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
Robin Gareus
5e50a7d6cf
allot to open OSX Finder with arbitrary paths
2016-02-17 16:29:25 +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
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
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
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 141e6fb8181; 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
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
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
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