3fe1dc0312
* **New Features** * Added a HAL device module providing device enumeration, type queries and a HAL↔kernel bridge. * **Improvements** * Integrated HAL module into startup; standardized module names, includes and lifecycle logging; safer file append behavior; broader build support. * **API Changes** * Driver lifecycle now uses explicit add/remove semantics; C and HAL device type/lookup APIs clarified. * **Chores** * Added module README and Apache‑2.0 license; updated build configuration to include the new module. * **Fixes** * Updated tests and object file handling to behave correctly.
33 lines
613 B
C++
33 lines
613 B
C++
#pragma once
|
|
|
|
#include <tactility/hal/Device.h>
|
|
#include "TouchDriver.h"
|
|
|
|
#include <lvgl.h>
|
|
|
|
namespace tt::hal::touch {
|
|
|
|
class Display;
|
|
|
|
class TouchDevice : public Device {
|
|
|
|
public:
|
|
|
|
Type getType() const override { return Type::Touch; }
|
|
|
|
virtual bool start() = 0;
|
|
virtual bool stop() = 0;
|
|
|
|
virtual bool supportsLvgl() const = 0;
|
|
virtual bool startLvgl(lv_display_t* display) = 0;
|
|
virtual bool stopLvgl() = 0;
|
|
|
|
virtual lv_indev_t* _Nullable getLvglIndev() = 0;
|
|
|
|
virtual bool supportsTouchDriver() = 0;
|
|
|
|
virtual std::shared_ptr<TouchDriver> _Nullable getTouchDriver() = 0;
|
|
};
|
|
|
|
}
|