Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
Loading...
Searching...
No Matches
app_input_state.h
Go to the documentation of this file.
1#ifndef APP_INPUT_STATE_H
2#define APP_INPUT_STATE_H
3
13#include "adaptive_sampler.h"
14#include "app_binding.h"
15#include "camera.h"
16#include "gamepad_input.h"
17#include <stdbool.h>
18
31
37
43
44#include "app_subsystem.h"
45int app_input_subsys_init(struct App* app);
46void app_input_subsys_cleanup(struct App* app);
47#define APP_INPUT_DESCRIPTOR \
48 {"input", app_input_subsys_init, app_input_subsys_cleanup}
49
50#endif /* APP_INPUT_STATE_H */
Adaptive sampling utility for performance metrics.
int app_input_subsys_init(struct App *app)
Definition app_input_state.c:31
void app_input_subsys_cleanup(struct App *app)
Definition app_input_state.c:44
void app_input_state_init(AppInput *input)
Initialize all input sub-systems to default state.
Definition app_input_state.c:14
void app_input_state_cleanup(AppInput *input)
Release all input resources.
Definition app_input_state.c:25
Subsystem descriptor pattern for structured init/cleanup.
First-person camera module with realistic physics and head-bobbing.
Gamepad/controller input adapter for camera control.
Collector for performance samples within a rolling or fixed window.
Definition adaptive_sampler.h:38
Central registry that holds application key bindings.
Definition app_binding.h:48
Camera, gamepad, key-bindings, and input smoothing grouped together.
Definition app_input_state.h:23
AdaptiveSampler fps_sampler
Definition app_input_state.h:28
AppBindingRegistry binding_registry
Definition app_input_state.h:27
GamepadState gamepad
Definition app_input_state.h:25
Camera camera
Definition app_input_state.h:24
bool camera_enabled
Definition app_input_state.h:29
The central state container for the entire application.
Definition app.h:24
Represents a 3D camera with orientation, movement, and physical properties.
Definition camera.h:41
Definition gamepad_input.h:45