summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2020-11-28Reduce use of raw new and deleteDavid Robillard6-63/+58
2020-11-28Use AlsaDriver only through base class interfaceDavid Robillard2-11/+8
2020-11-28Clean up includesDavid Robillard12-21/+15
2020-11-28Avoid using atoiDavid Robillard1-1/+1
2020-11-28Avoid copying port IDsDavid Robillard7-14/+18
2020-11-28Remove more dead codeDavid Robillard3-15/+3
2020-11-28Remove Jack header dependency from DBus driverDavid Robillard4-14/+16
2020-11-28Remove Jack session supportDavid Robillard6-186/+6
2020-11-28Remove dead codeDavid Robillard4-63/+0
2020-11-28Abstract out sending of eventsDavid Robillard9-102/+74
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 Robillard11-831/+303
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-28Use anonymous namespaces instead of staticDavid Robillard1-4/+12
2020-11-28Remove dead codeDavid Robillard1-5/+0
2020-11-28Add separate store for client and port metadataDavid Robillard5-1/+135
2020-11-28Print metadata about creation eventsDavid Robillard1-2/+42
2020-11-28Factor out getting client and port metadata and send it with eventsDavid Robillard7-49/+206
2020-11-28Clean up order of ALSA event handlingDavid Robillard1-19/+26
2020-11-28Fix Jack metadata when session management is not enabledDavid Robillard1-9/+11
2020-11-28Move PortType to its own headerDavid Robillard7-9/+35
2020-11-28Move SignalDirection to its own headerDavid Robillard8-8/+36
2020-11-28Add utilities for printing eventsDavid Robillard3-0/+114
2020-11-28Remove NoopEventDavid Robillard2-7/+1
2020-11-28Remove alternative USE_FULL_REFRESH Jack DBus codeDavid Robillard2-58/+2
2020-11-28Fix sample rate with Jack DBusDavid Robillard2-5/+6
2020-11-28Rename ModuleType to SignalDirectionDavid Robillard11-66/+70
2020-11-28Move handle_event() to separate filesDavid Robillard9-9/+39
2020-11-28Index clients and ports by IDDavid Robillard12-111/+162
2020-11-28Factor out ClientTypeDavid Robillard3-10/+33
2020-11-28Remove null port IDsDavid Robillard2-18/+6
This statically ensures that a PortID is always valid.
2020-11-28Make PatchageEvent a variantDavid Robillard7-119/+133
2020-11-28Remove useless doc commentsDavid Robillard7-33/+4
2020-11-28Factor out Connector from PatchageCanvasDavid Robillard8-82/+169
This finally breaks the dependency of the canvas on the entire application, and fixes the confusing situation where it wasn't clear whether connect/disconnect methods made/broke connections on the canvas or on the system.
2020-11-28Simplify driver connection interfaceDavid Robillard10-157/+91
2020-11-28Always index Jack ports and refer to them by nameDavid Robillard9-186/+176
The Jack API annoyingly doesn't provide a way to get an ID from a port name. Since notification callbacks apparently don't have to worry about realtime concerns anymore, simply use the full name string as an ID everywhere. This means that every Jack port has a non-null ID, and all ports are always indexed, so the kludges for this in the canvas can be removed.
2020-11-28Remove Queue and use std::queue in JackDriverDavid Robillard3-141/+2
Jack notification handlers do not need to be realtime safe.
2020-11-28Log attachment message for Jack DBusDavid Robillard1-0/+2
2020-11-28Normalize NEWS fileDavid Robillard1-1/+1
2020-11-28Fix connections with Jack DBusDavid Robillard2-2/+8
2020-11-28Clean up error messages in Jack DBus driverDavid Robillard1-3/+3
2020-11-27Fix spelling error in AlsaDriver.cppDennis Braun1-1/+1
2020-11-27Add keywords to desktop fileDennis Braun1-0/+1
2020-11-27Make method constDavid Robillard1-1/+1
2020-11-27Ensure that modules always have an IDDavid Robillard6-4/+123
2020-11-27Remove use of PatchagePort from Driver connection interfaceDavid Robillard9-94/+204
2020-11-27Ensure that ports always have an IDDavid Robillard6-11/+22
2020-11-27Add missing namespace qualificationDavid Robillard1-1/+1
2020-11-27Use a consistent style for log messagesDavid Robillard7-66/+76
2020-11-27Use prettier names for log methodsDavid Robillard9-72/+69
2020-11-27Factor out log from Patchage classDavid Robillard14-126/+271
Towards saner dependencies.
2020-11-27Remove some clang-tidy suppressions that got fixed along the wayDavid Robillard1-3/+1