add support for bool to protocol

This commit is contained in:
Samuel Sadok
2018-02-25 19:38:06 -08:00
parent 36b451a278
commit facb3f33e7
+22 -2
View File
@@ -33,10 +33,16 @@ inline size_t write_le(T value, uint8_t* buffer);
template<typename T>
inline size_t read_le(T* value, const uint8_t* buffer);
template<>
inline size_t write_le<bool>(bool value, uint8_t* buffer) {
buffer[0] = value ? 1 : 0;
return 1;
}
template<>
inline size_t write_le<uint8_t>(uint8_t value, uint8_t* buffer) {
buffer[0] = value;
return 2;
return 1;
}
template<>
@@ -71,10 +77,16 @@ inline size_t write_le<float>(float value, uint8_t* buffer) {
return write_le<uint32_t>(*reinterpret_cast<const uint32_t*>(&value), buffer);
}
template<>
inline size_t read_le<bool>(bool* value, const uint8_t* buffer) {
*value = buffer[0];
return 1;
}
template<>
inline size_t read_le<uint8_t>(uint8_t* value, const uint8_t* buffer) {
*value = buffer[0];
return 2;
return 1;
}
template<>
@@ -358,6 +370,14 @@ template<>
inline const char* get_default_json_modifier<uint8_t>() {
return "\"type\":\"uint8\",\"access\":\"rw\"";
}
template<>
inline const char* get_default_json_modifier<const bool>() {
return "\"type\":\"bool\",\"access\":\"r\"";
}
template<>
inline const char* get_default_json_modifier<bool>() {
return "\"type\":\"bool\",\"access\":\"rw\"";
}
class Endpoint {
public: