1 /* Copyright 2020 The TensorFlow Authors. All Rights Reserved.
2
3 Licensed under the Apache License, Version 2.0 (the "License");
4 you may not use this file except in compliance with the License.
5 You may obtain a copy of the License at
6
7 http://www.apache.org/licenses/LICENSE-2.0
8
9 Unless required by applicable law or agreed to in writing, software
10 distributed under the License is distributed on an "AS IS" BASIS,
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 See the License for the specific language governing permissions and
13 limitations under the License.
14 ==============================================================================*/
15 // automatically generated by the FlatBuffers compiler, do not modify
16
17
18 #ifndef FLATBUFFERS_GENERATED_COMPILEDPROGRAMCACHE_TFLITE_GPU_CL_DATA_H_
19 #define FLATBUFFERS_GENERATED_COMPILEDPROGRAMCACHE_TFLITE_GPU_CL_DATA_H_
20
21 #include "flatbuffers/flatbuffers.h"
22
23 namespace tflite {
24 namespace gpu {
25 namespace cl {
26 namespace data {
27
28 struct Program;
29 struct ProgramBuilder;
30
31 struct CompiledCache;
32 struct CompiledCacheBuilder;
33
34 struct Program FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
35 typedef ProgramBuilder Builder;
36 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
37 VT_FINGERPRINT = 4,
38 VT_BINARY = 6
39 };
fingerprintFLATBUFFERS_FINAL_CLASS40 uint64_t fingerprint() const {
41 return GetField<uint64_t>(VT_FINGERPRINT, 0);
42 }
binaryFLATBUFFERS_FINAL_CLASS43 const flatbuffers::Vector<uint8_t> *binary() const {
44 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_BINARY);
45 }
VerifyFLATBUFFERS_FINAL_CLASS46 bool Verify(flatbuffers::Verifier &verifier) const {
47 return VerifyTableStart(verifier) &&
48 VerifyField<uint64_t>(verifier, VT_FINGERPRINT, 8) &&
49 VerifyOffset(verifier, VT_BINARY) &&
50 verifier.VerifyVector(binary()) &&
51 verifier.EndTable();
52 }
53 };
54
55 struct ProgramBuilder {
56 typedef Program Table;
57 flatbuffers::FlatBufferBuilder &fbb_;
58 flatbuffers::uoffset_t start_;
add_fingerprintProgramBuilder59 void add_fingerprint(uint64_t fingerprint) {
60 fbb_.AddElement<uint64_t>(Program::VT_FINGERPRINT, fingerprint, 0);
61 }
add_binaryProgramBuilder62 void add_binary(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> binary) {
63 fbb_.AddOffset(Program::VT_BINARY, binary);
64 }
ProgramBuilderProgramBuilder65 explicit ProgramBuilder(flatbuffers::FlatBufferBuilder &_fbb)
66 : fbb_(_fbb) {
67 start_ = fbb_.StartTable();
68 }
FinishProgramBuilder69 flatbuffers::Offset<Program> Finish() {
70 const auto end = fbb_.EndTable(start_);
71 auto o = flatbuffers::Offset<Program>(end);
72 return o;
73 }
74 };
75
76 inline flatbuffers::Offset<Program> CreateProgram(
77 flatbuffers::FlatBufferBuilder &_fbb,
78 uint64_t fingerprint = 0,
79 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> binary = 0) {
80 ProgramBuilder builder_(_fbb);
81 builder_.add_fingerprint(fingerprint);
82 builder_.add_binary(binary);
83 return builder_.Finish();
84 }
85
86 inline flatbuffers::Offset<Program> CreateProgramDirect(
87 flatbuffers::FlatBufferBuilder &_fbb,
88 uint64_t fingerprint = 0,
89 const std::vector<uint8_t> *binary = nullptr) {
90 auto binary__ = binary ? _fbb.CreateVector<uint8_t>(*binary) : 0;
91 return tflite::gpu::cl::data::CreateProgram(
92 _fbb,
93 fingerprint,
94 binary__);
95 }
96
97 struct CompiledCache FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
98 typedef CompiledCacheBuilder Builder;
99 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
100 VT_DRIVER_VERSION = 4,
101 VT_PROGRAMS = 6
102 };
driver_versionFLATBUFFERS_FINAL_CLASS103 const flatbuffers::String *driver_version() const {
104 return GetPointer<const flatbuffers::String *>(VT_DRIVER_VERSION);
105 }
programsFLATBUFFERS_FINAL_CLASS106 const flatbuffers::Vector<flatbuffers::Offset<tflite::gpu::cl::data::Program>> *programs() const {
107 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::gpu::cl::data::Program>> *>(VT_PROGRAMS);
108 }
VerifyFLATBUFFERS_FINAL_CLASS109 bool Verify(flatbuffers::Verifier &verifier) const {
110 return VerifyTableStart(verifier) &&
111 VerifyOffset(verifier, VT_DRIVER_VERSION) &&
112 verifier.VerifyString(driver_version()) &&
113 VerifyOffset(verifier, VT_PROGRAMS) &&
114 verifier.VerifyVector(programs()) &&
115 verifier.VerifyVectorOfTables(programs()) &&
116 verifier.EndTable();
117 }
118 };
119
120 struct CompiledCacheBuilder {
121 typedef CompiledCache Table;
122 flatbuffers::FlatBufferBuilder &fbb_;
123 flatbuffers::uoffset_t start_;
add_driver_versionCompiledCacheBuilder124 void add_driver_version(flatbuffers::Offset<flatbuffers::String> driver_version) {
125 fbb_.AddOffset(CompiledCache::VT_DRIVER_VERSION, driver_version);
126 }
add_programsCompiledCacheBuilder127 void add_programs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::gpu::cl::data::Program>>> programs) {
128 fbb_.AddOffset(CompiledCache::VT_PROGRAMS, programs);
129 }
CompiledCacheBuilderCompiledCacheBuilder130 explicit CompiledCacheBuilder(flatbuffers::FlatBufferBuilder &_fbb)
131 : fbb_(_fbb) {
132 start_ = fbb_.StartTable();
133 }
FinishCompiledCacheBuilder134 flatbuffers::Offset<CompiledCache> Finish() {
135 const auto end = fbb_.EndTable(start_);
136 auto o = flatbuffers::Offset<CompiledCache>(end);
137 return o;
138 }
139 };
140
141 inline flatbuffers::Offset<CompiledCache> CreateCompiledCache(
142 flatbuffers::FlatBufferBuilder &_fbb,
143 flatbuffers::Offset<flatbuffers::String> driver_version = 0,
144 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::gpu::cl::data::Program>>> programs = 0) {
145 CompiledCacheBuilder builder_(_fbb);
146 builder_.add_programs(programs);
147 builder_.add_driver_version(driver_version);
148 return builder_.Finish();
149 }
150
151 inline flatbuffers::Offset<CompiledCache> CreateCompiledCacheDirect(
152 flatbuffers::FlatBufferBuilder &_fbb,
153 const char *driver_version = nullptr,
154 const std::vector<flatbuffers::Offset<tflite::gpu::cl::data::Program>> *programs = nullptr) {
155 auto driver_version__ = driver_version ? _fbb.CreateString(driver_version) : 0;
156 auto programs__ = programs ? _fbb.CreateVector<flatbuffers::Offset<tflite::gpu::cl::data::Program>>(*programs) : 0;
157 return tflite::gpu::cl::data::CreateCompiledCache(
158 _fbb,
159 driver_version__,
160 programs__);
161 }
162
GetCompiledCache(const void * buf)163 inline const tflite::gpu::cl::data::CompiledCache *GetCompiledCache(const void *buf) {
164 return flatbuffers::GetRoot<tflite::gpu::cl::data::CompiledCache>(buf);
165 }
166
GetSizePrefixedCompiledCache(const void * buf)167 inline const tflite::gpu::cl::data::CompiledCache *GetSizePrefixedCompiledCache(const void *buf) {
168 return flatbuffers::GetSizePrefixedRoot<tflite::gpu::cl::data::CompiledCache>(buf);
169 }
170
CompiledCacheIdentifier()171 inline const char *CompiledCacheIdentifier() {
172 return "AFCM";
173 }
174
CompiledCacheBufferHasIdentifier(const void * buf)175 inline bool CompiledCacheBufferHasIdentifier(const void *buf) {
176 return flatbuffers::BufferHasIdentifier(
177 buf, CompiledCacheIdentifier());
178 }
179
SizePrefixedCompiledCacheBufferHasIdentifier(const void * buf)180 inline bool SizePrefixedCompiledCacheBufferHasIdentifier(const void *buf) {
181 return flatbuffers::BufferHasIdentifier(
182 buf, CompiledCacheIdentifier(), true);
183 }
184
VerifyCompiledCacheBuffer(flatbuffers::Verifier & verifier)185 inline bool VerifyCompiledCacheBuffer(
186 flatbuffers::Verifier &verifier) {
187 return verifier.VerifyBuffer<tflite::gpu::cl::data::CompiledCache>(CompiledCacheIdentifier());
188 }
189
VerifySizePrefixedCompiledCacheBuffer(flatbuffers::Verifier & verifier)190 inline bool VerifySizePrefixedCompiledCacheBuffer(
191 flatbuffers::Verifier &verifier) {
192 return verifier.VerifySizePrefixedBuffer<tflite::gpu::cl::data::CompiledCache>(CompiledCacheIdentifier());
193 }
194
CompiledCacheExtension()195 inline const char *CompiledCacheExtension() {
196 return "jetbin";
197 }
198
FinishCompiledCacheBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<tflite::gpu::cl::data::CompiledCache> root)199 inline void FinishCompiledCacheBuffer(
200 flatbuffers::FlatBufferBuilder &fbb,
201 flatbuffers::Offset<tflite::gpu::cl::data::CompiledCache> root) {
202 fbb.Finish(root, CompiledCacheIdentifier());
203 }
204
FinishSizePrefixedCompiledCacheBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<tflite::gpu::cl::data::CompiledCache> root)205 inline void FinishSizePrefixedCompiledCacheBuffer(
206 flatbuffers::FlatBufferBuilder &fbb,
207 flatbuffers::Offset<tflite::gpu::cl::data::CompiledCache> root) {
208 fbb.FinishSizePrefixed(root, CompiledCacheIdentifier());
209 }
210
211 } // namespace data
212 } // namespace cl
213 } // namespace gpu
214 } // namespace tflite
215
216 #endif // FLATBUFFERS_GENERATED_COMPILEDPROGRAMCACHE_TFLITE_GPU_CL_DATA_H_
217