1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_USERDEFINE_MNN_H_
5 #define FLATBUFFERS_GENERATED_USERDEFINE_MNN_H_
6 
7 
8 #include "Tensor_generated.h"
9 #include "Type_generated.h"
10 
11 namespace MNN {
12 
13 struct TensorConvertInfo;
14 struct TensorConvertInfoT;
15 
16 struct GridSample;
17 struct GridSampleT;
18 
19 inline const flatbuffers::TypeTable *TensorConvertInfoTypeTable();
20 
21 inline const flatbuffers::TypeTable *GridSampleTypeTable();
22 
23 enum SampleMode {
24   SampleMode_BILINEAR = 0,
25   SampleMode_NEAREST = 1,
26   SampleMode_MIN = SampleMode_BILINEAR,
27   SampleMode_MAX = SampleMode_NEAREST
28 };
29 
EnumValuesSampleMode()30 inline const SampleMode (&EnumValuesSampleMode())[2] {
31   static const SampleMode values[] = {
32     SampleMode_BILINEAR,
33     SampleMode_NEAREST
34   };
35   return values;
36 }
37 
EnumNamesSampleMode()38 inline const char * const *EnumNamesSampleMode() {
39   static const char * const names[] = {
40     "BILINEAR",
41     "NEAREST",
42     nullptr
43   };
44   return names;
45 }
46 
EnumNameSampleMode(SampleMode e)47 inline const char *EnumNameSampleMode(SampleMode e) {
48   if (e < SampleMode_BILINEAR || e > SampleMode_NEAREST) return "";
49   const size_t index = static_cast<int>(e);
50   return EnumNamesSampleMode()[index];
51 }
52 
53 enum BorderMode {
54   BorderMode_ZEROS = 0,
55   BorderMode_CLAMP = 1,
56   BorderMode_REFLECTION = 2,
57   BorderMode_MIN = BorderMode_ZEROS,
58   BorderMode_MAX = BorderMode_REFLECTION
59 };
60 
EnumValuesBorderMode()61 inline const BorderMode (&EnumValuesBorderMode())[3] {
62   static const BorderMode values[] = {
63     BorderMode_ZEROS,
64     BorderMode_CLAMP,
65     BorderMode_REFLECTION
66   };
67   return values;
68 }
69 
EnumNamesBorderMode()70 inline const char * const *EnumNamesBorderMode() {
71   static const char * const names[] = {
72     "ZEROS",
73     "CLAMP",
74     "REFLECTION",
75     nullptr
76   };
77   return names;
78 }
79 
EnumNameBorderMode(BorderMode e)80 inline const char *EnumNameBorderMode(BorderMode e) {
81   if (e < BorderMode_ZEROS || e > BorderMode_REFLECTION) return "";
82   const size_t index = static_cast<int>(e);
83   return EnumNamesBorderMode()[index];
84 }
85 
86 struct TensorConvertInfoT : public flatbuffers::NativeTable {
87   typedef TensorConvertInfo TableType;
88   MNN_DATA_FORMAT source;
89   MNN_DATA_FORMAT dest;
TensorConvertInfoTTensorConvertInfoT90   TensorConvertInfoT()
91       : source(MNN_DATA_FORMAT_NCHW),
92         dest(MNN_DATA_FORMAT_NCHW) {
93   }
94 };
95 
96 struct TensorConvertInfo FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
97   typedef TensorConvertInfoT NativeTableType;
MiniReflectTypeTableFLATBUFFERS_FINAL_CLASS98   static const flatbuffers::TypeTable *MiniReflectTypeTable() {
99     return TensorConvertInfoTypeTable();
100   }
sourceFLATBUFFERS_FINAL_CLASS101   MNN_DATA_FORMAT source() const {
102     return static_cast<MNN_DATA_FORMAT>(GetField<int8_t>(4, 0));
103   }
destFLATBUFFERS_FINAL_CLASS104   MNN_DATA_FORMAT dest() const {
105     return static_cast<MNN_DATA_FORMAT>(GetField<int8_t>(6, 0));
106   }
VerifyFLATBUFFERS_FINAL_CLASS107   bool Verify(flatbuffers::Verifier &verifier) const {
108     return VerifyTableStart(verifier) &&
109            VerifyField<int8_t>(verifier, 4) &&
110            VerifyField<int8_t>(verifier, 6) &&
111            verifier.EndTable();
112   }
113   TensorConvertInfoT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
114   void UnPackTo(TensorConvertInfoT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
115   static flatbuffers::Offset<TensorConvertInfo> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorConvertInfoT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
116 };
117 
118 struct TensorConvertInfoBuilder {
119   flatbuffers::FlatBufferBuilder &fbb_;
120   flatbuffers::uoffset_t start_;
add_sourceTensorConvertInfoBuilder121   void add_source(MNN_DATA_FORMAT source) {
122     fbb_.AddElement<int8_t>(4, static_cast<int8_t>(source), 0);
123   }
add_destTensorConvertInfoBuilder124   void add_dest(MNN_DATA_FORMAT dest) {
125     fbb_.AddElement<int8_t>(6, static_cast<int8_t>(dest), 0);
126   }
TensorConvertInfoBuilderTensorConvertInfoBuilder127   explicit TensorConvertInfoBuilder(flatbuffers::FlatBufferBuilder &_fbb)
128         : fbb_(_fbb) {
129     start_ = fbb_.StartTable();
130   }
131   TensorConvertInfoBuilder &operator=(const TensorConvertInfoBuilder &);
FinishTensorConvertInfoBuilder132   flatbuffers::Offset<TensorConvertInfo> Finish() {
133     const auto end = fbb_.EndTable(start_);
134     auto o = flatbuffers::Offset<TensorConvertInfo>(end);
135     return o;
136   }
137 };
138 
139 inline flatbuffers::Offset<TensorConvertInfo> CreateTensorConvertInfo(
140     flatbuffers::FlatBufferBuilder &_fbb,
141     MNN_DATA_FORMAT source = MNN_DATA_FORMAT_NCHW,
142     MNN_DATA_FORMAT dest = MNN_DATA_FORMAT_NCHW) {
143   TensorConvertInfoBuilder builder_(_fbb);
144   builder_.add_dest(dest);
145   builder_.add_source(source);
146   return builder_.Finish();
147 }
148 
149 flatbuffers::Offset<TensorConvertInfo> CreateTensorConvertInfo(flatbuffers::FlatBufferBuilder &_fbb, const TensorConvertInfoT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
150 
151 struct GridSampleT : public flatbuffers::NativeTable {
152   typedef GridSample TableType;
153   SampleMode mode;
154   BorderMode paddingMode;
155   bool alignCorners;
GridSampleTGridSampleT156   GridSampleT()
157       : mode(SampleMode_BILINEAR),
158         paddingMode(BorderMode_ZEROS),
159         alignCorners(false) {
160   }
161 };
162 
163 struct GridSample FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
164   typedef GridSampleT NativeTableType;
MiniReflectTypeTableFLATBUFFERS_FINAL_CLASS165   static const flatbuffers::TypeTable *MiniReflectTypeTable() {
166     return GridSampleTypeTable();
167   }
modeFLATBUFFERS_FINAL_CLASS168   SampleMode mode() const {
169     return static_cast<SampleMode>(GetField<int8_t>(4, 0));
170   }
paddingModeFLATBUFFERS_FINAL_CLASS171   BorderMode paddingMode() const {
172     return static_cast<BorderMode>(GetField<int8_t>(6, 0));
173   }
alignCornersFLATBUFFERS_FINAL_CLASS174   bool alignCorners() const {
175     return GetField<uint8_t>(8, 0) != 0;
176   }
VerifyFLATBUFFERS_FINAL_CLASS177   bool Verify(flatbuffers::Verifier &verifier) const {
178     return VerifyTableStart(verifier) &&
179            VerifyField<int8_t>(verifier, 4) &&
180            VerifyField<int8_t>(verifier, 6) &&
181            VerifyField<uint8_t>(verifier, 8) &&
182            verifier.EndTable();
183   }
184   GridSampleT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
185   void UnPackTo(GridSampleT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
186   static flatbuffers::Offset<GridSample> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GridSampleT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
187 };
188 
189 struct GridSampleBuilder {
190   flatbuffers::FlatBufferBuilder &fbb_;
191   flatbuffers::uoffset_t start_;
add_modeGridSampleBuilder192   void add_mode(SampleMode mode) {
193     fbb_.AddElement<int8_t>(4, static_cast<int8_t>(mode), 0);
194   }
add_paddingModeGridSampleBuilder195   void add_paddingMode(BorderMode paddingMode) {
196     fbb_.AddElement<int8_t>(6, static_cast<int8_t>(paddingMode), 0);
197   }
add_alignCornersGridSampleBuilder198   void add_alignCorners(bool alignCorners) {
199     fbb_.AddElement<uint8_t>(8, static_cast<uint8_t>(alignCorners), 0);
200   }
GridSampleBuilderGridSampleBuilder201   explicit GridSampleBuilder(flatbuffers::FlatBufferBuilder &_fbb)
202         : fbb_(_fbb) {
203     start_ = fbb_.StartTable();
204   }
205   GridSampleBuilder &operator=(const GridSampleBuilder &);
FinishGridSampleBuilder206   flatbuffers::Offset<GridSample> Finish() {
207     const auto end = fbb_.EndTable(start_);
208     auto o = flatbuffers::Offset<GridSample>(end);
209     return o;
210   }
211 };
212 
213 inline flatbuffers::Offset<GridSample> CreateGridSample(
214     flatbuffers::FlatBufferBuilder &_fbb,
215     SampleMode mode = SampleMode_BILINEAR,
216     BorderMode paddingMode = BorderMode_ZEROS,
217     bool alignCorners = false) {
218   GridSampleBuilder builder_(_fbb);
219   builder_.add_alignCorners(alignCorners);
220   builder_.add_paddingMode(paddingMode);
221   builder_.add_mode(mode);
222   return builder_.Finish();
223 }
224 
225 flatbuffers::Offset<GridSample> CreateGridSample(flatbuffers::FlatBufferBuilder &_fbb, const GridSampleT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
226 
UnPack(const flatbuffers::resolver_function_t * _resolver)227 inline TensorConvertInfoT *TensorConvertInfo::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
228   auto _o = new TensorConvertInfoT();
229   UnPackTo(_o, _resolver);
230   return _o;
231 }
232 
UnPackTo(TensorConvertInfoT * _o,const flatbuffers::resolver_function_t * _resolver)233 inline void TensorConvertInfo::UnPackTo(TensorConvertInfoT *_o, const flatbuffers::resolver_function_t *_resolver) const {
234   (void)_o;
235   (void)_resolver;
236   { auto _e = source(); _o->source = _e; };
237   { auto _e = dest(); _o->dest = _e; };
238 }
239 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const TensorConvertInfoT * _o,const flatbuffers::rehasher_function_t * _rehasher)240 inline flatbuffers::Offset<TensorConvertInfo> TensorConvertInfo::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorConvertInfoT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
241   return CreateTensorConvertInfo(_fbb, _o, _rehasher);
242 }
243 
CreateTensorConvertInfo(flatbuffers::FlatBufferBuilder & _fbb,const TensorConvertInfoT * _o,const flatbuffers::rehasher_function_t * _rehasher)244 inline flatbuffers::Offset<TensorConvertInfo> CreateTensorConvertInfo(flatbuffers::FlatBufferBuilder &_fbb, const TensorConvertInfoT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
245   (void)_rehasher;
246   (void)_o;
247   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorConvertInfoT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
248   auto _source = _o->source;
249   auto _dest = _o->dest;
250   return MNN::CreateTensorConvertInfo(
251       _fbb,
252       _source,
253       _dest);
254 }
255 
UnPack(const flatbuffers::resolver_function_t * _resolver)256 inline GridSampleT *GridSample::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
257   auto _o = new GridSampleT();
258   UnPackTo(_o, _resolver);
259   return _o;
260 }
261 
UnPackTo(GridSampleT * _o,const flatbuffers::resolver_function_t * _resolver)262 inline void GridSample::UnPackTo(GridSampleT *_o, const flatbuffers::resolver_function_t *_resolver) const {
263   (void)_o;
264   (void)_resolver;
265   { auto _e = mode(); _o->mode = _e; };
266   { auto _e = paddingMode(); _o->paddingMode = _e; };
267   { auto _e = alignCorners(); _o->alignCorners = _e; };
268 }
269 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const GridSampleT * _o,const flatbuffers::rehasher_function_t * _rehasher)270 inline flatbuffers::Offset<GridSample> GridSample::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GridSampleT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
271   return CreateGridSample(_fbb, _o, _rehasher);
272 }
273 
CreateGridSample(flatbuffers::FlatBufferBuilder & _fbb,const GridSampleT * _o,const flatbuffers::rehasher_function_t * _rehasher)274 inline flatbuffers::Offset<GridSample> CreateGridSample(flatbuffers::FlatBufferBuilder &_fbb, const GridSampleT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
275   (void)_rehasher;
276   (void)_o;
277   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GridSampleT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
278   auto _mode = _o->mode;
279   auto _paddingMode = _o->paddingMode;
280   auto _alignCorners = _o->alignCorners;
281   return MNN::CreateGridSample(
282       _fbb,
283       _mode,
284       _paddingMode,
285       _alignCorners);
286 }
287 
SampleModeTypeTable()288 inline const flatbuffers::TypeTable *SampleModeTypeTable() {
289   static const flatbuffers::TypeCode type_codes[] = {
290     { flatbuffers::ET_CHAR, 0, 0 },
291     { flatbuffers::ET_CHAR, 0, 0 }
292   };
293   static const flatbuffers::TypeFunction type_refs[] = {
294     SampleModeTypeTable
295   };
296   static const char * const names[] = {
297     "BILINEAR",
298     "NEAREST"
299   };
300   static const flatbuffers::TypeTable tt = {
301     flatbuffers::ST_ENUM, 2, type_codes, type_refs, nullptr, names
302   };
303   return &tt;
304 }
305 
BorderModeTypeTable()306 inline const flatbuffers::TypeTable *BorderModeTypeTable() {
307   static const flatbuffers::TypeCode type_codes[] = {
308     { flatbuffers::ET_CHAR, 0, 0 },
309     { flatbuffers::ET_CHAR, 0, 0 },
310     { flatbuffers::ET_CHAR, 0, 0 }
311   };
312   static const flatbuffers::TypeFunction type_refs[] = {
313     BorderModeTypeTable
314   };
315   static const char * const names[] = {
316     "ZEROS",
317     "CLAMP",
318     "REFLECTION"
319   };
320   static const flatbuffers::TypeTable tt = {
321     flatbuffers::ST_ENUM, 3, type_codes, type_refs, nullptr, names
322   };
323   return &tt;
324 }
325 
TensorConvertInfoTypeTable()326 inline const flatbuffers::TypeTable *TensorConvertInfoTypeTable() {
327   static const flatbuffers::TypeCode type_codes[] = {
328     { flatbuffers::ET_CHAR, 0, 0 },
329     { flatbuffers::ET_CHAR, 0, 0 }
330   };
331   static const flatbuffers::TypeFunction type_refs[] = {
332     MNN_DATA_FORMATTypeTable
333   };
334   static const char * const names[] = {
335     "source",
336     "dest"
337   };
338   static const flatbuffers::TypeTable tt = {
339     flatbuffers::ST_TABLE, 2, type_codes, type_refs, nullptr, names
340   };
341   return &tt;
342 }
343 
GridSampleTypeTable()344 inline const flatbuffers::TypeTable *GridSampleTypeTable() {
345   static const flatbuffers::TypeCode type_codes[] = {
346     { flatbuffers::ET_CHAR, 0, 0 },
347     { flatbuffers::ET_CHAR, 0, 1 },
348     { flatbuffers::ET_BOOL, 0, -1 }
349   };
350   static const flatbuffers::TypeFunction type_refs[] = {
351     SampleModeTypeTable,
352     BorderModeTypeTable
353   };
354   static const char * const names[] = {
355     "mode",
356     "paddingMode",
357     "alignCorners"
358   };
359   static const flatbuffers::TypeTable tt = {
360     flatbuffers::ST_TABLE, 3, type_codes, type_refs, nullptr, names
361   };
362   return &tt;
363 }
364 
365 }  // namespace MNN
366 
367 #endif  // FLATBUFFERS_GENERATED_USERDEFINE_MNN_H_
368