structure Input = struct type window = MLton.Pointer.t (* Constants. *) val (PRESS, _) = _symbol "PRESS" public : ( unit -> int ) * ( int -> unit ); val PRESS = PRESS () val (REPEAT, _) = _symbol "REPEAT" public : ( unit -> int ) * ( int -> unit ); val REPEAT = REPEAT () val (RELEASE, _) = _symbol "RELEASE" public : ( unit -> int ) * ( int -> unit ); val RELEASE = RELEASE () val exportFramebufferSizeCallback = _export "mltonFramebufferSizeCallback" public : (int * int -> unit) -> unit; val setFramebufferSizeCallback = _import "setFramebufferSizeCallback" public : window -> unit; val exportCharCallback = _export "mltonCharCallback" public : (Word32.word -> unit) -> unit; val setCharCallback = _import "setCharCallback" public : window -> unit; val exportKeyCallback = _export "mltonKeyCallback" public : (int * int * int * int -> unit) -> unit; val setKeyCallback = _import "setKeyCallback" public : window -> unit; val (KEY_ESC, _) = _symbol "KEY_ESC" public : ( unit -> int ) * ( int -> unit ); val KEY_ESC = KEY_ESC () val (KEY_ENTER, _) = _symbol "KEY_ENTER" public : ( unit -> int ) * ( int -> unit ); val KEY_ENTER = KEY_ENTER () val (KEY_BACKSPACE, _) = _symbol "KEY_BACKSPACE" public : ( unit -> int ) * ( int -> unit ); val KEY_BACKSPACE = KEY_BACKSPACE () val (KEY_ARROW_LEFT, _) = _symbol "KEY_ARROW_LEFT" public : ( unit -> int ) * ( int -> unit ); val KEY_ARROW_LEFT = KEY_ARROW_LEFT () val (KEY_ARROW_UP, _) = _symbol "KEY_ARROW_UP" public : ( unit -> int ) * ( int -> unit ); val KEY_ARROW_UP = KEY_ARROW_UP () val (KEY_ARROW_RIGHT, _) = _symbol "KEY_ARROW_RIGHT" public : ( unit -> int ) * ( int -> unit ); val KEY_ARROW_RIGHT = KEY_ARROW_RIGHT () val (KEY_ARROW_DOWN, _) = _symbol "KEY_ARROW_DOWN" public : ( unit -> int ) * ( int -> unit ); val KEY_ARROW_DOWN = KEY_ARROW_DOWN () (* gamepad bindings below *) val getGamepadState = _import "getGamepadState" public : int -> int; val getLeftJoystickXAxisState = _import "getLeftJoystickXAxisState" public : unit -> Real32.real; val getLeftJoystickYAxisState = _import "getLeftJoystickYAxisState" public : unit -> Real32.real; val isCrossButtonPressed = _import "isCrossButtonPressed" public : unit -> int; val isCircleButtonPressed = _import "isCircleButtonPressed" public : unit -> int; val isSquareButtonPressed = _import "isSquareButtonPressed" public : unit -> int; val isTriangleButtonPressed = _import "isTriangleButtonPressed" public : unit -> int; val isR1ButtonPressed = _import "isR1ButtonPressed" public : unit -> int; val isL1ButtonPressed = _import "isL1ButtonPressed" public : unit -> int; val isDpadUpButtonPressed = _import "isDpadUpButtonPressed" public : unit -> int; val isDpadDownButtonPressed = _import "isDpadDownButtonPressed" public : unit -> int; val isDpadLeftButtonPressed = _import "isDpadLeftButtonPressed" public : unit -> int; val isDpadRightButtonPressed = _import "isDpadRightButtonPressed" public : unit -> int; val getR2State = _import "getR2State" public : unit -> Real32.real; val getL2State = _import "getL2State" public : unit -> Real32.real; end