#pragma once #include "SdlTouch.h" #include /** Hack: variable comes from LvglTask.cpp */ extern lv_disp_t* displayHandle; class SdlDisplay final : public tt::hal::display::DisplayDevice { public: std::string getName() const override { return "SDL Display"; } std::string getDescription() const override { return ""; } bool start() override { return true; } bool stop() override { tt_crash("Not supported"); } bool supportsLvgl() const override { return true; } bool startLvgl() override { return displayHandle != nullptr; } bool stopLvgl() override { tt_crash("Not supported"); } lv_display_t* _Nullable getLvglDisplay() const override { return displayHandle; } std::shared_ptr _Nullable getTouchDevice() override { return std::make_shared(); } bool supportsDisplayDriver() const override { return false; } std::shared_ptr _Nullable getDisplayDriver() override { return nullptr; } }; std::shared_ptr createDisplay() { return std::make_shared(); }