• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_NATIVETYPETEST_GEOMETRY_H_
5 #define FLATBUFFERS_GENERATED_NATIVETYPETEST_GEOMETRY_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 // Ensure the included flatbuffers.h is the same version as when this file was
10 // generated, otherwise it may not be compatible.
11 static_assert(FLATBUFFERS_VERSION_MAJOR == 25 &&
12               FLATBUFFERS_VERSION_MINOR == 1 &&
13               FLATBUFFERS_VERSION_REVISION == 24,
14              "Non-compatible flatbuffers version included");
15 
16 #include "native_type_test_impl.h"
17 
18 namespace Geometry {
19 
20 struct Vector3D;
21 
22 struct Vector3DAlt;
23 
24 struct ApplicationData;
25 struct ApplicationDataBuilder;
26 struct ApplicationDataT;
27 
28 inline const ::flatbuffers::TypeTable *Vector3DTypeTable();
29 
30 inline const ::flatbuffers::TypeTable *Vector3DAltTypeTable();
31 
32 inline const ::flatbuffers::TypeTable *ApplicationDataTypeTable();
33 
34 FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Vector3D FLATBUFFERS_FINAL_CLASS {
35  private:
36   float x_;
37   float y_;
38   float z_;
39 
40  public:
MiniReflectTypeTable()41   static const ::flatbuffers::TypeTable *MiniReflectTypeTable() {
42     return Vector3DTypeTable();
43   }
Vector3D()44   Vector3D()
45       : x_(0),
46         y_(0),
47         z_(0) {
48   }
Vector3D(float _x,float _y,float _z)49   Vector3D(float _x, float _y, float _z)
50       : x_(::flatbuffers::EndianScalar(_x)),
51         y_(::flatbuffers::EndianScalar(_y)),
52         z_(::flatbuffers::EndianScalar(_z)) {
53   }
x()54   float x() const {
55     return ::flatbuffers::EndianScalar(x_);
56   }
mutate_x(float _x)57   void mutate_x(float _x) {
58     ::flatbuffers::WriteScalar(&x_, _x);
59   }
y()60   float y() const {
61     return ::flatbuffers::EndianScalar(y_);
62   }
mutate_y(float _y)63   void mutate_y(float _y) {
64     ::flatbuffers::WriteScalar(&y_, _y);
65   }
z()66   float z() const {
67     return ::flatbuffers::EndianScalar(z_);
68   }
mutate_z(float _z)69   void mutate_z(float _z) {
70     ::flatbuffers::WriteScalar(&z_, _z);
71   }
72 };
73 FLATBUFFERS_STRUCT_END(Vector3D, 12);
74 
75 FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Vector3DAlt FLATBUFFERS_FINAL_CLASS {
76  private:
77   float a_;
78   float b_;
79   float c_;
80 
81  public:
MiniReflectTypeTable()82   static const ::flatbuffers::TypeTable *MiniReflectTypeTable() {
83     return Vector3DAltTypeTable();
84   }
Vector3DAlt()85   Vector3DAlt()
86       : a_(0),
87         b_(0),
88         c_(0) {
89   }
Vector3DAlt(float _a,float _b,float _c)90   Vector3DAlt(float _a, float _b, float _c)
91       : a_(::flatbuffers::EndianScalar(_a)),
92         b_(::flatbuffers::EndianScalar(_b)),
93         c_(::flatbuffers::EndianScalar(_c)) {
94   }
a()95   float a() const {
96     return ::flatbuffers::EndianScalar(a_);
97   }
mutate_a(float _a)98   void mutate_a(float _a) {
99     ::flatbuffers::WriteScalar(&a_, _a);
100   }
b()101   float b() const {
102     return ::flatbuffers::EndianScalar(b_);
103   }
mutate_b(float _b)104   void mutate_b(float _b) {
105     ::flatbuffers::WriteScalar(&b_, _b);
106   }
c()107   float c() const {
108     return ::flatbuffers::EndianScalar(c_);
109   }
mutate_c(float _c)110   void mutate_c(float _c) {
111     ::flatbuffers::WriteScalar(&c_, _c);
112   }
113 };
114 FLATBUFFERS_STRUCT_END(Vector3DAlt, 12);
115 
116 struct ApplicationDataT : public ::flatbuffers::NativeTable {
117   typedef ApplicationData TableType;
118   std::vector<Native::Vector3D> vectors{};
119   std::vector<Native::Vector3D> vectors_alt{};
120 };
121 
122 struct ApplicationData FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
123   typedef ApplicationDataT NativeTableType;
124   typedef ApplicationDataBuilder Builder;
MiniReflectTypeTableFLATBUFFERS_FINAL_CLASS125   static const ::flatbuffers::TypeTable *MiniReflectTypeTable() {
126     return ApplicationDataTypeTable();
127   }
128   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
129     VT_VECTORS = 4,
130     VT_VECTORS_ALT = 6
131   };
vectorsFLATBUFFERS_FINAL_CLASS132   const ::flatbuffers::Vector<const Geometry::Vector3D *> *vectors() const {
133     return GetPointer<const ::flatbuffers::Vector<const Geometry::Vector3D *> *>(VT_VECTORS);
134   }
mutable_vectorsFLATBUFFERS_FINAL_CLASS135   ::flatbuffers::Vector<const Geometry::Vector3D *> *mutable_vectors() {
136     return GetPointer<::flatbuffers::Vector<const Geometry::Vector3D *> *>(VT_VECTORS);
137   }
vectors_altFLATBUFFERS_FINAL_CLASS138   const ::flatbuffers::Vector<const Geometry::Vector3DAlt *> *vectors_alt() const {
139     return GetPointer<const ::flatbuffers::Vector<const Geometry::Vector3DAlt *> *>(VT_VECTORS_ALT);
140   }
mutable_vectors_altFLATBUFFERS_FINAL_CLASS141   ::flatbuffers::Vector<const Geometry::Vector3DAlt *> *mutable_vectors_alt() {
142     return GetPointer<::flatbuffers::Vector<const Geometry::Vector3DAlt *> *>(VT_VECTORS_ALT);
143   }
VerifyFLATBUFFERS_FINAL_CLASS144   bool Verify(::flatbuffers::Verifier &verifier) const {
145     return VerifyTableStart(verifier) &&
146            VerifyOffset(verifier, VT_VECTORS) &&
147            verifier.VerifyVector(vectors()) &&
148            VerifyOffset(verifier, VT_VECTORS_ALT) &&
149            verifier.VerifyVector(vectors_alt()) &&
150            verifier.EndTable();
151   }
152   ApplicationDataT *UnPack(const ::flatbuffers::resolver_function_t *_resolver = nullptr) const;
153   void UnPackTo(ApplicationDataT *_o, const ::flatbuffers::resolver_function_t *_resolver = nullptr) const;
154   static ::flatbuffers::Offset<ApplicationData> Pack(::flatbuffers::FlatBufferBuilder &_fbb, const ApplicationDataT* _o, const ::flatbuffers::rehasher_function_t *_rehasher = nullptr);
155 };
156 
157 struct ApplicationDataBuilder {
158   typedef ApplicationData Table;
159   ::flatbuffers::FlatBufferBuilder &fbb_;
160   ::flatbuffers::uoffset_t start_;
add_vectorsApplicationDataBuilder161   void add_vectors(::flatbuffers::Offset<::flatbuffers::Vector<const Geometry::Vector3D *>> vectors) {
162     fbb_.AddOffset(ApplicationData::VT_VECTORS, vectors);
163   }
add_vectors_altApplicationDataBuilder164   void add_vectors_alt(::flatbuffers::Offset<::flatbuffers::Vector<const Geometry::Vector3DAlt *>> vectors_alt) {
165     fbb_.AddOffset(ApplicationData::VT_VECTORS_ALT, vectors_alt);
166   }
ApplicationDataBuilderApplicationDataBuilder167   explicit ApplicationDataBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
168         : fbb_(_fbb) {
169     start_ = fbb_.StartTable();
170   }
FinishApplicationDataBuilder171   ::flatbuffers::Offset<ApplicationData> Finish() {
172     const auto end = fbb_.EndTable(start_);
173     auto o = ::flatbuffers::Offset<ApplicationData>(end);
174     return o;
175   }
176 };
177 
178 inline ::flatbuffers::Offset<ApplicationData> CreateApplicationData(
179     ::flatbuffers::FlatBufferBuilder &_fbb,
180     ::flatbuffers::Offset<::flatbuffers::Vector<const Geometry::Vector3D *>> vectors = 0,
181     ::flatbuffers::Offset<::flatbuffers::Vector<const Geometry::Vector3DAlt *>> vectors_alt = 0) {
182   ApplicationDataBuilder builder_(_fbb);
183   builder_.add_vectors_alt(vectors_alt);
184   builder_.add_vectors(vectors);
185   return builder_.Finish();
186 }
187 
188 inline ::flatbuffers::Offset<ApplicationData> CreateApplicationDataDirect(
189     ::flatbuffers::FlatBufferBuilder &_fbb,
190     const std::vector<Geometry::Vector3D> *vectors = nullptr,
191     const std::vector<Geometry::Vector3DAlt> *vectors_alt = nullptr) {
192   auto vectors__ = vectors ? _fbb.CreateVectorOfStructs<Geometry::Vector3D>(*vectors) : 0;
193   auto vectors_alt__ = vectors_alt ? _fbb.CreateVectorOfStructs<Geometry::Vector3DAlt>(*vectors_alt) : 0;
194   return Geometry::CreateApplicationData(
195       _fbb,
196       vectors__,
197       vectors_alt__);
198 }
199 
200 ::flatbuffers::Offset<ApplicationData> CreateApplicationData(::flatbuffers::FlatBufferBuilder &_fbb, const ApplicationDataT *_o, const ::flatbuffers::rehasher_function_t *_rehasher = nullptr);
201 
UnPack(const::flatbuffers::resolver_function_t * _resolver)202 inline ApplicationDataT *ApplicationData::UnPack(const ::flatbuffers::resolver_function_t *_resolver) const {
203   auto _o = std::unique_ptr<ApplicationDataT>(new ApplicationDataT());
204   UnPackTo(_o.get(), _resolver);
205   return _o.release();
206 }
207 
UnPackTo(ApplicationDataT * _o,const::flatbuffers::resolver_function_t * _resolver)208 inline void ApplicationData::UnPackTo(ApplicationDataT *_o, const ::flatbuffers::resolver_function_t *_resolver) const {
209   (void)_o;
210   (void)_resolver;
211   { auto _e = vectors(); if (_e) { _o->vectors.resize(_e->size()); for (::flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->vectors[_i] = ::flatbuffers::UnPack(*_e->Get(_i)); } } else { _o->vectors.resize(0); } }
212   { auto _e = vectors_alt(); if (_e) { _o->vectors_alt.resize(_e->size()); for (::flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->vectors_alt[_i] = ::flatbuffers::UnPackVector3DAlt(*_e->Get(_i)); } } else { _o->vectors_alt.resize(0); } }
213 }
214 
Pack(::flatbuffers::FlatBufferBuilder & _fbb,const ApplicationDataT * _o,const::flatbuffers::rehasher_function_t * _rehasher)215 inline ::flatbuffers::Offset<ApplicationData> ApplicationData::Pack(::flatbuffers::FlatBufferBuilder &_fbb, const ApplicationDataT* _o, const ::flatbuffers::rehasher_function_t *_rehasher) {
216   return CreateApplicationData(_fbb, _o, _rehasher);
217 }
218 
CreateApplicationData(::flatbuffers::FlatBufferBuilder & _fbb,const ApplicationDataT * _o,const::flatbuffers::rehasher_function_t * _rehasher)219 inline ::flatbuffers::Offset<ApplicationData> CreateApplicationData(::flatbuffers::FlatBufferBuilder &_fbb, const ApplicationDataT *_o, const ::flatbuffers::rehasher_function_t *_rehasher) {
220   (void)_rehasher;
221   (void)_o;
222   struct _VectorArgs { ::flatbuffers::FlatBufferBuilder *__fbb; const ApplicationDataT* __o; const ::flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
223   auto _vectors = _o->vectors.size() ? _fbb.CreateVectorOfNativeStructs<Geometry::Vector3D, Native::Vector3D>(_o->vectors) : 0;
224   auto _vectors_alt = _o->vectors_alt.size() ? _fbb.CreateVectorOfNativeStructs<Geometry::Vector3DAlt, Native::Vector3D>(_o->vectors_alt, ::flatbuffers::PackVector3DAlt) : 0;
225   return Geometry::CreateApplicationData(
226       _fbb,
227       _vectors,
228       _vectors_alt);
229 }
230 
Vector3DTypeTable()231 inline const ::flatbuffers::TypeTable *Vector3DTypeTable() {
232   static const ::flatbuffers::TypeCode type_codes[] = {
233     { ::flatbuffers::ET_FLOAT, 0, -1 },
234     { ::flatbuffers::ET_FLOAT, 0, -1 },
235     { ::flatbuffers::ET_FLOAT, 0, -1 }
236   };
237   static const int64_t values[] = { 0, 4, 8, 12 };
238   static const char * const names[] = {
239     "x",
240     "y",
241     "z"
242   };
243   static const ::flatbuffers::TypeTable tt = {
244     ::flatbuffers::ST_STRUCT, 3, type_codes, nullptr, nullptr, values, names
245   };
246   return &tt;
247 }
248 
Vector3DAltTypeTable()249 inline const ::flatbuffers::TypeTable *Vector3DAltTypeTable() {
250   static const ::flatbuffers::TypeCode type_codes[] = {
251     { ::flatbuffers::ET_FLOAT, 0, -1 },
252     { ::flatbuffers::ET_FLOAT, 0, -1 },
253     { ::flatbuffers::ET_FLOAT, 0, -1 }
254   };
255   static const int64_t values[] = { 0, 4, 8, 12 };
256   static const char * const names[] = {
257     "a",
258     "b",
259     "c"
260   };
261   static const ::flatbuffers::TypeTable tt = {
262     ::flatbuffers::ST_STRUCT, 3, type_codes, nullptr, nullptr, values, names
263   };
264   return &tt;
265 }
266 
ApplicationDataTypeTable()267 inline const ::flatbuffers::TypeTable *ApplicationDataTypeTable() {
268   static const ::flatbuffers::TypeCode type_codes[] = {
269     { ::flatbuffers::ET_SEQUENCE, 1, 0 },
270     { ::flatbuffers::ET_SEQUENCE, 1, 1 }
271   };
272   static const ::flatbuffers::TypeFunction type_refs[] = {
273     Geometry::Vector3DTypeTable,
274     Geometry::Vector3DAltTypeTable
275   };
276   static const char * const names[] = {
277     "vectors",
278     "vectors_alt"
279   };
280   static const ::flatbuffers::TypeTable tt = {
281     ::flatbuffers::ST_TABLE, 2, type_codes, type_refs, nullptr, nullptr, names
282   };
283   return &tt;
284 }
285 
GetApplicationData(const void * buf)286 inline const Geometry::ApplicationData *GetApplicationData(const void *buf) {
287   return ::flatbuffers::GetRoot<Geometry::ApplicationData>(buf);
288 }
289 
GetSizePrefixedApplicationData(const void * buf)290 inline const Geometry::ApplicationData *GetSizePrefixedApplicationData(const void *buf) {
291   return ::flatbuffers::GetSizePrefixedRoot<Geometry::ApplicationData>(buf);
292 }
293 
GetMutableApplicationData(void * buf)294 inline ApplicationData *GetMutableApplicationData(void *buf) {
295   return ::flatbuffers::GetMutableRoot<ApplicationData>(buf);
296 }
297 
GetMutableSizePrefixedApplicationData(void * buf)298 inline Geometry::ApplicationData *GetMutableSizePrefixedApplicationData(void *buf) {
299   return ::flatbuffers::GetMutableSizePrefixedRoot<Geometry::ApplicationData>(buf);
300 }
301 
VerifyApplicationDataBuffer(::flatbuffers::Verifier & verifier)302 inline bool VerifyApplicationDataBuffer(
303     ::flatbuffers::Verifier &verifier) {
304   return verifier.VerifyBuffer<Geometry::ApplicationData>(nullptr);
305 }
306 
VerifySizePrefixedApplicationDataBuffer(::flatbuffers::Verifier & verifier)307 inline bool VerifySizePrefixedApplicationDataBuffer(
308     ::flatbuffers::Verifier &verifier) {
309   return verifier.VerifySizePrefixedBuffer<Geometry::ApplicationData>(nullptr);
310 }
311 
FinishApplicationDataBuffer(::flatbuffers::FlatBufferBuilder & fbb,::flatbuffers::Offset<Geometry::ApplicationData> root)312 inline void FinishApplicationDataBuffer(
313     ::flatbuffers::FlatBufferBuilder &fbb,
314     ::flatbuffers::Offset<Geometry::ApplicationData> root) {
315   fbb.Finish(root);
316 }
317 
FinishSizePrefixedApplicationDataBuffer(::flatbuffers::FlatBufferBuilder & fbb,::flatbuffers::Offset<Geometry::ApplicationData> root)318 inline void FinishSizePrefixedApplicationDataBuffer(
319     ::flatbuffers::FlatBufferBuilder &fbb,
320     ::flatbuffers::Offset<Geometry::ApplicationData> root) {
321   fbb.FinishSizePrefixed(root);
322 }
323 
324 inline std::unique_ptr<Geometry::ApplicationDataT> UnPackApplicationData(
325     const void *buf,
326     const ::flatbuffers::resolver_function_t *res = nullptr) {
327   return std::unique_ptr<Geometry::ApplicationDataT>(GetApplicationData(buf)->UnPack(res));
328 }
329 
330 inline std::unique_ptr<Geometry::ApplicationDataT> UnPackSizePrefixedApplicationData(
331     const void *buf,
332     const ::flatbuffers::resolver_function_t *res = nullptr) {
333   return std::unique_ptr<Geometry::ApplicationDataT>(GetSizePrefixedApplicationData(buf)->UnPack(res));
334 }
335 
336 }  // namespace Geometry
337 
338 #endif  // FLATBUFFERS_GENERATED_NATIVETYPETEST_GEOMETRY_H_
339