Stardew Engine
Loading...
Searching...
No Matches
InputContext.h File Reference
#include "DynArray.h"
#include <stdbool.h>
#include "HandleDefs.h"
Include dependency graph for InputContext.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  InputMapping
 
struct  InputMappingArray
 
struct  TextInputState
 
struct  InputContext
 
struct  AxisBinding
 
struct  ButtonBinding
 
struct  ActiveInputBindingsMask
 

Macros

#define KEYSTROKE_LEFT   263
 
#define KEYSTROKE_RIGHT   262
 
#define KEYSTROKE_UP   265
 
#define KEYSTROKE_DOWN   264
 
#define KEYSTROKE_BACKSPACE   259
 
#define KEYSTROKE_ENTER   257
 
#define MAX_MAPPINGS   64
 
#define MAX_KEYS_DOWN_PER_FRAME   256
 

Typedefs

typedef struct InputMapping InputMapping
 
typedef struct InputContext InputContext
 

Enumerations

enum  InputMappingType { Axis , Button }
 
enum  ButtonSubType {
  MouseButton , KeyboardButton , GamepadButton , MouseScrollButton ,
  UnknownButton
}
 
enum  AxisSubType { MouseAxis , GamePadAxis , MouseScrollAxis , UnknownAxis }
 
enum  ControllerAxisType { gpAxis_LStick , gpAxis_RStick , gpAxis_LT , gpAxis_RT }
 
enum  WhichAxis { Axis_X , Axis_Y }
 
enum  WhichDirection { Axis_Pos , Axis_Neg }
 

Functions

void In_RecieveKeyboardKey (InputContext *context, int key, int scancode, int action, int mods)
 
void In_RecieveMouseMove (InputContext *context, double xposIn, double yposIn)
 
void In_RecieveMouseButton (InputContext *context, int button, int action, int mods)
 
void In_FramebufferResize (InputContext *context, int width, int height)
 
void In_RecieveScroll (InputContext *context, double xoffset, double yoffset)
 
void In_SetControllerPresent (int controllerNo)
 
void In_EndFrame (InputContext *context)
 
InputContext In_InitInputContext ()
 
struct AxisBinding In_FindAxisMapping (InputContext *context, const char *name)
 
struct ButtonBinding In_FindButtonMapping (InputContext *context, const char *name)
 
float In_GetAxisValue (InputContext *context, struct AxisBinding binding)
 
bool In_GetButtonValue (InputContext *context, struct ButtonBinding binding)
 
bool In_GetButtonPressThisFrame (InputContext *context, struct ButtonBinding binding)
 
bool In_GetButtonReleaseThisFrame (InputContext *context, struct ButtonBinding binding)
 
void In_GetMask (struct ActiveInputBindingsMask *pOutMask, InputContext *pCtx)
 
void In_SetMask (struct ActiveInputBindingsMask *mask, InputContext *pCtx)
 
void In_ActivateButtonBinding (struct ButtonBinding binding, struct ActiveInputBindingsMask *pMask)
 
void In_ActivateAxisBinding (struct AxisBinding binding, struct ActiveInputBindingsMask *pMask)
 
void In_DeactivateButtonBinding (struct ButtonBinding binding, struct ActiveInputBindingsMask *pMask)
 
void In_DeactivateAxisBinding (struct AxisBinding binding, struct ActiveInputBindingsMask *pMask)
 

Macro Definition Documentation

◆ KEYSTROKE_BACKSPACE

#define KEYSTROKE_BACKSPACE   259

◆ KEYSTROKE_DOWN

#define KEYSTROKE_DOWN   264

◆ KEYSTROKE_ENTER

#define KEYSTROKE_ENTER   257

◆ KEYSTROKE_LEFT

#define KEYSTROKE_LEFT   263

◆ KEYSTROKE_RIGHT

#define KEYSTROKE_RIGHT   262

◆ KEYSTROKE_UP

#define KEYSTROKE_UP   265

◆ MAX_KEYS_DOWN_PER_FRAME

#define MAX_KEYS_DOWN_PER_FRAME   256

◆ MAX_MAPPINGS

#define MAX_MAPPINGS   64

Typedef Documentation

◆ InputContext

typedef struct InputContext InputContext

◆ InputMapping

typedef struct InputMapping InputMapping

Enumeration Type Documentation

◆ AxisSubType

Enumerator
MouseAxis 
GamePadAxis 
MouseScrollAxis 
UnknownAxis 

◆ ButtonSubType

Enumerator
MouseButton 
KeyboardButton 
GamepadButton 
MouseScrollButton 
UnknownButton 

◆ ControllerAxisType

Enumerator
gpAxis_LStick 
gpAxis_RStick 
gpAxis_LT 
gpAxis_RT 

◆ InputMappingType

Enumerator
Axis 
Button 

◆ WhichAxis

enum WhichAxis
Enumerator
Axis_X 
Axis_Y 

◆ WhichDirection

Enumerator
Axis_Pos 
Axis_Neg 

Function Documentation

◆ In_ActivateAxisBinding()

void In_ActivateAxisBinding ( struct AxisBinding  binding,
struct ActiveInputBindingsMask pMask 
)

◆ In_ActivateButtonBinding()

void In_ActivateButtonBinding ( struct ButtonBinding  binding,
struct ActiveInputBindingsMask pMask 
)

◆ In_DeactivateAxisBinding()

void In_DeactivateAxisBinding ( struct AxisBinding  binding,
struct ActiveInputBindingsMask pMask 
)

◆ In_DeactivateButtonBinding()

void In_DeactivateButtonBinding ( struct ButtonBinding  binding,
struct ActiveInputBindingsMask pMask 
)

◆ In_EndFrame()

void In_EndFrame ( InputContext context)

◆ In_FindAxisMapping()

struct AxisBinding In_FindAxisMapping ( InputContext context,
const char *  name 
)

◆ In_FindButtonMapping()

struct ButtonBinding In_FindButtonMapping ( InputContext context,
const char *  name 
)

◆ In_FramebufferResize()

void In_FramebufferResize ( InputContext context,
int  width,
int  height 
)

◆ In_GetAxisValue()

float In_GetAxisValue ( InputContext context,
struct AxisBinding  binding 
)

◆ In_GetButtonPressThisFrame()

bool In_GetButtonPressThisFrame ( InputContext context,
struct ButtonBinding  binding 
)

◆ In_GetButtonReleaseThisFrame()

bool In_GetButtonReleaseThisFrame ( InputContext context,
struct ButtonBinding  binding 
)

◆ In_GetButtonValue()

bool In_GetButtonValue ( InputContext context,
struct ButtonBinding  binding 
)

◆ In_GetMask()

void In_GetMask ( struct ActiveInputBindingsMask pOutMask,
InputContext pCtx 
)

◆ In_InitInputContext()

InputContext In_InitInputContext ( )

◆ In_RecieveKeyboardKey()

void In_RecieveKeyboardKey ( InputContext context,
int  key,
int  scancode,
int  action,
int  mods 
)

◆ In_RecieveMouseButton()

void In_RecieveMouseButton ( InputContext context,
int  button,
int  action,
int  mods 
)

◆ In_RecieveMouseMove()

void In_RecieveMouseMove ( InputContext context,
double  xposIn,
double  yposIn 
)

◆ In_RecieveScroll()

void In_RecieveScroll ( InputContext context,
double  xoffset,
double  yoffset 
)

◆ In_SetControllerPresent()

void In_SetControllerPresent ( int  controllerNo)

◆ In_SetMask()

void In_SetMask ( struct ActiveInputBindingsMask mask,
InputContext pCtx 
)