#pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include "view/container_vm.h" #include #include #include #include "helpers/hid_worker.h" class HIDApp { public: enum class EventType : uint8_t { GENERIC_EVENT_ENUM_VALUES, Next, MenuSelected, Stay, Retry, }; enum class SceneType : uint8_t { GENERIC_SCENE_ENUM_VALUES, Read, ReadSuccess, }; class Event { public: union { int32_t menu_index; } payload; EventType type; }; HIDApp(); ~HIDApp(); void run(void* args); // private: SceneController, HIDApp> scene_controller; ViewController view_controller; RecordController notification; RecordController storage; RecordController dialogs; TextStore text_store; HIDWorker worker; };