diff --git a/src/lib/base/EventQueue.cpp b/src/lib/base/EventQueue.cpp index 081352e49..79f731d80 100644 --- a/src/lib/base/EventQueue.cpp +++ b/src/lib/base/EventQueue.cpp @@ -126,7 +126,8 @@ bool EventQueue::processEvent(Event &event, double timeout, Stopwatch &timer) uint32_t dataID; IEventQueueBuffer::Type type = m_buffer->getEvent(event, dataID); switch (type) { - case IEventQueueBuffer::kNone: + using enum IEventQueueBuffer::Type; + case Unknown: if (timeout < 0.0 || timeout <= timer.getTime()) { // don't want to fail if client isn't expecting that // so if getEvent() fails with an infinite timeout @@ -135,10 +136,10 @@ bool EventQueue::processEvent(Event &event, double timeout, Stopwatch &timer) } return false; - case IEventQueueBuffer::kSystem: + case System: return true; - case IEventQueueBuffer::kUser: { + case User: { std::scoped_lock lock{m_mutex}; event = removeEvent(dataID); return true; diff --git a/src/lib/base/IEventQueueBuffer.h b/src/lib/base/IEventQueueBuffer.h index 2df1bf78a..f69a7e33b 100644 --- a/src/lib/base/IEventQueueBuffer.h +++ b/src/lib/base/IEventQueueBuffer.h @@ -20,11 +20,11 @@ An event queue buffer provides a queue of events for an IEventQueue. class IEventQueueBuffer : public IInterface { public: - enum Type + enum class Type : uint8_t { - kNone, //!< No event is available - kSystem, //!< Event is a system event - kUser //!< Event is a user event + Unknown, //!< No event is available + System, //!< Event is a system event + User //!< Event is a user event }; //! @name manipulators @@ -45,11 +45,11 @@ public: //! Get the next event /*! - Get the next event from the buffer. Return kNone if no event is - available. If a system event is next, return kSystem and fill in + Get the next event from the buffer. Return None if no event is + available. If a system event is next, return System and fill in event. The event data in a system event can point to a static buffer (because Event::deleteData() will not attempt to delete - data in a kSystem event). Otherwise, return kUser and fill in + data in a System event). Otherwise, return User and fill in \p dataID with the value passed to \c addEvent(). */ virtual Type getEvent(Event &event, uint32_t &dataID) = 0; diff --git a/src/lib/base/SimpleEventQueueBuffer.cpp b/src/lib/base/SimpleEventQueueBuffer.cpp index 35d4d830c..e0123f9cf 100644 --- a/src/lib/base/SimpleEventQueueBuffer.cpp +++ b/src/lib/base/SimpleEventQueueBuffer.cpp @@ -49,12 +49,12 @@ IEventQueueBuffer::Type SimpleEventQueueBuffer::getEvent(Event &, uint32_t &data { ArchMutexLock lock(m_queueMutex); if (!m_queueReady) { - return kNone; + return IEventQueueBuffer::Type::Unknown; } dataID = m_queue.back(); m_queue.pop_back(); m_queueReady = !m_queue.empty(); - return kUser; + return IEventQueueBuffer::Type::User; } bool SimpleEventQueueBuffer::addEvent(uint32_t dataID) diff --git a/src/lib/platform/EiEventQueueBuffer.cpp b/src/lib/platform/EiEventQueueBuffer.cpp index f26623493..8cb55c035 100644 --- a/src/lib/platform/EiEventQueueBuffer.cpp +++ b/src/lib/platform/EiEventQueueBuffer.cpp @@ -115,12 +115,12 @@ IEventQueueBuffer::Type EiEventQueueBuffer::getEvent(Event &event, uint32_t &dat // if this an injected special event, just return the data and exit if (pair.first == false) { dataID = pair.second; - return kUser; + return IEventQueueBuffer::Type::User; } event = Event(EventTypes::System, m_events->getSystemTarget()); - return kSystem; + return IEventQueueBuffer::Type::System; } bool EiEventQueueBuffer::addEvent(uint32_t dataID) diff --git a/src/lib/platform/MSWindowsEventQueueBuffer.cpp b/src/lib/platform/MSWindowsEventQueueBuffer.cpp index 95b9ccda7..9a71795f4 100644 --- a/src/lib/platform/MSWindowsEventQueueBuffer.cpp +++ b/src/lib/platform/MSWindowsEventQueueBuffer.cpp @@ -66,6 +66,7 @@ void MSWindowsEventQueueBuffer::waitForEvent(double timeout) IEventQueueBuffer::Type MSWindowsEventQueueBuffer::getEvent(Event &event, uint32_t &dataID) { + using enum IEventQueueBuffer::Type; // NOTE: QS_ALLINPUT was replaced with QS_ALLPOSTMESSAGE. // // peek at messages first. waiting for QS_ALLINPUT will return @@ -73,25 +74,25 @@ IEventQueueBuffer::Type MSWindowsEventQueueBuffer::getEvent(Event &event, uint32 // dispatch that message behind our backs and block. PeekMessage // will also dispatch behind our backs but won't block. if (!PeekMessage(&m_event, nullptr, 0, 0, PM_NOREMOVE) && !PeekMessage(&m_event, (HWND)-1, 0, 0, PM_NOREMOVE)) { - return kNone; + return Unknown; } // BOOL. yeah, right. BOOL result = GetMessage(&m_event, nullptr, 0, 0); if (result == -1) { - return kNone; + return Unknown; } else if (result == 0) { event = Event(EventTypes::Quit); - return kSystem; + return System; } else if (m_daemonQuit != 0 && m_event.message == m_daemonQuit) { event = Event(EventTypes::Quit); - return kSystem; + return System; } else if (m_event.message == m_userEvent) { dataID = static_cast(m_event.wParam); - return kUser; + return User; } else { event = Event(EventTypes::System, m_events->getSystemTarget(), &m_event); - return kSystem; + return System; } } diff --git a/src/lib/platform/OSXEventQueueBuffer.cpp b/src/lib/platform/OSXEventQueueBuffer.cpp index 1eadd9854..25eb682c6 100644 --- a/src/lib/platform/OSXEventQueueBuffer.cpp +++ b/src/lib/platform/OSXEventQueueBuffer.cpp @@ -51,7 +51,7 @@ IEventQueueBuffer::Type OSXEventQueueBuffer::getEvent(Event &event, uint32_t &da std::unique_lock lock(m_mutex); if (m_dataQueue.empty()) { LOG_DEBUG2("no events in queue"); - return kNone; + return IEventQueueBuffer::Type::Unknown; } dataID = m_dataQueue.front(); @@ -59,7 +59,7 @@ IEventQueueBuffer::Type OSXEventQueueBuffer::getEvent(Event &event, uint32_t &da lock.unlock(); // Unlock early to allow other threads to proceed LOG_DEBUG2("handled user event with dataID: %u", dataID); - return kUser; + return IEventQueueBuffer::Type::User; } bool OSXEventQueueBuffer::addEvent(uint32_t dataID) diff --git a/src/lib/platform/XWindowsEventQueueBuffer.cpp b/src/lib/platform/XWindowsEventQueueBuffer.cpp index 22336ad16..22cf0ce42 100644 --- a/src/lib/platform/XWindowsEventQueueBuffer.cpp +++ b/src/lib/platform/XWindowsEventQueueBuffer.cpp @@ -142,10 +142,10 @@ IEventQueueBuffer::Type XWindowsEventQueueBuffer::getEvent(Event &event, uint32_ // process event if (m_event.xany.type == ClientMessage && m_event.xclient.message_type == m_userEvent) { dataID = static_cast(m_event.xclient.data.l[0]); - return kUser; + return IEventQueueBuffer::Type::User; } else { event = Event(EventTypes::System, m_events->getSystemTarget(), &m_event); - return kSystem; + return IEventQueueBuffer::Type::System; } }