ref: ace08f5c1ae63e6b10191cb3240fa7323b9ce0c5
dir: /psx/dev/input.c/
#ifndef PAD_H
#define PAD_H
#include "input.h"
#include <string.h>
#include <stdlib.h>
psx_input_t* psx_input_create() {
return (psx_input_t*)malloc(sizeof(psx_input_t));
}
void psx_input_init(psx_input_t* input) {
memset(input, 0, sizeof(psx_input_t));
}
void psx_input_set_write_func(psx_input_t* input, psx_input_write_t write_func) {
input->write_func = write_func;
}
void psx_input_set_read_func(psx_input_t* input, psx_input_read_t read_func) {
input->read_func = read_func;
}
void psx_input_set_on_button_press_func(psx_input_t* input, psx_input_on_button_press_t on_button_press_func) {
input->on_button_press_func = on_button_press_func;
}
void psx_input_set_on_button_release_func(psx_input_t* input, psx_input_on_button_release_t on_button_release_func) {
input->on_button_release_func = on_button_release_func;
}
void psx_input_set_on_analog_change_func(psx_input_t* input, psx_input_on_analog_change_t on_analog_change_func) {
input->on_analog_change_func = on_analog_change_func;
}
void psx_input_destroy(psx_input_t* input) {
free(input->udata);
free(input);
}
#endif