Review (part 2)
pipewirecore.h
struct pw_core *pwCore = nullptr;
struct pw_context *pwContext = nullptr;
struct pw_loop *pwMainLoop = nullptr;
spa_hook coreListener;
QString m_error;
inconsistent member variable naming
members being public is an anti pattern
pipewirecore.cpp
if init does fail, we try again and again. If this is 60 times a second that's probably going to be an issue.
if (global.localData()) {
ret = global.localData().toStrongRef();
this can be one lookup
void PipeWireCore::onCoreError(void *data, uint32_t id, int seq, int res, const char *message)
if (id == PW_ID_CORE && res == -EPIPE) {
docs for the error callback say: "Fatal error event." Why are we filtering this to only count a single one.