The Pedigree Project  0.1
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
InputEvent Class Reference
+ Inheritance diagram for InputEvent:
+ Collaboration diagram for InputEvent:

Public Member Functions

 InputEvent (InputManager::InputNotification *pNote, uintptr_t param, uintptr_t handlerAddress)
 
virtual size_t serialize (uint8_t *pBuffer)
 
virtual size_t getNumber ()
 
InputManager::CallbackType getType ()
 
uint64_t getKey ()
 
ssize_t getRelX ()
 
ssize_t getRelY ()
 
ssize_t getRelZ ()
 
void getButtonStates (bool states[64], size_t maxDesired=64)
 
- Public Member Functions inherited from Event
 Event (uintptr_t handlerAddress, bool isDeletable, size_t specificNestingLevel=~0UL)
 
virtual bool isDeletable ()
 
uintptr_t getHandlerAddress ()
 
size_t getSpecificNestingLevel ()
 
 Event (const Event &other)
 
Eventoperator= (const Event &other)
 
void registerThread (Thread *thread)
 
void deregisterThread (Thread *thread)
 
size_t pendingCount ()
 
virtual void waitForDeliveries ()
 

Static Public Member Functions

static bool unserialize (uint8_t *pBuffer, InputEvent &event)
 
- Static Public Member Functions inherited from Event
static uintptr_t getTrampoline ()
 
static uintptr_t getSecondaryTrampoline ()
 
static uintptr_t getHandlerBuffer ()
 
static uintptr_t getLastHandlerBuffer ()
 
static bool unserialize (uint8_t *pBuffer, Event &event)
 
static size_t getEventType (uint8_t *pBuffer)
 

Private Attributes

InputManager::InputNotification m_Notification
 
uintptr_t m_nParam
 

Additional Inherited Members

- Protected Attributes inherited from Event
uintptr_t m_HandlerAddress
 
bool m_bIsDeletable
 
size_t m_NestingLevel
 
size_t m_Magic
 
List< Thread * > m_Threads
 
Spinlock m_Lock
 

Detailed Description

Definition at line 36 of file InputManager.cc.

Member Function Documentation

size_t InputEvent::getNumber ( )
virtual

Returns the event number / ID.

Implements Event.

Definition at line 402 of file InputManager.cc.

size_t InputEvent::serialize ( uint8_t *  pBuffer)
virtual

Given a buffer EVENT_LIMIT bytes long, take the variables present in this object and convert them to a binary form.

It can be assumed that this function will only be called when the Event is about to be dispatched, and so the inhibited mask of the current Thread is available to be changed to what the event handler requires. This change will be undone when the handler completes.

Parameters
pBufferThe buffer to serialize to.
Returns
The number of bytes serialized.

Implements Event.

Definition at line 378 of file InputManager.cc.


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