summaryrefslogtreecommitdiffstats
path: root/src/JackLibDriver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/JackLibDriver.cpp')
-rw-r--r--src/JackLibDriver.cpp30
1 files changed, 18 insertions, 12 deletions
diff --git a/src/JackLibDriver.cpp b/src/JackLibDriver.cpp
index 5133bc6..6df5b02 100644
--- a/src/JackLibDriver.cpp
+++ b/src/JackLibDriver.cpp
@@ -39,6 +39,7 @@ PATCHAGE_RESTORE_WARNINGS
#include <string>
#include <unordered_set>
#include <utility>
+#include <variant>
namespace patchage {
namespace {
@@ -73,8 +74,8 @@ public:
uint32_t sample_rate() override;
private:
- ClientInfo get_client_info(const char* name);
- PortInfo get_port_info(const jack_port_t* port);
+ static ClientInfo get_client_info(const char* name);
+ PortInfo get_port_info(const jack_port_t* port);
static void on_client(const char* name, int registered, void* driver);
@@ -93,8 +94,8 @@ private:
std::mutex _shutdown_mutex;
jack_client_t* _client = nullptr;
- jack_nframes_t _buffer_size = 0u;
- uint32_t _xruns = 0u;
+ jack_nframes_t _buffer_size = 0U;
+ uint32_t _xruns = 0U;
bool _is_activated = false;
};
@@ -195,7 +196,7 @@ PortInfo
JackLibDriver::get_port_info(const jack_port_t* const port)
{
const auto uuid = jack_port_uuid(port);
- const auto flags = jack_port_flags(port);
+ const auto flags = static_cast<unsigned>(jack_port_flags(port));
const std::string name = jack_port_name(port);
auto label = PortNames{name}.port();
@@ -236,7 +237,11 @@ JackLibDriver::get_port_info(const jack_port_t* const port)
order = std::stoi(order_str);
}
- return {label, type, direction, order, bool(flags & JackPortIsTerminal)};
+ return {label,
+ type,
+ direction,
+ order,
+ static_cast<bool>(flags & JackPortIsTerminal)};
}
void
@@ -256,7 +261,7 @@ JackLibDriver::refresh(const EventSink& sink)
// Get all client names (to only send a creation event once for each)
std::unordered_set<std::string> client_names;
- for (auto i = 0u; ports[i]; ++i) {
+ for (auto i = 0U; ports[i]; ++i) {
client_names.insert(PortID::jack(ports[i]).client().jack_name());
}
@@ -267,7 +272,7 @@ JackLibDriver::refresh(const EventSink& sink)
}
// Emit all ports
- for (auto i = 0u; ports[i]; ++i) {
+ for (auto i = 0U; ports[i]; ++i) {
const jack_port_t* const port = jack_port_by_name(_client, ports[i]);
sink({event::PortCreated{PortID::jack(ports[i]), get_port_info(port)}});
@@ -275,17 +280,18 @@ JackLibDriver::refresh(const EventSink& sink)
// Get all connections (again to only create them once)
std::set<std::pair<std::string, std::string>> connections;
- for (auto i = 0u; ports[i]; ++i) {
+ for (auto i = 0U; ports[i]; ++i) {
const jack_port_t* const port = jack_port_by_name(_client, ports[i]);
const char** const peers = jack_port_get_all_connections(_client, port);
if (peers) {
- if (jack_port_flags(port) & JackPortIsInput) {
- for (auto j = 0u; peers[j]; ++j) {
+ const auto flags = static_cast<unsigned>(jack_port_flags(port));
+ if (flags & JackPortIsInput) {
+ for (auto j = 0U; peers[j]; ++j) {
connections.emplace(peers[j], ports[i]);
}
} else {
- for (auto j = 0u; peers[j]; ++j) {
+ for (auto j = 0U; peers[j]; ++j) {
connections.emplace(ports[i], peers[j]);
}
}