1*853c0dc5SEd Tanous #pragma once 2*853c0dc5SEd Tanous #include <nlohmann/json.hpp> 3*853c0dc5SEd Tanous 4*853c0dc5SEd Tanous namespace battery 5*853c0dc5SEd Tanous { 6*853c0dc5SEd Tanous // clang-format off 7*853c0dc5SEd Tanous 8*853c0dc5SEd Tanous enum class ChargeState{ 9*853c0dc5SEd Tanous Invalid, 10*853c0dc5SEd Tanous Idle, 11*853c0dc5SEd Tanous Charging, 12*853c0dc5SEd Tanous Discharging, 13*853c0dc5SEd Tanous }; 14*853c0dc5SEd Tanous 15*853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ChargeState, { 16*853c0dc5SEd Tanous {ChargeState::Invalid, "Invalid"}, 17*853c0dc5SEd Tanous {ChargeState::Idle, "Idle"}, 18*853c0dc5SEd Tanous {ChargeState::Charging, "Charging"}, 19*853c0dc5SEd Tanous {ChargeState::Discharging, "Discharging"}, 20*853c0dc5SEd Tanous }); 21*853c0dc5SEd Tanous 22*853c0dc5SEd Tanous } 23*853c0dc5SEd Tanous // clang-format on 24