Deskflow 1.22.0.197
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
OSXEventQueueBuffer Class Reference

Event queue buffer for OS X. More...

#include <OSXEventQueueBuffer.h>

Inheritance diagram for OSXEventQueueBuffer:
Collaboration diagram for OSXEventQueueBuffer:

Public Member Functions

 OSXEventQueueBuffer (IEventQueue *eventQueue)
 ~OSXEventQueueBuffer () override=default
void init () override
 Initialize.
void waitForEvent (double timeout) override
 Block waiting for an event.
Type getEvent (Event &event, uint32_t &dataID) override
 Get the next event.
bool addEvent (uint32_t dataID) override
 Post an event.
bool isEmpty () const override
 Check if event queue buffer is empty.
EventQueueTimernewTimer (double duration, bool oneShot) const override
 Create a timer object.
void deleteTimer (EventQueueTimer *timer) const override
 Destroy a timer object.
Public Member Functions inherited from IEventQueueBuffer
Public Member Functions inherited from IInterface
virtual ~IInterface ()=default
 Interface destructor does nothing.

Additional Inherited Members

Public Types inherited from IEventQueueBuffer
enum class  Type : uint8_t { Unknown , System , User }

Detailed Description

Event queue buffer for OS X.

Constructor & Destructor Documentation

◆ OSXEventQueueBuffer()

OSXEventQueueBuffer::OSXEventQueueBuffer ( IEventQueue * eventQueue)

◆ ~OSXEventQueueBuffer()

OSXEventQueueBuffer::~OSXEventQueueBuffer ( )
overridedefault

Member Function Documentation

◆ addEvent()

bool OSXEventQueueBuffer::addEvent ( uint32_t dataID)
overridevirtual

Post an event.

Add the given event to the end of the queue buffer. This is a user event and getEvent() must be able to identify it as such and return dataID. This method must cause waitForEvent() to return at some future time if it's blocked waiting on an event.

Implements IEventQueueBuffer.

◆ deleteTimer()

void OSXEventQueueBuffer::deleteTimer ( EventQueueTimer * ) const
overridevirtual

Destroy a timer object.

Destroy a timer object previously returned by newTimer().

Implements IEventQueueBuffer.

◆ getEvent()

IEventQueueBuffer::Type OSXEventQueueBuffer::getEvent ( Event & event,
uint32_t & dataID )
overridevirtual

Get the next event.

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 System event). Otherwise, return User and fill in dataID with the value passed to addEvent().

Implements IEventQueueBuffer.

◆ init()

void OSXEventQueueBuffer::init ( )
overridevirtual

Initialize.

Useful for platform-specific initialisation from a specific thread.

Implements IEventQueueBuffer.

◆ isEmpty()

bool OSXEventQueueBuffer::isEmpty ( ) const
overridevirtual

Check if event queue buffer is empty.

Return true iff the event queue buffer is empty.

Implements IEventQueueBuffer.

◆ newTimer()

EventQueueTimer * OSXEventQueueBuffer::newTimer ( double duration,
bool oneShot ) const
overridevirtual

Create a timer object.

Create and return a timer object. The object is opaque and is used only by the buffer but it must be a valid object (i.e. not nullptr).

Implements IEventQueueBuffer.

◆ waitForEvent()

void OSXEventQueueBuffer::waitForEvent ( double timeout)
overridevirtual

Block waiting for an event.

Wait for an event in the event queue buffer for up to timeout seconds.

Implements IEventQueueBuffer.


The documentation for this class was generated from the following files: