28 lines
684 B
C++
28 lines
684 B
C++
// OMOTE Hardware Abstraction
|
|
// 2023 Matthew Colvin
|
|
|
|
#pragma once
|
|
#include <lvgl.h>
|
|
#include <string>
|
|
|
|
class HardwareInterface {
|
|
public:
|
|
struct batteryStatus {
|
|
/// @brief Percent of battery remaining (0-100]
|
|
int percentage;
|
|
/// @brief Voltage of battery in millivolts
|
|
int voltage;
|
|
/// @brief True - Battery is Charging
|
|
/// False - Battery discharging
|
|
bool isCharging;
|
|
};
|
|
|
|
HardwareInterface() = default;
|
|
|
|
virtual void init() = 0;
|
|
virtual void sendIR() = 0;
|
|
virtual void MQTTPublish(const char *topic, const char *payload) = 0;
|
|
virtual batteryStatus getBatteryPercentage() = 0;
|
|
virtual void debugPrint(std::string message) = 0;
|
|
};
|