#include "HardwareInterface.h" HardwareAbstract::HardwareAbstract(std::shared_ptr aBattery) : mBattery(std::move(aBattery)){ } std::optional HardwareAbstract::getBatteryStatus(){ if(mBattery){ HardwareAbstract::batteryStatus currentStatus; currentStatus.percentage = mBattery->getPercentage(); currentStatus.isCharging = mBattery->isCharging(); return currentStatus; } return std::nullopt; }