// automatically generated by the FlatBuffers compiler, do not modify #ifndef FLATBUFFERS_GENERATED_REFLECTION_REFLECTION_H_ #define FLATBUFFERS_GENERATED_REFLECTION_REFLECTION_H_ #include "flatbuffers/flatbuffers.h" namespace reflection { struct Type; struct KeyValue; struct EnumVal; struct Enum; struct Field; struct Object; struct Schema; enum BaseType { None = 0, UType = 1, Bool = 2, Byte = 3, UByte = 4, Short = 5, UShort = 6, Int = 7, UInt = 8, Long = 9, ULong = 10, Float = 11, Double = 12, String = 13, Vector = 14, Obj = 15, Union = 16 }; inline const char **EnumNamesBaseType() { static const char *names[] = { "None", "UType", "Bool", "Byte", "UByte", "Short", "UShort", "Int", "UInt", "Long", "ULong", "Float", "Double", "String", "Vector", "Obj", "Union", nullptr }; return names; } inline const char *EnumNameBaseType(BaseType e) { return EnumNamesBaseType()[static_cast(e)]; } struct Type FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_BASE_TYPE = 4, VT_ELEMENT = 6, VT_INDEX = 8 }; BaseType base_type() const { return static_cast(GetField(VT_BASE_TYPE, 0)); } BaseType element() const { return static_cast(GetField(VT_ELEMENT, 0)); } int32_t index() const { return GetField(VT_INDEX, -1); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyField(verifier, VT_BASE_TYPE) && VerifyField(verifier, VT_ELEMENT) && VerifyField(verifier, VT_INDEX) && verifier.EndTable(); } }; struct TypeBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_base_type(BaseType base_type) { fbb_.AddElement(Type::VT_BASE_TYPE, static_cast(base_type), 0); } void add_element(BaseType element) { fbb_.AddElement(Type::VT_ELEMENT, static_cast(element), 0); } void add_index(int32_t index) { fbb_.AddElement(Type::VT_INDEX, index, -1); } TypeBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } TypeBuilder &operator=(const TypeBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 3)); return o; } }; inline flatbuffers::Offset CreateType(flatbuffers::FlatBufferBuilder &_fbb, BaseType base_type = None, BaseType element = None, int32_t index = -1) { TypeBuilder builder_(_fbb); builder_.add_index(index); builder_.add_element(element); builder_.add_base_type(base_type); return builder_.Finish(); } struct KeyValue FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_KEY = 4, VT_VALUE = 6 }; const flatbuffers::String *key() const { return GetPointer(VT_KEY); } bool KeyCompareLessThan(const KeyValue *o) const { return *key() < *o->key(); } int KeyCompareWithValue(const char *val) const { return strcmp(key()->c_str(), val); } const flatbuffers::String *value() const { return GetPointer(VT_VALUE); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_KEY) && verifier.Verify(key()) && VerifyField(verifier, VT_VALUE) && verifier.Verify(value()) && verifier.EndTable(); } }; struct KeyValueBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_key(flatbuffers::Offset key) { fbb_.AddOffset(KeyValue::VT_KEY, key); } void add_value(flatbuffers::Offset value) { fbb_.AddOffset(KeyValue::VT_VALUE, value); } KeyValueBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } KeyValueBuilder &operator=(const KeyValueBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 2)); fbb_.Required(o, KeyValue::VT_KEY); // key return o; } }; inline flatbuffers::Offset CreateKeyValue(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset key = 0, flatbuffers::Offset value = 0) { KeyValueBuilder builder_(_fbb); builder_.add_value(value); builder_.add_key(key); return builder_.Finish(); } inline flatbuffers::Offset CreateKeyValueDirect(flatbuffers::FlatBufferBuilder &_fbb, const char *key = nullptr, const char *value = nullptr) { return CreateKeyValue(_fbb, key ? _fbb.CreateString(key) : 0, value ? _fbb.CreateString(value) : 0); } struct EnumVal FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_NAME = 4, VT_VALUE = 6, VT_OBJECT = 8 }; const flatbuffers::String *name() const { return GetPointer(VT_NAME); } int64_t value() const { return GetField(VT_VALUE, 0); } bool KeyCompareLessThan(const EnumVal *o) const { return value() < o->value(); } int KeyCompareWithValue(int64_t val) const { return value() < val ? -1 : value() > val; } const Object *object() const { return GetPointer(VT_OBJECT); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_NAME) && verifier.Verify(name()) && VerifyField(verifier, VT_VALUE) && VerifyField(verifier, VT_OBJECT) && verifier.VerifyTable(object()) && verifier.EndTable(); } }; struct EnumValBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_name(flatbuffers::Offset name) { fbb_.AddOffset(EnumVal::VT_NAME, name); } void add_value(int64_t value) { fbb_.AddElement(EnumVal::VT_VALUE, value, 0); } void add_object(flatbuffers::Offset object) { fbb_.AddOffset(EnumVal::VT_OBJECT, object); } EnumValBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } EnumValBuilder &operator=(const EnumValBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 3)); fbb_.Required(o, EnumVal::VT_NAME); // name return o; } }; inline flatbuffers::Offset CreateEnumVal(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset name = 0, int64_t value = 0, flatbuffers::Offset object = 0) { EnumValBuilder builder_(_fbb); builder_.add_value(value); builder_.add_object(object); builder_.add_name(name); return builder_.Finish(); } inline flatbuffers::Offset CreateEnumValDirect(flatbuffers::FlatBufferBuilder &_fbb, const char *name = nullptr, int64_t value = 0, flatbuffers::Offset object = 0) { return CreateEnumVal(_fbb, name ? _fbb.CreateString(name) : 0, value, object); } struct Enum FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_NAME = 4, VT_VALUES = 6, VT_IS_UNION = 8, VT_UNDERLYING_TYPE = 10, VT_ATTRIBUTES = 12 }; const flatbuffers::String *name() const { return GetPointer(VT_NAME); } bool KeyCompareLessThan(const Enum *o) const { return *name() < *o->name(); } int KeyCompareWithValue(const char *val) const { return strcmp(name()->c_str(), val); } const flatbuffers::Vector> *values() const { return GetPointer> *>(VT_VALUES); } bool is_union() const { return GetField(VT_IS_UNION, 0) != 0; } const Type *underlying_type() const { return GetPointer(VT_UNDERLYING_TYPE); } const flatbuffers::Vector> *attributes() const { return GetPointer> *>(VT_ATTRIBUTES); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_NAME) && verifier.Verify(name()) && VerifyFieldRequired(verifier, VT_VALUES) && verifier.Verify(values()) && verifier.VerifyVectorOfTables(values()) && VerifyField(verifier, VT_IS_UNION) && VerifyFieldRequired(verifier, VT_UNDERLYING_TYPE) && verifier.VerifyTable(underlying_type()) && VerifyField(verifier, VT_ATTRIBUTES) && verifier.Verify(attributes()) && verifier.VerifyVectorOfTables(attributes()) && verifier.EndTable(); } }; struct EnumBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_name(flatbuffers::Offset name) { fbb_.AddOffset(Enum::VT_NAME, name); } void add_values(flatbuffers::Offset>> values) { fbb_.AddOffset(Enum::VT_VALUES, values); } void add_is_union(bool is_union) { fbb_.AddElement(Enum::VT_IS_UNION, static_cast(is_union), 0); } void add_underlying_type(flatbuffers::Offset underlying_type) { fbb_.AddOffset(Enum::VT_UNDERLYING_TYPE, underlying_type); } void add_attributes(flatbuffers::Offset>> attributes) { fbb_.AddOffset(Enum::VT_ATTRIBUTES, attributes); } EnumBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } EnumBuilder &operator=(const EnumBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 5)); fbb_.Required(o, Enum::VT_NAME); // name fbb_.Required(o, Enum::VT_VALUES); // values fbb_.Required(o, Enum::VT_UNDERLYING_TYPE); // underlying_type return o; } }; inline flatbuffers::Offset CreateEnum(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset name = 0, flatbuffers::Offset>> values = 0, bool is_union = false, flatbuffers::Offset underlying_type = 0, flatbuffers::Offset>> attributes = 0) { EnumBuilder builder_(_fbb); builder_.add_attributes(attributes); builder_.add_underlying_type(underlying_type); builder_.add_values(values); builder_.add_name(name); builder_.add_is_union(is_union); return builder_.Finish(); } inline flatbuffers::Offset CreateEnumDirect(flatbuffers::FlatBufferBuilder &_fbb, const char *name = nullptr, const std::vector> *values = nullptr, bool is_union = false, flatbuffers::Offset underlying_type = 0, const std::vector> *attributes = nullptr) { return CreateEnum(_fbb, name ? _fbb.CreateString(name) : 0, values ? _fbb.CreateVector>(*values) : 0, is_union, underlying_type, attributes ? _fbb.CreateVector>(*attributes) : 0); } struct Field FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_NAME = 4, VT_TYPE = 6, VT_ID = 8, VT_OFFSET = 10, VT_DEFAULT_INTEGER = 12, VT_DEFAULT_REAL = 14, VT_DEPRECATED = 16, VT_REQUIRED = 18, VT_KEY = 20, VT_ATTRIBUTES = 22 }; const flatbuffers::String *name() const { return GetPointer(VT_NAME); } bool KeyCompareLessThan(const Field *o) const { return *name() < *o->name(); } int KeyCompareWithValue(const char *val) const { return strcmp(name()->c_str(), val); } const Type *type() const { return GetPointer(VT_TYPE); } uint16_t id() const { return GetField(VT_ID, 0); } uint16_t offset() const { return GetField(VT_OFFSET, 0); } int64_t default_integer() const { return GetField(VT_DEFAULT_INTEGER, 0); } double default_real() const { return GetField(VT_DEFAULT_REAL, 0.0); } bool deprecated() const { return GetField(VT_DEPRECATED, 0) != 0; } bool required() const { return GetField(VT_REQUIRED, 0) != 0; } bool key() const { return GetField(VT_KEY, 0) != 0; } const flatbuffers::Vector> *attributes() const { return GetPointer> *>(VT_ATTRIBUTES); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_NAME) && verifier.Verify(name()) && VerifyFieldRequired(verifier, VT_TYPE) && verifier.VerifyTable(type()) && VerifyField(verifier, VT_ID) && VerifyField(verifier, VT_OFFSET) && VerifyField(verifier, VT_DEFAULT_INTEGER) && VerifyField(verifier, VT_DEFAULT_REAL) && VerifyField(verifier, VT_DEPRECATED) && VerifyField(verifier, VT_REQUIRED) && VerifyField(verifier, VT_KEY) && VerifyField(verifier, VT_ATTRIBUTES) && verifier.Verify(attributes()) && verifier.VerifyVectorOfTables(attributes()) && verifier.EndTable(); } }; struct FieldBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_name(flatbuffers::Offset name) { fbb_.AddOffset(Field::VT_NAME, name); } void add_type(flatbuffers::Offset type) { fbb_.AddOffset(Field::VT_TYPE, type); } void add_id(uint16_t id) { fbb_.AddElement(Field::VT_ID, id, 0); } void add_offset(uint16_t offset) { fbb_.AddElement(Field::VT_OFFSET, offset, 0); } void add_default_integer(int64_t default_integer) { fbb_.AddElement(Field::VT_DEFAULT_INTEGER, default_integer, 0); } void add_default_real(double default_real) { fbb_.AddElement(Field::VT_DEFAULT_REAL, default_real, 0.0); } void add_deprecated(bool deprecated) { fbb_.AddElement(Field::VT_DEPRECATED, static_cast(deprecated), 0); } void add_required(bool required) { fbb_.AddElement(Field::VT_REQUIRED, static_cast(required), 0); } void add_key(bool key) { fbb_.AddElement(Field::VT_KEY, static_cast(key), 0); } void add_attributes(flatbuffers::Offset>> attributes) { fbb_.AddOffset(Field::VT_ATTRIBUTES, attributes); } FieldBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } FieldBuilder &operator=(const FieldBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 10)); fbb_.Required(o, Field::VT_NAME); // name fbb_.Required(o, Field::VT_TYPE); // type return o; } }; inline flatbuffers::Offset CreateField(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset name = 0, flatbuffers::Offset type = 0, uint16_t id = 0, uint16_t offset = 0, int64_t default_integer = 0, double default_real = 0.0, bool deprecated = false, bool required = false, bool key = false, flatbuffers::Offset>> attributes = 0) { FieldBuilder builder_(_fbb); builder_.add_default_real(default_real); builder_.add_default_integer(default_integer); builder_.add_attributes(attributes); builder_.add_type(type); builder_.add_name(name); builder_.add_offset(offset); builder_.add_id(id); builder_.add_key(key); builder_.add_required(required); builder_.add_deprecated(deprecated); return builder_.Finish(); } inline flatbuffers::Offset CreateFieldDirect(flatbuffers::FlatBufferBuilder &_fbb, const char *name = nullptr, flatbuffers::Offset type = 0, uint16_t id = 0, uint16_t offset = 0, int64_t default_integer = 0, double default_real = 0.0, bool deprecated = false, bool required = false, bool key = false, const std::vector> *attributes = nullptr) { return CreateField(_fbb, name ? _fbb.CreateString(name) : 0, type, id, offset, default_integer, default_real, deprecated, required, key, attributes ? _fbb.CreateVector>(*attributes) : 0); } struct Object FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_NAME = 4, VT_FIELDS = 6, VT_IS_STRUCT = 8, VT_MINALIGN = 10, VT_BYTESIZE = 12, VT_ATTRIBUTES = 14 }; const flatbuffers::String *name() const { return GetPointer(VT_NAME); } bool KeyCompareLessThan(const Object *o) const { return *name() < *o->name(); } int KeyCompareWithValue(const char *val) const { return strcmp(name()->c_str(), val); } const flatbuffers::Vector> *fields() const { return GetPointer> *>(VT_FIELDS); } bool is_struct() const { return GetField(VT_IS_STRUCT, 0) != 0; } int32_t minalign() const { return GetField(VT_MINALIGN, 0); } int32_t bytesize() const { return GetField(VT_BYTESIZE, 0); } const flatbuffers::Vector> *attributes() const { return GetPointer> *>(VT_ATTRIBUTES); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_NAME) && verifier.Verify(name()) && VerifyFieldRequired(verifier, VT_FIELDS) && verifier.Verify(fields()) && verifier.VerifyVectorOfTables(fields()) && VerifyField(verifier, VT_IS_STRUCT) && VerifyField(verifier, VT_MINALIGN) && VerifyField(verifier, VT_BYTESIZE) && VerifyField(verifier, VT_ATTRIBUTES) && verifier.Verify(attributes()) && verifier.VerifyVectorOfTables(attributes()) && verifier.EndTable(); } }; struct ObjectBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_name(flatbuffers::Offset name) { fbb_.AddOffset(Object::VT_NAME, name); } void add_fields(flatbuffers::Offset>> fields) { fbb_.AddOffset(Object::VT_FIELDS, fields); } void add_is_struct(bool is_struct) { fbb_.AddElement(Object::VT_IS_STRUCT, static_cast(is_struct), 0); } void add_minalign(int32_t minalign) { fbb_.AddElement(Object::VT_MINALIGN, minalign, 0); } void add_bytesize(int32_t bytesize) { fbb_.AddElement(Object::VT_BYTESIZE, bytesize, 0); } void add_attributes(flatbuffers::Offset>> attributes) { fbb_.AddOffset(Object::VT_ATTRIBUTES, attributes); } ObjectBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ObjectBuilder &operator=(const ObjectBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 6)); fbb_.Required(o, Object::VT_NAME); // name fbb_.Required(o, Object::VT_FIELDS); // fields return o; } }; inline flatbuffers::Offset CreateObject(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset name = 0, flatbuffers::Offset>> fields = 0, bool is_struct = false, int32_t minalign = 0, int32_t bytesize = 0, flatbuffers::Offset>> attributes = 0) { ObjectBuilder builder_(_fbb); builder_.add_attributes(attributes); builder_.add_bytesize(bytesize); builder_.add_minalign(minalign); builder_.add_fields(fields); builder_.add_name(name); builder_.add_is_struct(is_struct); return builder_.Finish(); } inline flatbuffers::Offset CreateObjectDirect(flatbuffers::FlatBufferBuilder &_fbb, const char *name = nullptr, const std::vector> *fields = nullptr, bool is_struct = false, int32_t minalign = 0, int32_t bytesize = 0, const std::vector> *attributes = nullptr) { return CreateObject(_fbb, name ? _fbb.CreateString(name) : 0, fields ? _fbb.CreateVector>(*fields) : 0, is_struct, minalign, bytesize, attributes ? _fbb.CreateVector>(*attributes) : 0); } struct Schema FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table { enum { VT_OBJECTS = 4, VT_ENUMS = 6, VT_FILE_IDENT = 8, VT_FILE_EXT = 10, VT_ROOT_TABLE = 12 }; const flatbuffers::Vector> *objects() const { return GetPointer> *>(VT_OBJECTS); } const flatbuffers::Vector> *enums() const { return GetPointer> *>(VT_ENUMS); } const flatbuffers::String *file_ident() const { return GetPointer(VT_FILE_IDENT); } const flatbuffers::String *file_ext() const { return GetPointer(VT_FILE_EXT); } const Object *root_table() const { return GetPointer(VT_ROOT_TABLE); } bool Verify(flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyFieldRequired(verifier, VT_OBJECTS) && verifier.Verify(objects()) && verifier.VerifyVectorOfTables(objects()) && VerifyFieldRequired(verifier, VT_ENUMS) && verifier.Verify(enums()) && verifier.VerifyVectorOfTables(enums()) && VerifyField(verifier, VT_FILE_IDENT) && verifier.Verify(file_ident()) && VerifyField(verifier, VT_FILE_EXT) && verifier.Verify(file_ext()) && VerifyField(verifier, VT_ROOT_TABLE) && verifier.VerifyTable(root_table()) && verifier.EndTable(); } }; struct SchemaBuilder { flatbuffers::FlatBufferBuilder &fbb_; flatbuffers::uoffset_t start_; void add_objects(flatbuffers::Offset>> objects) { fbb_.AddOffset(Schema::VT_OBJECTS, objects); } void add_enums(flatbuffers::Offset>> enums) { fbb_.AddOffset(Schema::VT_ENUMS, enums); } void add_file_ident(flatbuffers::Offset file_ident) { fbb_.AddOffset(Schema::VT_FILE_IDENT, file_ident); } void add_file_ext(flatbuffers::Offset file_ext) { fbb_.AddOffset(Schema::VT_FILE_EXT, file_ext); } void add_root_table(flatbuffers::Offset root_table) { fbb_.AddOffset(Schema::VT_ROOT_TABLE, root_table); } SchemaBuilder(flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } SchemaBuilder &operator=(const SchemaBuilder &); flatbuffers::Offset Finish() { auto o = flatbuffers::Offset(fbb_.EndTable(start_, 5)); fbb_.Required(o, Schema::VT_OBJECTS); // objects fbb_.Required(o, Schema::VT_ENUMS); // enums return o; } }; inline flatbuffers::Offset CreateSchema(flatbuffers::FlatBufferBuilder &_fbb, flatbuffers::Offset>> objects = 0, flatbuffers::Offset>> enums = 0, flatbuffers::Offset file_ident = 0, flatbuffers::Offset file_ext = 0, flatbuffers::Offset root_table = 0) { SchemaBuilder builder_(_fbb); builder_.add_root_table(root_table); builder_.add_file_ext(file_ext); builder_.add_file_ident(file_ident); builder_.add_enums(enums); builder_.add_objects(objects); return builder_.Finish(); } inline flatbuffers::Offset CreateSchemaDirect(flatbuffers::FlatBufferBuilder &_fbb, const std::vector> *objects = nullptr, const std::vector> *enums = nullptr, const char *file_ident = nullptr, const char *file_ext = nullptr, flatbuffers::Offset root_table = 0) { return CreateSchema(_fbb, objects ? _fbb.CreateVector>(*objects) : 0, enums ? _fbb.CreateVector>(*enums) : 0, file_ident ? _fbb.CreateString(file_ident) : 0, file_ext ? _fbb.CreateString(file_ext) : 0, root_table); } inline const reflection::Schema *GetSchema(const void *buf) { return flatbuffers::GetRoot(buf); } inline const char *SchemaIdentifier() { return "BFBS"; } inline bool SchemaBufferHasIdentifier(const void *buf) { return flatbuffers::BufferHasIdentifier(buf, SchemaIdentifier()); } inline bool VerifySchemaBuffer(flatbuffers::Verifier &verifier) { return verifier.VerifyBuffer(SchemaIdentifier()); } inline const char *SchemaExtension() { return "bfbs"; } inline void FinishSchemaBuffer(flatbuffers::FlatBufferBuilder &fbb, flatbuffers::Offset root) { fbb.Finish(root, SchemaIdentifier()); } } // namespace reflection #endif // FLATBUFFERS_GENERATED_REFLECTION_REFLECTION_H_