mirror of
https://github.com/BotChain-Robots/firmware.git
synced 2026-07-08 17:47:21 +02:00
Display control code
This commit is contained in:
@@ -15,11 +15,15 @@ struct current_angle {
|
||||
int16_t angle;
|
||||
};
|
||||
|
||||
typedef std::variant<target_angle, current_angle> sensor_value;
|
||||
struct target_text {
|
||||
std::string text;
|
||||
};
|
||||
|
||||
typedef std::variant<target_angle, current_angle, target_text> sensor_value;
|
||||
|
||||
class SensorMessageBuilder {
|
||||
public:
|
||||
SensorMessageBuilder() : builder_(128) {
|
||||
SensorMessageBuilder() : builder_(256) {
|
||||
}
|
||||
|
||||
SerializedMessage build_sensor_message(std::vector<sensor_value> &values);
|
||||
|
||||
18
components/flatbuffers/include/TextControlMessageBuilder.h
Normal file
18
components/flatbuffers/include/TextControlMessageBuilder.h
Normal file
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// Created by Johnathon Slightham on 2025-06-30.
|
||||
//
|
||||
|
||||
#ifndef TEXTCONTROLMESSAGEBUILDER_H_
|
||||
#define TEXTCONTROLMESSAGEBUILDER_H_
|
||||
|
||||
#include "flatbuffers_generated/TextControlMessage_generated.h"
|
||||
#include "flatbuffers/flatbuffers.h"
|
||||
|
||||
namespace Flatbuffers {
|
||||
class TextControlMessageBuilder {
|
||||
public:
|
||||
static const Messaging::TextControlMessage* parse_text_control_message(const uint8_t* buffer);
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -7,7 +7,7 @@
|
||||
#include "flatbuffers/flatbuffers.h"
|
||||
|
||||
// Ensure the included flatbuffers.h is the same version as when this file was
|
||||
// // generated, otherwise it may not be compatible.
|
||||
// generated, otherwise it may not be compatible.
|
||||
// static_assert(FLATBUFFERS_VERSION_MAJOR == 25 &&
|
||||
// FLATBUFFERS_VERSION_MINOR == 2 &&
|
||||
// FLATBUFFERS_VERSION_REVISION == 10,
|
||||
@@ -25,35 +25,71 @@ enum ModuleType : int8_t {
|
||||
ModuleType_DC_MOTOR = 2,
|
||||
ModuleType_BATTERY = 3,
|
||||
ModuleType_SERVO_2 = 4,
|
||||
ModuleType_DISPLAY = 5,
|
||||
ModuleType_GRIPPER = 6,
|
||||
ModuleType_SPEAKER = 7,
|
||||
ModuleType_IMU = 8,
|
||||
ModuleType_DISTANCE_SENSOR = 9,
|
||||
ModuleType_SPLITTER_2 = 10,
|
||||
ModuleType_SPLITTER_3 = 11,
|
||||
ModuleType_SPLITTER_4 = 12,
|
||||
ModuleType_SPLITTER_5 = 13,
|
||||
ModuleType_SPLITTER_6 = 14,
|
||||
ModuleType_SPLITTER_7 = 15,
|
||||
ModuleType_SPLITTER_8 = 16,
|
||||
ModuleType_MIN = ModuleType_SPLITTER,
|
||||
ModuleType_MAX = ModuleType_SERVO_2
|
||||
ModuleType_MAX = ModuleType_SPLITTER_8
|
||||
};
|
||||
|
||||
inline const ModuleType (&EnumValuesModuleType())[5] {
|
||||
inline const ModuleType (&EnumValuesModuleType())[17] {
|
||||
static const ModuleType values[] = {
|
||||
ModuleType_SPLITTER,
|
||||
ModuleType_SERVO_1,
|
||||
ModuleType_DC_MOTOR,
|
||||
ModuleType_BATTERY,
|
||||
ModuleType_SERVO_2
|
||||
ModuleType_SERVO_2,
|
||||
ModuleType_DISPLAY,
|
||||
ModuleType_GRIPPER,
|
||||
ModuleType_SPEAKER,
|
||||
ModuleType_IMU,
|
||||
ModuleType_DISTANCE_SENSOR,
|
||||
ModuleType_SPLITTER_2,
|
||||
ModuleType_SPLITTER_3,
|
||||
ModuleType_SPLITTER_4,
|
||||
ModuleType_SPLITTER_5,
|
||||
ModuleType_SPLITTER_6,
|
||||
ModuleType_SPLITTER_7,
|
||||
ModuleType_SPLITTER_8
|
||||
};
|
||||
return values;
|
||||
}
|
||||
|
||||
inline const char * const *EnumNamesModuleType() {
|
||||
static const char * const names[6] = {
|
||||
static const char * const names[18] = {
|
||||
"SPLITTER",
|
||||
"SERVO_1",
|
||||
"DC_MOTOR",
|
||||
"BATTERY",
|
||||
"SERVO_2",
|
||||
"DISPLAY",
|
||||
"GRIPPER",
|
||||
"SPEAKER",
|
||||
"IMU",
|
||||
"DISTANCE_SENSOR",
|
||||
"SPLITTER_2",
|
||||
"SPLITTER_3",
|
||||
"SPLITTER_4",
|
||||
"SPLITTER_5",
|
||||
"SPLITTER_6",
|
||||
"SPLITTER_7",
|
||||
"SPLITTER_8",
|
||||
nullptr
|
||||
};
|
||||
return names;
|
||||
}
|
||||
|
||||
inline const char *EnumNameModuleType(ModuleType e) {
|
||||
if (::flatbuffers::IsOutRange(e, ModuleType_SPLITTER, ModuleType_SERVO_2)) return "";
|
||||
if (::flatbuffers::IsOutRange(e, ModuleType_SPLITTER, ModuleType_SPLITTER_8)) return "";
|
||||
const size_t index = static_cast<size_t>(e);
|
||||
return EnumNamesModuleType()[index];
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// automatically generated by the FlatBuffers compiler, do not modify
|
||||
|
||||
|
||||
#ifndef FLATBUFFERS_GENERATED_SENSORMESSAGE_MESSAGING_H_
|
||||
#define FLATBUFFERS_GENERATED_SENSORMESSAGE_MESSAGING_H_
|
||||
|
||||
@@ -17,6 +18,9 @@ namespace Messaging {
|
||||
struct TargetAngle;
|
||||
struct TargetAngleBuilder;
|
||||
|
||||
struct CurrentText;
|
||||
struct CurrentTextBuilder;
|
||||
|
||||
struct CurrentAngle;
|
||||
struct CurrentAngleBuilder;
|
||||
|
||||
@@ -27,57 +31,69 @@ enum SensorValue : uint8_t {
|
||||
SensorValue_NONE = 0,
|
||||
SensorValue_TargetAngle = 1,
|
||||
SensorValue_CurrentAngle = 2,
|
||||
SensorValue_CurrentText = 3,
|
||||
SensorValue_MIN = SensorValue_NONE,
|
||||
SensorValue_MAX = SensorValue_CurrentAngle
|
||||
SensorValue_MAX = SensorValue_CurrentText
|
||||
};
|
||||
|
||||
inline const SensorValue (&EnumValuesSensorValue())[3] {
|
||||
inline const SensorValue (&EnumValuesSensorValue())[4] {
|
||||
static const SensorValue values[] = {
|
||||
SensorValue_NONE, SensorValue_TargetAngle, SensorValue_CurrentAngle};
|
||||
SensorValue_NONE,
|
||||
SensorValue_TargetAngle,
|
||||
SensorValue_CurrentAngle,
|
||||
SensorValue_CurrentText
|
||||
};
|
||||
return values;
|
||||
}
|
||||
|
||||
inline const char *const *EnumNamesSensorValue() {
|
||||
static const char *const names[4] = {"NONE", "TargetAngle", "CurrentAngle",
|
||||
nullptr};
|
||||
inline const char * const *EnumNamesSensorValue() {
|
||||
static const char * const names[5] = {
|
||||
"NONE",
|
||||
"TargetAngle",
|
||||
"CurrentAngle",
|
||||
"CurrentText",
|
||||
nullptr
|
||||
};
|
||||
return names;
|
||||
}
|
||||
|
||||
inline const char *EnumNameSensorValue(SensorValue e) {
|
||||
if (::flatbuffers::IsOutRange(e, SensorValue_NONE, SensorValue_CurrentAngle))
|
||||
return "";
|
||||
if (::flatbuffers::IsOutRange(e, SensorValue_NONE, SensorValue_CurrentText)) return "";
|
||||
const size_t index = static_cast<size_t>(e);
|
||||
return EnumNamesSensorValue()[index];
|
||||
}
|
||||
|
||||
template <typename T> struct SensorValueTraits {
|
||||
template<typename T> struct SensorValueTraits {
|
||||
static const SensorValue enum_value = SensorValue_NONE;
|
||||
};
|
||||
|
||||
template <> struct SensorValueTraits<Messaging::TargetAngle> {
|
||||
template<> struct SensorValueTraits<Messaging::TargetAngle> {
|
||||
static const SensorValue enum_value = SensorValue_TargetAngle;
|
||||
};
|
||||
|
||||
template <> struct SensorValueTraits<Messaging::CurrentAngle> {
|
||||
template<> struct SensorValueTraits<Messaging::CurrentAngle> {
|
||||
static const SensorValue enum_value = SensorValue_CurrentAngle;
|
||||
};
|
||||
|
||||
bool VerifySensorValue(::flatbuffers::Verifier &verifier, const void *obj,
|
||||
SensorValue type);
|
||||
bool VerifySensorValueVector(
|
||||
::flatbuffers::Verifier &verifier,
|
||||
const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values,
|
||||
const ::flatbuffers::Vector<uint8_t> *types);
|
||||
template<> struct SensorValueTraits<Messaging::CurrentText> {
|
||||
static const SensorValue enum_value = SensorValue_CurrentText;
|
||||
};
|
||||
|
||||
bool VerifySensorValue(::flatbuffers::Verifier &verifier, const void *obj, SensorValue type);
|
||||
bool VerifySensorValueVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types);
|
||||
|
||||
struct TargetAngle FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
|
||||
typedef TargetAngleBuilder Builder;
|
||||
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
|
||||
VT_VALUE = 4
|
||||
};
|
||||
int16_t value() const { return GetField<int16_t>(VT_VALUE, 0); }
|
||||
int16_t value() const {
|
||||
return GetField<int16_t>(VT_VALUE, 0);
|
||||
}
|
||||
bool Verify(::flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
VerifyField<int16_t>(verifier, VT_VALUE, 2) && verifier.EndTable();
|
||||
VerifyField<int16_t>(verifier, VT_VALUE, 2) &&
|
||||
verifier.EndTable();
|
||||
}
|
||||
};
|
||||
|
||||
@@ -89,7 +105,7 @@ struct TargetAngleBuilder {
|
||||
fbb_.AddElement<int16_t>(TargetAngle::VT_VALUE, value, 0);
|
||||
}
|
||||
explicit TargetAngleBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
|
||||
: fbb_(_fbb) {
|
||||
: fbb_(_fbb) {
|
||||
start_ = fbb_.StartTable();
|
||||
}
|
||||
::flatbuffers::Offset<TargetAngle> Finish() {
|
||||
@@ -99,22 +115,77 @@ struct TargetAngleBuilder {
|
||||
}
|
||||
};
|
||||
|
||||
inline ::flatbuffers::Offset<TargetAngle>
|
||||
CreateTargetAngle(::flatbuffers::FlatBufferBuilder &_fbb, int16_t value = 0) {
|
||||
inline ::flatbuffers::Offset<TargetAngle> CreateTargetAngle(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
int16_t value = 0) {
|
||||
TargetAngleBuilder builder_(_fbb);
|
||||
builder_.add_value(value);
|
||||
return builder_.Finish();
|
||||
}
|
||||
|
||||
struct CurrentText FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
|
||||
typedef CurrentTextBuilder Builder;
|
||||
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
|
||||
VT_VALUE = 4
|
||||
};
|
||||
const ::flatbuffers::String *value() const {
|
||||
return GetPointer<const ::flatbuffers::String *>(VT_VALUE);
|
||||
}
|
||||
bool Verify(::flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
VerifyOffset(verifier, VT_VALUE) &&
|
||||
verifier.VerifyString(value()) &&
|
||||
verifier.EndTable();
|
||||
}
|
||||
};
|
||||
|
||||
struct CurrentTextBuilder {
|
||||
typedef CurrentText Table;
|
||||
::flatbuffers::FlatBufferBuilder &fbb_;
|
||||
::flatbuffers::uoffset_t start_;
|
||||
void add_value(::flatbuffers::Offset<::flatbuffers::String> value) {
|
||||
fbb_.AddOffset(CurrentText::VT_VALUE, value);
|
||||
}
|
||||
explicit CurrentTextBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
|
||||
: fbb_(_fbb) {
|
||||
start_ = fbb_.StartTable();
|
||||
}
|
||||
::flatbuffers::Offset<CurrentText> Finish() {
|
||||
const auto end = fbb_.EndTable(start_);
|
||||
auto o = ::flatbuffers::Offset<CurrentText>(end);
|
||||
return o;
|
||||
}
|
||||
};
|
||||
|
||||
inline ::flatbuffers::Offset<CurrentText> CreateCurrentText(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
::flatbuffers::Offset<::flatbuffers::String> value = 0) {
|
||||
CurrentTextBuilder builder_(_fbb);
|
||||
builder_.add_value(value);
|
||||
return builder_.Finish();
|
||||
}
|
||||
|
||||
inline ::flatbuffers::Offset<CurrentText> CreateCurrentTextDirect(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
const char *value = nullptr) {
|
||||
auto value__ = value ? _fbb.CreateString(value) : 0;
|
||||
return Messaging::CreateCurrentText(
|
||||
_fbb,
|
||||
value__);
|
||||
}
|
||||
|
||||
struct CurrentAngle FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
|
||||
typedef CurrentAngleBuilder Builder;
|
||||
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
|
||||
VT_VALUE = 4
|
||||
};
|
||||
int16_t value() const { return GetField<int16_t>(VT_VALUE, 0); }
|
||||
int16_t value() const {
|
||||
return GetField<int16_t>(VT_VALUE, 0);
|
||||
}
|
||||
bool Verify(::flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
VerifyField<int16_t>(verifier, VT_VALUE, 2) && verifier.EndTable();
|
||||
VerifyField<int16_t>(verifier, VT_VALUE, 2) &&
|
||||
verifier.EndTable();
|
||||
}
|
||||
};
|
||||
|
||||
@@ -126,7 +197,7 @@ struct CurrentAngleBuilder {
|
||||
fbb_.AddElement<int16_t>(CurrentAngle::VT_VALUE, value, 0);
|
||||
}
|
||||
explicit CurrentAngleBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
|
||||
: fbb_(_fbb) {
|
||||
: fbb_(_fbb) {
|
||||
start_ = fbb_.StartTable();
|
||||
}
|
||||
::flatbuffers::Offset<CurrentAngle> Finish() {
|
||||
@@ -136,8 +207,9 @@ struct CurrentAngleBuilder {
|
||||
}
|
||||
};
|
||||
|
||||
inline ::flatbuffers::Offset<CurrentAngle>
|
||||
CreateCurrentAngle(::flatbuffers::FlatBufferBuilder &_fbb, int16_t value = 0) {
|
||||
inline ::flatbuffers::Offset<CurrentAngle> CreateCurrentAngle(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
int16_t value = 0) {
|
||||
CurrentAngleBuilder builder_(_fbb);
|
||||
builder_.add_value(value);
|
||||
return builder_.Finish();
|
||||
@@ -153,8 +225,7 @@ struct SensorMessage FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
|
||||
return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_VALUES_TYPE);
|
||||
}
|
||||
const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values() const {
|
||||
return GetPointer<
|
||||
const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *>(VT_VALUES);
|
||||
return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *>(VT_VALUES);
|
||||
}
|
||||
bool Verify(::flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
@@ -171,17 +242,14 @@ struct SensorMessageBuilder {
|
||||
typedef SensorMessage Table;
|
||||
::flatbuffers::FlatBufferBuilder &fbb_;
|
||||
::flatbuffers::uoffset_t start_;
|
||||
void add_values_type(
|
||||
::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> values_type) {
|
||||
void add_values_type(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> values_type) {
|
||||
fbb_.AddOffset(SensorMessage::VT_VALUES_TYPE, values_type);
|
||||
}
|
||||
void add_values(
|
||||
::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>>
|
||||
values) {
|
||||
void add_values(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>> values) {
|
||||
fbb_.AddOffset(SensorMessage::VT_VALUES, values);
|
||||
}
|
||||
explicit SensorMessageBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
|
||||
: fbb_(_fbb) {
|
||||
: fbb_(_fbb) {
|
||||
start_ = fbb_.StartTable();
|
||||
}
|
||||
::flatbuffers::Offset<SensorMessage> Finish() {
|
||||
@@ -194,8 +262,7 @@ struct SensorMessageBuilder {
|
||||
inline ::flatbuffers::Offset<SensorMessage> CreateSensorMessage(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> values_type = 0,
|
||||
::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>>
|
||||
values = 0) {
|
||||
::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<void>>> values = 0) {
|
||||
SensorMessageBuilder builder_(_fbb);
|
||||
builder_.add_values(values);
|
||||
builder_.add_values_type(values_type);
|
||||
@@ -206,43 +273,41 @@ inline ::flatbuffers::Offset<SensorMessage> CreateSensorMessageDirect(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
const std::vector<uint8_t> *values_type = nullptr,
|
||||
const std::vector<::flatbuffers::Offset<void>> *values = nullptr) {
|
||||
auto values_type__ =
|
||||
values_type ? _fbb.CreateVector<uint8_t>(*values_type) : 0;
|
||||
auto values__ =
|
||||
values ? _fbb.CreateVector<::flatbuffers::Offset<void>>(*values) : 0;
|
||||
return Messaging::CreateSensorMessage(_fbb, values_type__, values__);
|
||||
auto values_type__ = values_type ? _fbb.CreateVector<uint8_t>(*values_type) : 0;
|
||||
auto values__ = values ? _fbb.CreateVector<::flatbuffers::Offset<void>>(*values) : 0;
|
||||
return Messaging::CreateSensorMessage(
|
||||
_fbb,
|
||||
values_type__,
|
||||
values__);
|
||||
}
|
||||
|
||||
inline bool VerifySensorValue(::flatbuffers::Verifier &verifier,
|
||||
const void *obj, SensorValue type) {
|
||||
inline bool VerifySensorValue(::flatbuffers::Verifier &verifier, const void *obj, SensorValue type) {
|
||||
switch (type) {
|
||||
case SensorValue_NONE: {
|
||||
return true;
|
||||
}
|
||||
case SensorValue_TargetAngle: {
|
||||
auto ptr = reinterpret_cast<const Messaging::TargetAngle *>(obj);
|
||||
return verifier.VerifyTable(ptr);
|
||||
}
|
||||
case SensorValue_CurrentAngle: {
|
||||
auto ptr = reinterpret_cast<const Messaging::CurrentAngle *>(obj);
|
||||
return verifier.VerifyTable(ptr);
|
||||
}
|
||||
default:
|
||||
return true;
|
||||
case SensorValue_NONE: {
|
||||
return true;
|
||||
}
|
||||
case SensorValue_TargetAngle: {
|
||||
auto ptr = reinterpret_cast<const Messaging::TargetAngle *>(obj);
|
||||
return verifier.VerifyTable(ptr);
|
||||
}
|
||||
case SensorValue_CurrentAngle: {
|
||||
auto ptr = reinterpret_cast<const Messaging::CurrentAngle *>(obj);
|
||||
return verifier.VerifyTable(ptr);
|
||||
}
|
||||
case SensorValue_CurrentText: {
|
||||
auto ptr = reinterpret_cast<const Messaging::CurrentText *>(obj);
|
||||
return verifier.VerifyTable(ptr);
|
||||
}
|
||||
default: return true;
|
||||
}
|
||||
}
|
||||
|
||||
inline bool VerifySensorValueVector(
|
||||
::flatbuffers::Verifier &verifier,
|
||||
const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values,
|
||||
const ::flatbuffers::Vector<uint8_t> *types) {
|
||||
if (!values || !types)
|
||||
return !values && !types;
|
||||
if (values->size() != types->size())
|
||||
return false;
|
||||
inline bool VerifySensorValueVector(::flatbuffers::Verifier &verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>> *values, const ::flatbuffers::Vector<uint8_t> *types) {
|
||||
if (!values || !types) return !values && !types;
|
||||
if (values->size() != types->size()) return false;
|
||||
for (::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
|
||||
if (!VerifySensorValue(verifier, values->Get(i),
|
||||
types->GetEnum<SensorValue>(i))) {
|
||||
if (!VerifySensorValue(
|
||||
verifier, values->Get(i), types->GetEnum<SensorValue>(i))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -253,17 +318,17 @@ inline const Messaging::SensorMessage *GetSensorMessage(const void *buf) {
|
||||
return ::flatbuffers::GetRoot<Messaging::SensorMessage>(buf);
|
||||
}
|
||||
|
||||
inline const Messaging::SensorMessage *
|
||||
GetSizePrefixedSensorMessage(const void *buf) {
|
||||
inline const Messaging::SensorMessage *GetSizePrefixedSensorMessage(const void *buf) {
|
||||
return ::flatbuffers::GetSizePrefixedRoot<Messaging::SensorMessage>(buf);
|
||||
}
|
||||
|
||||
inline bool VerifySensorMessageBuffer(::flatbuffers::Verifier &verifier) {
|
||||
inline bool VerifySensorMessageBuffer(
|
||||
::flatbuffers::Verifier &verifier) {
|
||||
return verifier.VerifyBuffer<Messaging::SensorMessage>(nullptr);
|
||||
}
|
||||
|
||||
inline bool
|
||||
VerifySizePrefixedSensorMessageBuffer(::flatbuffers::Verifier &verifier) {
|
||||
inline bool VerifySizePrefixedSensorMessageBuffer(
|
||||
::flatbuffers::Verifier &verifier) {
|
||||
return verifier.VerifySizePrefixedBuffer<Messaging::SensorMessage>(nullptr);
|
||||
}
|
||||
|
||||
@@ -279,6 +344,6 @@ inline void FinishSizePrefixedSensorMessageBuffer(
|
||||
fbb.FinishSizePrefixed(root);
|
||||
}
|
||||
|
||||
} // namespace Messaging
|
||||
} // namespace Messaging
|
||||
|
||||
#endif // FLATBUFFERS_GENERATED_SENSORMESSAGE_MESSAGING_H_
|
||||
#endif // FLATBUFFERS_GENERATED_SENSORMESSAGE_MESSAGING_H_
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
// automatically generated by the FlatBuffers compiler, do not modify
|
||||
|
||||
|
||||
#ifndef FLATBUFFERS_GENERATED_TEXTCONTROLMESSAGE_MESSAGING_H_
|
||||
#define FLATBUFFERS_GENERATED_TEXTCONTROLMESSAGE_MESSAGING_H_
|
||||
|
||||
#include "flatbuffers/flatbuffers.h"
|
||||
|
||||
// Ensure the included flatbuffers.h is the same version as when this file was
|
||||
// generated, otherwise it may not be compatible.
|
||||
// static_assert(FLATBUFFERS_VERSION_MAJOR == 25 &&
|
||||
// FLATBUFFERS_VERSION_MINOR == 2 &&
|
||||
// FLATBUFFERS_VERSION_REVISION == 10,
|
||||
// "Non-compatible flatbuffers version included");
|
||||
|
||||
namespace Messaging {
|
||||
|
||||
struct TextControlMessage;
|
||||
struct TextControlMessageBuilder;
|
||||
|
||||
struct TextControlMessage FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
|
||||
typedef TextControlMessageBuilder Builder;
|
||||
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
|
||||
VT_MESSAGE = 4
|
||||
};
|
||||
const ::flatbuffers::String *message() const {
|
||||
return GetPointer<const ::flatbuffers::String *>(VT_MESSAGE);
|
||||
}
|
||||
bool Verify(::flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
VerifyOffset(verifier, VT_MESSAGE) &&
|
||||
verifier.VerifyString(message()) &&
|
||||
verifier.EndTable();
|
||||
}
|
||||
};
|
||||
|
||||
struct TextControlMessageBuilder {
|
||||
typedef TextControlMessage Table;
|
||||
::flatbuffers::FlatBufferBuilder &fbb_;
|
||||
::flatbuffers::uoffset_t start_;
|
||||
void add_message(::flatbuffers::Offset<::flatbuffers::String> message) {
|
||||
fbb_.AddOffset(TextControlMessage::VT_MESSAGE, message);
|
||||
}
|
||||
explicit TextControlMessageBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
|
||||
: fbb_(_fbb) {
|
||||
start_ = fbb_.StartTable();
|
||||
}
|
||||
::flatbuffers::Offset<TextControlMessage> Finish() {
|
||||
const auto end = fbb_.EndTable(start_);
|
||||
auto o = ::flatbuffers::Offset<TextControlMessage>(end);
|
||||
return o;
|
||||
}
|
||||
};
|
||||
|
||||
inline ::flatbuffers::Offset<TextControlMessage> CreateTextControlMessage(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
::flatbuffers::Offset<::flatbuffers::String> message = 0) {
|
||||
TextControlMessageBuilder builder_(_fbb);
|
||||
builder_.add_message(message);
|
||||
return builder_.Finish();
|
||||
}
|
||||
|
||||
inline ::flatbuffers::Offset<TextControlMessage> CreateTextControlMessageDirect(
|
||||
::flatbuffers::FlatBufferBuilder &_fbb,
|
||||
const char *message = nullptr) {
|
||||
auto message__ = message ? _fbb.CreateString(message) : 0;
|
||||
return Messaging::CreateTextControlMessage(
|
||||
_fbb,
|
||||
message__);
|
||||
}
|
||||
|
||||
inline const Messaging::TextControlMessage *GetTextControlMessage(const void *buf) {
|
||||
return ::flatbuffers::GetRoot<Messaging::TextControlMessage>(buf);
|
||||
}
|
||||
|
||||
inline const Messaging::TextControlMessage *GetSizePrefixedTextControlMessage(const void *buf) {
|
||||
return ::flatbuffers::GetSizePrefixedRoot<Messaging::TextControlMessage>(buf);
|
||||
}
|
||||
|
||||
inline bool VerifyTextControlMessageBuffer(
|
||||
::flatbuffers::Verifier &verifier) {
|
||||
return verifier.VerifyBuffer<Messaging::TextControlMessage>(nullptr);
|
||||
}
|
||||
|
||||
inline bool VerifySizePrefixedTextControlMessageBuffer(
|
||||
::flatbuffers::Verifier &verifier) {
|
||||
return verifier.VerifySizePrefixedBuffer<Messaging::TextControlMessage>(nullptr);
|
||||
}
|
||||
|
||||
inline void FinishTextControlMessageBuffer(
|
||||
::flatbuffers::FlatBufferBuilder &fbb,
|
||||
::flatbuffers::Offset<Messaging::TextControlMessage> root) {
|
||||
fbb.Finish(root);
|
||||
}
|
||||
|
||||
inline void FinishSizePrefixedTextControlMessageBuffer(
|
||||
::flatbuffers::FlatBufferBuilder &fbb,
|
||||
::flatbuffers::Offset<Messaging::TextControlMessage> root) {
|
||||
fbb.FinishSizePrefixed(root);
|
||||
}
|
||||
|
||||
} // namespace Messaging
|
||||
|
||||
#endif // FLATBUFFERS_GENERATED_TEXTCONTROLMESSAGE_MESSAGING_H_
|
||||
Reference in New Issue
Block a user