Load game-input backend at compile time

db4
Joe Groff 2008-08-31 11:00:26 -07:00
parent 18d629a916
commit 15a8ff071c
4 changed files with 12 additions and 6 deletions

View File

@ -2,12 +2,14 @@ USING: eval multiline system combinators ;
IN: game-input.backend
STRING: set-backend-for-macosx
USING: namespaces game-input.backend.iokit game-input ;
USING: namespaces parser game-input.backend.iokit ;
<< "game-input" (use+) >>
iokit-game-input-backend game-input-backend set-global
;
STRING: set-backend-for-windows
USING: namespaces game-input.backend.dinput game-input ;
USING: namespaces parser game-input.backend.dinput ;
<< "game-input" (use+) >>
dinput-game-input-backend game-input-backend set-global
;

View File

@ -1,10 +1,11 @@
USING: windows.dinput windows.dinput.constants game-input
USING: windows.dinput windows.dinput.constants parser
symbols alien.c-types windows.ole32 namespaces assocs kernel
arrays vectors windows.kernel32 windows.com windows.dinput
shuffle windows.user32 windows.messages sequences combinators
math.geometry.rect ui.windows accessors math windows alien
alien.strings io.encodings.utf16 continuations byte-arrays
locals game-input.backend.dinput.keys-array ;
<< "game-input" (use+) >>
IN: game-input.backend.dinput
SINGLETON: dinput-game-input-backend

View File

@ -1,9 +1,10 @@
USING: cocoa cocoa.plists core-foundation iokit iokit.hid
kernel cocoa.enumeration destructors math.parser cocoa.application
sequences locals combinators.short-circuit game-input threads
sequences locals combinators.short-circuit threads
symbols namespaces assocs vectors arrays combinators
core-foundation.run-loop accessors sequences.private
alien.c-types math ;
alien.c-types math parser ;
<< "game-input" (use+) >>
IN: game-input.backend.iokit
SINGLETON: iokit-game-input-backend

View File

@ -28,7 +28,6 @@ M: f (reset-game-input) ;
PRIVATE>
: open-game-input ( -- )
load-game-input-backend
game-input-opened? [
(open-game-input)
game-input-opened on
@ -76,3 +75,6 @@ M: keyboard-state clone
call-next-method dup keys>> clone >>keys ;
HOOK: read-keyboard game-input-backend ( -- keyboard-state )
load-game-input-backend