1 // automatically generated by the FlatBuffers compiler, do not modify
2
3
4 #ifndef FLATBUFFERS_GENERATED_ANIMAL_COM_FBS_APP_H_
5 #define FLATBUFFERS_GENERATED_ANIMAL_COM_FBS_APP_H_
6
7 #include "flatbuffers/flatbuffers.h"
8
9 namespace com {
10 namespace fbs {
11 namespace app {
12
13 struct Animal;
14 struct AnimalBuilder;
15
16 struct Animal FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
17 typedef AnimalBuilder Builder;
18 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
19 VT_NAME = 4,
20 VT_SOUND = 6,
21 VT_WEIGHT = 8
22 };
nameFLATBUFFERS_FINAL_CLASS23 const flatbuffers::String *name() const {
24 return GetPointer<const flatbuffers::String *>(VT_NAME);
25 }
soundFLATBUFFERS_FINAL_CLASS26 const flatbuffers::String *sound() const {
27 return GetPointer<const flatbuffers::String *>(VT_SOUND);
28 }
weightFLATBUFFERS_FINAL_CLASS29 uint16_t weight() const {
30 return GetField<uint16_t>(VT_WEIGHT, 0);
31 }
VerifyFLATBUFFERS_FINAL_CLASS32 bool Verify(flatbuffers::Verifier &verifier) const {
33 return VerifyTableStart(verifier) &&
34 VerifyOffset(verifier, VT_NAME) &&
35 verifier.VerifyString(name()) &&
36 VerifyOffset(verifier, VT_SOUND) &&
37 verifier.VerifyString(sound()) &&
38 VerifyField<uint16_t>(verifier, VT_WEIGHT, 2) &&
39 verifier.EndTable();
40 }
41 };
42
43 struct AnimalBuilder {
44 typedef Animal Table;
45 flatbuffers::FlatBufferBuilder &fbb_;
46 flatbuffers::uoffset_t start_;
add_nameAnimalBuilder47 void add_name(flatbuffers::Offset<flatbuffers::String> name) {
48 fbb_.AddOffset(Animal::VT_NAME, name);
49 }
add_soundAnimalBuilder50 void add_sound(flatbuffers::Offset<flatbuffers::String> sound) {
51 fbb_.AddOffset(Animal::VT_SOUND, sound);
52 }
add_weightAnimalBuilder53 void add_weight(uint16_t weight) {
54 fbb_.AddElement<uint16_t>(Animal::VT_WEIGHT, weight, 0);
55 }
AnimalBuilderAnimalBuilder56 explicit AnimalBuilder(flatbuffers::FlatBufferBuilder &_fbb)
57 : fbb_(_fbb) {
58 start_ = fbb_.StartTable();
59 }
FinishAnimalBuilder60 flatbuffers::Offset<Animal> Finish() {
61 const auto end = fbb_.EndTable(start_);
62 auto o = flatbuffers::Offset<Animal>(end);
63 return o;
64 }
65 };
66
67 inline flatbuffers::Offset<Animal> CreateAnimal(
68 flatbuffers::FlatBufferBuilder &_fbb,
69 flatbuffers::Offset<flatbuffers::String> name = 0,
70 flatbuffers::Offset<flatbuffers::String> sound = 0,
71 uint16_t weight = 0) {
72 AnimalBuilder builder_(_fbb);
73 builder_.add_sound(sound);
74 builder_.add_name(name);
75 builder_.add_weight(weight);
76 return builder_.Finish();
77 }
78
79 inline flatbuffers::Offset<Animal> CreateAnimalDirect(
80 flatbuffers::FlatBufferBuilder &_fbb,
81 const char *name = nullptr,
82 const char *sound = nullptr,
83 uint16_t weight = 0) {
84 auto name__ = name ? _fbb.CreateString(name) : 0;
85 auto sound__ = sound ? _fbb.CreateString(sound) : 0;
86 return com::fbs::app::CreateAnimal(
87 _fbb,
88 name__,
89 sound__,
90 weight);
91 }
92
GetAnimal(const void * buf)93 inline const com::fbs::app::Animal *GetAnimal(const void *buf) {
94 return flatbuffers::GetRoot<com::fbs::app::Animal>(buf);
95 }
96
GetSizePrefixedAnimal(const void * buf)97 inline const com::fbs::app::Animal *GetSizePrefixedAnimal(const void *buf) {
98 return flatbuffers::GetSizePrefixedRoot<com::fbs::app::Animal>(buf);
99 }
100
VerifyAnimalBuffer(flatbuffers::Verifier & verifier)101 inline bool VerifyAnimalBuffer(
102 flatbuffers::Verifier &verifier) {
103 return verifier.VerifyBuffer<com::fbs::app::Animal>(nullptr);
104 }
105
VerifySizePrefixedAnimalBuffer(flatbuffers::Verifier & verifier)106 inline bool VerifySizePrefixedAnimalBuffer(
107 flatbuffers::Verifier &verifier) {
108 return verifier.VerifySizePrefixedBuffer<com::fbs::app::Animal>(nullptr);
109 }
110
FinishAnimalBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<com::fbs::app::Animal> root)111 inline void FinishAnimalBuffer(
112 flatbuffers::FlatBufferBuilder &fbb,
113 flatbuffers::Offset<com::fbs::app::Animal> root) {
114 fbb.Finish(root);
115 }
116
FinishSizePrefixedAnimalBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<com::fbs::app::Animal> root)117 inline void FinishSizePrefixedAnimalBuffer(
118 flatbuffers::FlatBufferBuilder &fbb,
119 flatbuffers::Offset<com::fbs::app::Animal> root) {
120 fbb.FinishSizePrefixed(root);
121 }
122
123 } // namespace app
124 } // namespace fbs
125 } // namespace com
126
127 #endif // FLATBUFFERS_GENERATED_ANIMAL_COM_FBS_APP_H_
128