#pragma once #include #include #include #include #include #define DEVICE_BUFFER_LENGTH 128 typedef struct Device Device; struct Device { char name[32]; uint16_t in[DEVICE_BUFFER_LENGTH]; uint8_t inPos; uint16_t out[DEVICE_BUFFER_LENGTH]; uint8_t outPos; void (*update)(Device* self); }; Device* createDevice( const char* name, void (*update)(Device* self) ); uint16_t deviceRead(Device* self); void deviceSend(Device* self, uint16_t value); bool deviceCanRead(Device* self);