summaryrefslogtreecommitdiffstats
path: root/src/JackDriver.hpp
AgeCommit message (Collapse)AuthorFilesLines
2020-11-29Completely isolate drivers from the rest of the applicationDavid Robillard1-94/+0
2020-11-29Add AudioDriver interfaceDavid Robillard1-13/+10
2020-11-29Remove flaky DSP load meterDavid Robillard1-3/+0
This never worked particularly well, and the underlying API is more or less useless with Jack 2. So, just replace it with a dropout counter.
2020-11-29Clean up member initialization in JackDriverDavid Robillard1-7/+7
2020-11-28Remove unused fieldDavid Robillard1-5/+4
2020-11-28Clean up includesDavid Robillard1-1/+0
2020-11-28Avoid copying port IDsDavid Robillard1-2/+3
2020-11-28Remove Jack header dependency from DBus driverDavid Robillard1-4/+5
2020-11-28Remove Jack session supportDavid Robillard1-2/+0
2020-11-28Remove dead codeDavid Robillard1-6/+0
2020-11-28Abstract out sending of eventsDavid Robillard1-8/+1
This removes the details of how events are handled from drivers, so the owner can set them up to do anything. For example, a driver could be run in the GUI thread and have its events simply dispatched immediately, but here everything is enqueued to the same queue which is drained later for simplicity.
2020-11-28Refresh by emitting eventsDavid Robillard1-13/+2
This decouples drivers from the rest of the application, in particular the horrible situation where they were working with the canvas directly, by having them always communicate changes by emitting events.
2020-11-28Factor out getting client and port metadata and send it with eventsDavid Robillard1-0/+5
2020-11-28Make PatchageEvent a variantDavid Robillard1-1/+1
2020-11-28Remove useless doc commentsDavid Robillard1-5/+1
2020-11-28Simplify driver connection interfaceDavid Robillard1-13/+2
2020-11-28Remove Queue and use std::queue in JackDriverDavid Robillard1-2/+2
Jack notification handlers do not need to be realtime safe.
2020-11-27Make method constDavid Robillard1-1/+1
2020-11-27Remove use of PatchagePort from Driver connection interfaceDavid Robillard1-3/+13
2020-11-27Factor out log from Patchage classDavid Robillard1-3/+5
Towards saner dependencies.
2020-11-27Explicitly delete or define all special member functionsDavid Robillard1-0/+6
2020-11-27Use "override"David Robillard1-10/+13
2020-11-27Fix mismatched parameter namesDavid Robillard1-7/+13
2020-11-27Avoid unnecessary copiesDavid Robillard1-1/+1
2020-11-27Use std::mutexDavid Robillard1-2/+3
2020-11-27Use nullptrDavid Robillard1-1/+1
2020-11-27Fix indentationDavid Robillard1-1/+1
2020-02-09Format all code with clang-formatDavid Robillard1-14/+14
This configuration tries to get as close to the previous style as possible so the changes aren't too dramatic. It's still far from ideal and the code could use some adaptation, but this makes things much easier to work on.
2019-12-29Clean up includesDavid Robillard1-5/+4
2014-04-26Update copyright date.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@5371 a436a847-0d15-0410-975c-d299462d15a1
2014-04-06Resurrect toolbar with Jack info and dropout indicator.David Robillard1-0/+2
Move legend to right hand side of toolbar. Store toolbar visible state in configuration. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@5359 a436a847-0d15-0410-975c-d299462d15a1
2013-06-09Fix compilation with --jack-dbus (#917).David Robillard1-3/+2
I don't know why I maintain this or what the point of it is... git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@5141 a436a847-0d15-0410-975c-d299462d15a1
2013-03-17Update copyright date.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@5087 a436a847-0d15-0410-975c-d299462d15a1
2011-12-06FlowCanvas's successor is hereby dubbed Ganv.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3820 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Remove Raul dependency.David Robillard1-5/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3633 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Remove cruft.David Robillard1-3/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3631 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Log (almost) everything to the messages window instead of the console.David Robillard1-3/+0
Remove latency and load stuff in favour of plain old messages. Remove status bar. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3627 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Switch to GPLv3+.David Robillard1-7/+6
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3623 a436a847-0d15-0410-975c-d299462d15a1
2011-06-09Fix support for multiple instances of alsa clients with the same name (never ↵David Robillard1-1/+1
consider client name an ID). Remove Alsa specific crap from PatchagePort. Sane implementation of AlsaDriver::refresh. Fix refreshing. Remove useless Jack graph order callback. Fix double add/remove of ports to modules. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3374 a436a847-0d15-0410-975c-d299462d15a1
2011-06-07Remove use of smart pointers in FlowCanvas entirely.David Robillard1-9/+9
Since FlowCanvas's containers own their children, there is no real benefit to using smart pointers for objects, though there is overhead. There are no longer any add or remove methods for containers, simply create (new) and destroy (delete) objects and things should work as expected. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3366 a436a847-0d15-0410-975c-d299462d15a1
2011-06-03Better alignment of various class fields (save an insignificant amount of ↵David Robillard1-4/+4
memory). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3351 a436a847-0d15-0410-975c-d299462d15a1
2011-05-20Use a (smaller, simpler) statusbar instead of a toolbar.David Robillard1-1/+1
Display more useful latency information (e.g. latency in ms as well as frames). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3300 a436a847-0d15-0410-975c-d299462d15a1
2011-04-16Update copyright headersDavid Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3153 a436a847-0d15-0410-975c-d299462d15a1
2011-04-16Squeeze blank lines and delete trailing whitespace.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3152 a436a847-0d15-0410-975c-d299462d15a1
2011-01-09Code cleanups (cpplint).David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2804 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Improve performance for setups with many apps or ports.David Robillard1-2/+3
(Eliminate all linear searches for items, except one case for Jack ports which is unavoidable due to the Jack API, but is memoized, so each port will only be searched for once between refreshes). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2712 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Reduce polling frequency of Jack X-Run information.David Robillard1-17/+5
Clean up code, remove cruft. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2707 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Fix compilation with Jack D-Bus (tested working w/ jack-1.9.6).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2706 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Fix removal of ALSA duplex ports (remove both corresponding canvas ports).David Robillard1-1/+4
Use simpler (and seemingly less lockup prone) blocking ALSA sequencer event API. Only use a ringbuffer for JACK driver. Reduce memory usage. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2690 a436a847-0d15-0410-975c-d299462d15a1
2010-12-14Use Raul::log for console logging.David Robillard1-1/+0
Print error message if unsubscribed client is not found (Re: ticket #137). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2684 a436a847-0d15-0410-975c-d299462d15a1