xoreos  0.0.5
Classes | Typedefs | Enumerations | Functions
Events Namespace Reference

Classes

class  EventsManager
 The events manager. More...
 
class  Joystick
 
struct  MainThreadFunctor
 A functor for a function that needs to be called in the main thread. More...
 
struct  MainThreadFunctor< void >
 Template specialization for a MainThreadFunctor returning void. More...
 
class  NotificationManager
 The notification manager, handling all notifications. More...
 
class  Notifyable
 
class  Request
 A request, carrying inter-thread communication. More...
 
struct  RequestCallInMainThread
 
struct  RequestDataGLContainer
 
class  RequestManager
 The request manager, handling all requests. More...
 
class  TimerHandle
 
class  TimerID
 
class  TimerManager
 The global timer manager. More...
 

Typedefs

typedef Common::PtrList< RequestRequestList
 
typedef RequestList::iterator RequestID
 
typedef boost::function< uint32(uint32)> TimerFunc
 A timer callback function. More...
 
typedef SDL_Event Event
 
typedef boost::function< void()> MainThreadCallerFunctor
 

Enumerations

enum  EventType {
  kEventKeyDown = SDL_KEYDOWN, kEventKeyUp = SDL_KEYUP, kEventMouseMove = SDL_MOUSEMOTION, kEventMouseDown = SDL_MOUSEBUTTONDOWN,
  kEventMouseUp = SDL_MOUSEBUTTONUP, kEventMouseWheel = SDL_MOUSEWHEEL, kEventTextInput = SDL_TEXTINPUT, kEventQuit = SDL_QUIT,
  kEventWindow = SDL_WINDOWEVENT, kEventUserMIN = SDL_USEREVENT - 1, kEventITC = SDL_USEREVENT, kEventUserMAX = SDL_LASTEVENT
}
 Custom event types. More...
 
enum  EventWindowType {
  kEventWindowResized = SDL_WINDOWEVENT_RESIZED, kEventWindowSizeChanged = SDL_WINDOWEVENT_SIZE_CHANGED, kEventWindowMinimized = SDL_WINDOWEVENT_MINIMIZED, kEventWindowMaximized = SDL_WINDOWEVENT_MAXIMIZED,
  kEventWindowRestored = SDL_WINDOWEVENT_RESTORED
}
 Sub events for kEventWindow. More...
 
enum  ITCEvent {
  kITCEventSync = 0, kITCEventCallInMainThread, kITCEventRebuildGLContainer, kITCEventDestroyGLContainer,
  kITCEventMAX
}
 Specific type of the inter-thread communication. More...
 
enum  Key {
  kKeyUnknown = SDLK_UNKNOWN, kKeyReturn = SDLK_RETURN, kKeyEscape = SDLK_ESCAPE, kKeyBackspace = SDLK_BACKSPACE,
  kKeyTab = SDLK_TAB, kKeySpace = SDLK_SPACE, kKeyExclaim = SDLK_EXCLAIM, kKeyQuoteDbl = SDLK_QUOTEDBL,
  kKeyHash = SDLK_HASH, kKeyPercent = SDLK_PERCENT, kKeyDollar = SDLK_DOLLAR, kKeyAmpersand = SDLK_AMPERSAND,
  kKeyQuote = SDLK_QUOTE, kKeyLeftParen = SDLK_LEFTPAREN, kKeyRightParen = SDLK_RIGHTPAREN, kKeyAsterisk = SDLK_ASTERISK,
  kKeyPlus = SDLK_PLUS, kKeyComma = SDLK_COMMA, kKeyMinus = SDLK_MINUS, kKeyPeriod = SDLK_PERIOD,
  kKeySlash = SDLK_SLASH, kKey0 = SDLK_0, kKey1 = SDLK_1, kKey2 = SDLK_2,
  kKey3 = SDLK_3, kKey4 = SDLK_4, kKey5 = SDLK_5, kKey6 = SDLK_6,
  kKey7 = SDLK_7, kKey8 = SDLK_8, kKey9 = SDLK_9, kKeyColon = SDLK_COLON,
  kKeySemicolon = SDLK_SEMICOLON, kKeyLess = SDLK_LESS, kKeyEquals = SDLK_EQUALS, kKeyGreater = SDLK_GREATER,
  kKeyQuestion = SDLK_QUESTION, kKeyAt = SDLK_AT, kKeyCapsLock = SDLK_CAPSLOCK, kKeyF1 = SDLK_F1,
  kKeyF2 = SDLK_F2, kKeyF3 = SDLK_F3, kKeyF4 = SDLK_F4, kKeyF5 = SDLK_F5,
  kKeyF6 = SDLK_F6, kKeyF7 = SDLK_F7, kKeyF8 = SDLK_F8, kKeyF9 = SDLK_F9,
  kKeyF10 = SDLK_F10, kKeyF11 = SDLK_F11, kKeyF12 = SDLK_F12, kKeyPrintScreen = SDLK_PRINTSCREEN,
  kKeyScrollLock = SDLK_SCROLLLOCK, kKeyPause = SDLK_PAUSE, kKeyInsert = SDLK_INSERT, kKeyHome = SDLK_HOME,
  kKeyPageUp = SDLK_PAGEUP, kKeyDelete = SDLK_DELETE, kKeyEnd = SDLK_END, kKeyPageDown = SDLK_PAGEDOWN,
  kKeyRight = SDLK_RIGHT, kKeyLeft = SDLK_LEFT, kKeyDown = SDLK_DOWN, kKeyUp = SDLK_UP,
  kKeyNumLockClear = SDLK_NUMLOCKCLEAR, kKeyKPDivide = SDLK_KP_DIVIDE, kKeyKPMultiply = SDLK_KP_MULTIPLY, kKeyKPMinus = SDLK_KP_MINUS,
  kKeyKPPlus = SDLK_KP_PLUS, kKeyKPEnter = SDLK_KP_ENTER, kKeyKP1 = SDLK_KP_1, kKeyKP2 = SDLK_KP_2,
  kKeyKP3 = SDLK_KP_3, kKeyKP4 = SDLK_KP_4, kKeyKP5 = SDLK_KP_5, kKeyKP6 = SDLK_KP_6,
  kKeyKP7 = SDLK_KP_7, kKeyKP8 = SDLK_KP_8, kKeyKP9 = SDLK_KP_9, kKeyKP0 = SDLK_KP_0,
  kKeyKPPeriod = SDLK_KP_PERIOD, kKeyApplication = SDLK_APPLICATION, kKeyPower = SDLK_POWER, kKeyKPEquals = SDLK_KP_EQUALS,
  kKeyF13 = SDLK_F13, kKeyF14 = SDLK_F14, kKeyF15 = SDLK_F15, kKeyF16 = SDLK_F16,
  kKeyF17 = SDLK_F17, kKeyF18 = SDLK_F18, kKeyF19 = SDLK_F19, kKeyF20 = SDLK_F20,
  kKeyF21 = SDLK_F21, kKeyF22 = SDLK_F22, kKeyF23 = SDLK_F23, kKeyF24 = SDLK_F24,
  kKeyExecute = SDLK_EXECUTE, kKeyHelp = SDLK_HELP, kKeyMenu = SDLK_MENU, kKeySelect = SDLK_SELECT,
  kKeyStop = SDLK_STOP, kKeyAgain = SDLK_AGAIN, kKeyUndo = SDLK_UNDO, kKeyCut = SDLK_CUT,
  kKeyCopy = SDLK_COPY, kKeyPaste = SDLK_PASTE, kKeyFind = SDLK_FIND, kKeyMute = SDLK_MUTE,
  kKeyVolumeUp = SDLK_VOLUMEUP, kKeyVolumeDown = SDLK_VOLUMEDOWN, kKeyKPComma = SDLK_KP_COMMA, kKeyKPEqualsAs400 = SDLK_KP_EQUALSAS400,
  kKeyAltErase = SDLK_ALTERASE, kKeySysReq = SDLK_SYSREQ, kKeyCancel = SDLK_CANCEL, kKeyClear = SDLK_CLEAR,
  kKeyPrior = SDLK_PRIOR, kKeyReturn2 = SDLK_RETURN2, kKeySeparator = SDLK_SEPARATOR, kKeyOut = SDLK_OUT,
  kKeyOper = SDLK_OPER, kKeyClearAgain = SDLK_CLEARAGAIN, kKeyCRSel = SDLK_CRSEL, kKeyExSel = SDLK_EXSEL,
  kKeyKP00 = SDLK_KP_00, kKeyKP000 = SDLK_KP_000, kKeyThousandsSeperator = SDLK_THOUSANDSSEPARATOR, kKeyDecimalSeperator = SDLK_DECIMALSEPARATOR,
  kKeyCurrencyUnit = SDLK_CURRENCYUNIT, kKeyCurrencySubUnit = SDLK_CURRENCYSUBUNIT, kKeyKPLeftParen = SDLK_KP_LEFTPAREN, kKeyKPRightParen = SDLK_KP_RIGHTPAREN,
  kKeyKPLeftBrace = SDLK_KP_LEFTBRACE, kKeyKPRightBrace = SDLK_KP_RIGHTBRACE, kKeyKPTab = SDLK_KP_TAB, kKeyKPBackspace = SDLK_KP_BACKSPACE,
  kKeyKPA = SDLK_KP_A, kKeyKPB = SDLK_KP_B, kKeyKPC = SDLK_KP_C, kKeyKPD = SDLK_KP_D,
  kKeyKPE = SDLK_KP_E, kKeyKPF = SDLK_KP_F, kKeyKPXor = SDLK_KP_XOR, kKeyKPPower = SDLK_KP_POWER,
  kKeyKPPercent = SDLK_KP_PERCENT, kKeyKPLess = SDLK_KP_LESS, kKeyKPGreater = SDLK_KP_GREATER, kKeyKPAmpersand = SDLK_KP_AMPERSAND,
  kKeyKPDblAmpersand = SDLK_KP_DBLAMPERSAND, kKeyKPVerticalBar = SDLK_KP_VERTICALBAR, kKeyKPDblVerticalBar = SDLK_KP_DBLVERTICALBAR, kKeyKPColon = SDLK_KP_COLON,
  kKeyKPHash = SDLK_KP_HASH, kKeyKPSpace = SDLK_KP_SPACE, kKeyKPAt = SDLK_KP_AT, kKeyKPExclam = SDLK_KP_EXCLAM,
  kKeyKPMemStore = SDLK_KP_MEMSTORE, kKeyKPMemRecall = SDLK_KP_MEMRECALL, kKeyKPMemClear = SDLK_KP_MEMCLEAR, kKeyKPMemAdd = SDLK_KP_MEMADD,
  kKeyKPMemSubtract = SDLK_KP_MEMSUBTRACT, kKeyKPMemMultiply = SDLK_KP_MEMMULTIPLY, kKeyKPMemDivide = SDLK_KP_MEMDIVIDE, kKeyKPPlusMinus = SDLK_KP_PLUSMINUS,
  kKeyKPClear = SDLK_KP_CLEAR, kKeyKPClearEntry = SDLK_KP_CLEARENTRY, kKeyKPBinary = SDLK_KP_BINARY, kKeyKPOctal = SDLK_KP_OCTAL,
  kKeyKPDecimal = SDLK_KP_DECIMAL, kKeyKPHexadecimal = SDLK_KP_HEXADECIMAL, kKeyLeftCtrl = SDLK_LCTRL, kKeyLeftShift = SDLK_LSHIFT,
  kKeyLeftAlt = SDLK_LALT, kKeyLeftGui = SDLK_LGUI, kKeyRightCtrl = SDLK_RCTRL, kKeyRightShift = SDLK_RSHIFT,
  kKeyRightAlt = SDLK_RALT, kKeyRightGui = SDLK_RGUI, kKeyMode = SDLK_MODE, kKeyAudioNext = SDLK_AUDIONEXT,
  kKeyAudioPrev = SDLK_AUDIOPREV, kKeyAudioStop = SDLK_AUDIOSTOP, kKeyAudioPlay = SDLK_AUDIOPLAY, kKeyAudioMute = SDLK_AUDIOMUTE,
  kKeyMediaSelect = SDLK_MEDIASELECT, kKeyWWW = SDLK_WWW, kKeyMail = SDLK_MAIL, kKeyCalculator = SDLK_CALCULATOR,
  kKeyComputer = SDLK_COMPUTER, kKeyACSearch = SDLK_AC_SEARCH, kKeyACHome = SDLK_AC_HOME, kKeyACBack = SDLK_AC_BACK,
  kKeyACForward = SDLK_AC_FORWARD, kKeyACStop = SDLK_AC_STOP, kKeyACRefresh = SDLK_AC_REFRESH, kKeyACBookmarks = SDLK_AC_BOOKMARKS,
  kKeyBrightnessDown = SDLK_BRIGHTNESSDOWN, kKeyBrightnessUp = SDLK_BRIGHTNESSUP, kKeyDisplaySwitch = SDLK_DISPLAYSWITCH, kKeyKbdIllUmToggle = SDLK_KBDILLUMTOGGLE,
  kKeyKbdIllUmDown = SDLK_KBDILLUMDOWN, kKeyKbdIllUmUp = SDLK_KBDILLUMUP, kKeyEject = SDLK_EJECT, kKeySleep = SDLK_SLEEP
}
 

Functions

static bool requestIsGarbage (const Request *const request)
 

Typedef Documentation

◆ Event

typedef SDL_Event Events::Event

Definition at line 42 of file types.h.

◆ MainThreadCallerFunctor

typedef boost::function<void ()> Events::MainThreadCallerFunctor

Definition at line 346 of file types.h.

◆ RequestID

typedef RequestList::iterator Events::RequestID

Definition at line 48 of file requests.h.

◆ RequestList

Definition at line 47 of file requests.h.

◆ TimerFunc

typedef boost::function<uint32 (uint32)> Events::TimerFunc

A timer callback function.

Its argument is the current calling interval. The return value is the new interval. 0 means the timer is stopped.

Definition at line 50 of file timerman.h.

Enumeration Type Documentation

◆ EventType

Custom event types.

Enumerator
kEventKeyDown 

Keyboard key was pressed.

kEventKeyUp 

Keyboard key was released.

kEventMouseMove 

Mouse was moved.

kEventMouseDown 

Mouse button was pressed.

kEventMouseUp 

Mouse button was released.

kEventMouseWheel 

Mouse wheel was used.

kEventTextInput 

Text was written.

kEventQuit 

Application quit was requested.

kEventWindow 

Resize the window.

kEventUserMIN 

For range checks.

kEventITC 

Inter-thread communication.

kEventUserMAX 

For range checks.

Definition at line 45 of file types.h.

◆ EventWindowType

Sub events for kEventWindow.

Enumerator
kEventWindowResized 

Window has been resized.

kEventWindowSizeChanged 

Window's size was otherwise changed.

kEventWindowMinimized 

Window was minimized.

kEventWindowMaximized 

Window was maximized.

kEventWindowRestored 

Window was restored.

Definition at line 61 of file types.h.

◆ ITCEvent

Specific type of the inter-thread communication.

Enumerator
kITCEventSync 

Request a sync, letting all prior requests finish.

kITCEventCallInMainThread 

Request to call a function in the main thread.

kITCEventRebuildGLContainer 

Request the rebuilding of a GL container.

kITCEventDestroyGLContainer 

Request the destruction of a GL container.

kITCEventMAX 

For range checks.

Definition at line 70 of file types.h.

◆ Key

Enumerator
kKeyUnknown 
kKeyReturn 
kKeyEscape 
kKeyBackspace 
kKeyTab 
kKeySpace 
kKeyExclaim 
kKeyQuoteDbl 
kKeyHash 
kKeyPercent 
kKeyDollar 
kKeyAmpersand 
kKeyQuote 
kKeyLeftParen 
kKeyRightParen 
kKeyAsterisk 
kKeyPlus 
kKeyComma 
kKeyMinus 
kKeyPeriod 
kKeySlash 
kKey0 
kKey1 
kKey2 
kKey3 
kKey4 
kKey5 
kKey6 
kKey7 
kKey8 
kKey9 
kKeyColon 
kKeySemicolon 
kKeyLess 
kKeyEquals 
kKeyGreater 
kKeyQuestion 
kKeyAt 
kKeyCapsLock 
kKeyF1 
kKeyF2 
kKeyF3 
kKeyF4 
kKeyF5 
kKeyF6 
kKeyF7 
kKeyF8 
kKeyF9 
kKeyF10 
kKeyF11 
kKeyF12 
kKeyPrintScreen 
kKeyScrollLock 
kKeyPause 
kKeyInsert 
kKeyHome 
kKeyPageUp 
kKeyDelete 
kKeyEnd 
kKeyPageDown 
kKeyRight 
kKeyLeft 
kKeyDown 
kKeyUp 
kKeyNumLockClear 
kKeyKPDivide 
kKeyKPMultiply 
kKeyKPMinus 
kKeyKPPlus 
kKeyKPEnter 
kKeyKP1 
kKeyKP2 
kKeyKP3 
kKeyKP4 
kKeyKP5 
kKeyKP6 
kKeyKP7 
kKeyKP8 
kKeyKP9 
kKeyKP0 
kKeyKPPeriod 
kKeyApplication 
kKeyPower 
kKeyKPEquals 
kKeyF13 
kKeyF14 
kKeyF15 
kKeyF16 
kKeyF17 
kKeyF18 
kKeyF19 
kKeyF20 
kKeyF21 
kKeyF22 
kKeyF23 
kKeyF24 
kKeyExecute 
kKeyHelp 
kKeyMenu 
kKeySelect 
kKeyStop 
kKeyAgain 
kKeyUndo 
kKeyCut 
kKeyCopy 
kKeyPaste 
kKeyFind 
kKeyMute 
kKeyVolumeUp 
kKeyVolumeDown 
kKeyKPComma 
kKeyKPEqualsAs400 
kKeyAltErase 
kKeySysReq 
kKeyCancel 
kKeyClear 
kKeyPrior 
kKeyReturn2 
kKeySeparator 
kKeyOut 
kKeyOper 
kKeyClearAgain 
kKeyCRSel 
kKeyExSel 
kKeyKP00 
kKeyKP000 
kKeyThousandsSeperator 
kKeyDecimalSeperator 
kKeyCurrencyUnit 
kKeyCurrencySubUnit 
kKeyKPLeftParen 
kKeyKPRightParen 
kKeyKPLeftBrace 
kKeyKPRightBrace 
kKeyKPTab 
kKeyKPBackspace 
kKeyKPA 
kKeyKPB 
kKeyKPC 
kKeyKPD 
kKeyKPE 
kKeyKPF 
kKeyKPXor 
kKeyKPPower 
kKeyKPPercent 
kKeyKPLess 
kKeyKPGreater 
kKeyKPAmpersand 
kKeyKPDblAmpersand 
kKeyKPVerticalBar 
kKeyKPDblVerticalBar 
kKeyKPColon 
kKeyKPHash 
kKeyKPSpace 
kKeyKPAt 
kKeyKPExclam 
kKeyKPMemStore 
kKeyKPMemRecall 
kKeyKPMemClear 
kKeyKPMemAdd 
kKeyKPMemSubtract 
kKeyKPMemMultiply 
kKeyKPMemDivide 
kKeyKPPlusMinus 
kKeyKPClear 
kKeyKPClearEntry 
kKeyKPBinary 
kKeyKPOctal 
kKeyKPDecimal 
kKeyKPHexadecimal 
kKeyLeftCtrl 
kKeyLeftShift 
kKeyLeftAlt 
kKeyLeftGui 
kKeyRightCtrl 
kKeyRightShift 
kKeyRightAlt 
kKeyRightGui 
kKeyMode 
kKeyAudioNext 
kKeyAudioPrev 
kKeyAudioStop 
kKeyAudioPlay 
kKeyAudioMute 
kKeyMediaSelect 
kKeyWWW 
kKeyMail 
kKeyCalculator 
kKeyComputer 
kKeyACSearch 
kKeyACHome 
kKeyACBack 
kKeyACForward 
kKeyACStop 
kKeyACRefresh 
kKeyACBookmarks 
kKeyBrightnessDown 
kKeyBrightnessUp 
kKeyDisplaySwitch 
kKeyKbdIllUmToggle 
kKeyKbdIllUmDown 
kKeyKbdIllUmUp 
kKeyEject 
kKeySleep 

Definition at line 78 of file types.h.

Function Documentation

◆ requestIsGarbage()

static bool Events::requestIsGarbage ( const Request *const  request)
static

Definition at line 166 of file requests.cpp.

References Events::Request::isGarbage().

Referenced by Events::RequestManager::collectGarbage().

Here is the call graph for this function:
Here is the caller graph for this function: