// SPDX-License-Identifier: LGPL-2.1-or-later #pragma once #include "reader_endpoint.h" #include #ifndef NOMINMAX #define NOMINMAX #endif #include #include // Event callbacks enqueue copied data. One worker preserves event order while // waiting for reader acknowledgments, leaving WM_COPYDATA reception available. class ReaderEventQueue { public: ~ReaderEventQueue(); bool start(GDBusConnection *connection, const ReaderEndpoint &endpoint); bool submit(GVariant *parameters); void stop(); private: struct State; std::shared_ptr state_; HANDLE worker_ = nullptr; };