#pragma once
#include <stdbool.h>
#include <stdint.h>
#include "../rute_base.h"
#ifdef __cplusplus
extern "C" {
#endif
struct RUInputEventFuncs;
struct RUInputEvent;
typedef struct RUInputEventFuncs {
int (*modifiers)(struct RUBase* self_c);
void (*set_modifiers)(struct RUBase* self_c, int amodifiers);
uint64_t (*timestamp)(struct RUBase* self_c);
void (*set_timestamp)(struct RUBase* self_c, uint64_t atimestamp);
} RUInputEventFuncs;
typedef struct RUInputEventAllFuncs {
struct RUEventFuncs* event_funcs;
struct RUInputEventFuncs* input_event_funcs;
} RUInputEventAllFuncs;
typedef struct RUInputEvent {
RUBase* qt_data;
RUBase* host_data;
struct RUInputEventAllFuncs* all_funcs;
} RUInputEvent;
extern RUInputEventFuncs s_input_event_funcs;
extern RUInputEventAllFuncs s_input_event_all_funcs;
#ifdef __cplusplus
}
#endif