• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_CHREPOWERTEST_CHRE_POWER_TEST_H_
5 #define FLATBUFFERS_GENERATED_CHREPOWERTEST_CHRE_POWER_TEST_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 namespace chre {
10 namespace power_test {
11 
12 struct TimerMessage;
13 struct TimerMessageBuilder;
14 struct TimerMessageT;
15 
16 struct WifiScanMessage;
17 struct WifiScanMessageBuilder;
18 struct WifiScanMessageT;
19 
20 struct GnssLocationMessage;
21 struct GnssLocationMessageBuilder;
22 struct GnssLocationMessageT;
23 
24 struct CellQueryMessage;
25 struct CellQueryMessageBuilder;
26 struct CellQueryMessageT;
27 
28 struct AudioRequestMessage;
29 struct AudioRequestMessageBuilder;
30 struct AudioRequestMessageT;
31 
32 struct SensorRequestMessage;
33 struct SensorRequestMessageBuilder;
34 struct SensorRequestMessageT;
35 
36 struct BreakItMessage;
37 struct BreakItMessageBuilder;
38 struct BreakItMessageT;
39 
40 struct NanoappResponseMessage;
41 struct NanoappResponseMessageBuilder;
42 struct NanoappResponseMessageT;
43 
44 /// Indicates which of the following messages is being sent to / from the
45 /// nanoapp. Use uint as the base type to match the message type in
46 /// chreMessageFromHostData.
47 enum class MessageType : uint32_t {
48   UNSPECIFIED = 0,
49   /// Should be used with TimerMessage
50   TIMER_TEST = 1,
51   /// Should be used with WifiScanMessage
52   WIFI_SCAN_TEST = 2,
53   /// Should be used with GnssLocationMessage
54   GNSS_LOCATION_TEST = 3,
55   /// Should be used with CellQueryMessage
56   CELL_QUERY_TEST = 4,
57   /// Should be used with AudioRequestMessage
58   AUDIO_REQUEST_TEST = 5,
59   /// Should be used with SensorRequestMessage
60   SENSOR_REQUEST_TEST = 6,
61   /// Should be used with BreakItMessage
62   BREAK_IT_TEST = 7,
63   /// Should be used with NanoappResponseMessage
64   NANOAPP_RESPONSE = 8,
65   MIN = UNSPECIFIED,
66   MAX = NANOAPP_RESPONSE
67 };
68 
EnumValuesMessageType()69 inline const MessageType (&EnumValuesMessageType())[9] {
70   static const MessageType values[] = {
71     MessageType::UNSPECIFIED,
72     MessageType::TIMER_TEST,
73     MessageType::WIFI_SCAN_TEST,
74     MessageType::GNSS_LOCATION_TEST,
75     MessageType::CELL_QUERY_TEST,
76     MessageType::AUDIO_REQUEST_TEST,
77     MessageType::SENSOR_REQUEST_TEST,
78     MessageType::BREAK_IT_TEST,
79     MessageType::NANOAPP_RESPONSE
80   };
81   return values;
82 }
83 
EnumNamesMessageType()84 inline const char * const *EnumNamesMessageType() {
85   static const char * const names[10] = {
86     "UNSPECIFIED",
87     "TIMER_TEST",
88     "WIFI_SCAN_TEST",
89     "GNSS_LOCATION_TEST",
90     "CELL_QUERY_TEST",
91     "AUDIO_REQUEST_TEST",
92     "SENSOR_REQUEST_TEST",
93     "BREAK_IT_TEST",
94     "NANOAPP_RESPONSE",
95     nullptr
96   };
97   return names;
98 }
99 
EnumNameMessageType(MessageType e)100 inline const char *EnumNameMessageType(MessageType e) {
101   if (flatbuffers::IsOutRange(e, MessageType::UNSPECIFIED, MessageType::NANOAPP_RESPONSE)) return "";
102   const size_t index = static_cast<size_t>(e);
103   return EnumNamesMessageType()[index];
104 }
105 
106 /// All the various sensors that can be interacted with inside the nanoapp.
107 /// The values used here map directly to values from the CHRE API
108 enum class SensorType : uint8_t {
109   UNKNOWN = 0,
110   ACCELEROMETER = 1,
111   INSTANT_MOTION_DETECT = 2,
112   STATIONARY_DETECT = 3,
113   GYROSCOPE = 6,
114   UNCALIBRATED_GYROSCOPE = 7,
115   GEOMAGNETIC_FIELD = 8,
116   UNCALIBRATED_GEOMAGNETIC_FIELD = 9,
117   PRESSURE = 10,
118   LIGHT = 12,
119   PROXIMITY = 13,
120   STEP_DETECT = 23,
121   UNCALIBRATED_ACCELEROMETER = 55,
122   ACCELEROMETER_TEMPERATURE = 56,
123   GYROSCOPE_TEMPERATURE = 57,
124   GEOMAGNETIC_FIELD_TEMPERATURE = 58,
125   MIN = UNKNOWN,
126   MAX = GEOMAGNETIC_FIELD_TEMPERATURE
127 };
128 
EnumValuesSensorType()129 inline const SensorType (&EnumValuesSensorType())[16] {
130   static const SensorType values[] = {
131     SensorType::UNKNOWN,
132     SensorType::ACCELEROMETER,
133     SensorType::INSTANT_MOTION_DETECT,
134     SensorType::STATIONARY_DETECT,
135     SensorType::GYROSCOPE,
136     SensorType::UNCALIBRATED_GYROSCOPE,
137     SensorType::GEOMAGNETIC_FIELD,
138     SensorType::UNCALIBRATED_GEOMAGNETIC_FIELD,
139     SensorType::PRESSURE,
140     SensorType::LIGHT,
141     SensorType::PROXIMITY,
142     SensorType::STEP_DETECT,
143     SensorType::UNCALIBRATED_ACCELEROMETER,
144     SensorType::ACCELEROMETER_TEMPERATURE,
145     SensorType::GYROSCOPE_TEMPERATURE,
146     SensorType::GEOMAGNETIC_FIELD_TEMPERATURE
147   };
148   return values;
149 }
150 
EnumNamesSensorType()151 inline const char * const *EnumNamesSensorType() {
152   static const char * const names[60] = {
153     "UNKNOWN",
154     "ACCELEROMETER",
155     "INSTANT_MOTION_DETECT",
156     "STATIONARY_DETECT",
157     "",
158     "",
159     "GYROSCOPE",
160     "UNCALIBRATED_GYROSCOPE",
161     "GEOMAGNETIC_FIELD",
162     "UNCALIBRATED_GEOMAGNETIC_FIELD",
163     "PRESSURE",
164     "",
165     "LIGHT",
166     "PROXIMITY",
167     "",
168     "",
169     "",
170     "",
171     "",
172     "",
173     "",
174     "",
175     "",
176     "STEP_DETECT",
177     "",
178     "",
179     "",
180     "",
181     "",
182     "",
183     "",
184     "",
185     "",
186     "",
187     "",
188     "",
189     "",
190     "",
191     "",
192     "",
193     "",
194     "",
195     "",
196     "",
197     "",
198     "",
199     "",
200     "",
201     "",
202     "",
203     "",
204     "",
205     "",
206     "",
207     "",
208     "UNCALIBRATED_ACCELEROMETER",
209     "ACCELEROMETER_TEMPERATURE",
210     "GYROSCOPE_TEMPERATURE",
211     "GEOMAGNETIC_FIELD_TEMPERATURE",
212     nullptr
213   };
214   return names;
215 }
216 
EnumNameSensorType(SensorType e)217 inline const char *EnumNameSensorType(SensorType e) {
218   if (flatbuffers::IsOutRange(e, SensorType::UNKNOWN, SensorType::GEOMAGNETIC_FIELD_TEMPERATURE)) return "";
219   const size_t index = static_cast<size_t>(e);
220   return EnumNamesSensorType()[index];
221 }
222 
223 struct TimerMessageT : public flatbuffers::NativeTable {
224   typedef TimerMessage TableType;
225   bool enable;
226   uint64_t wakeup_interval_ns;
TimerMessageTTimerMessageT227   TimerMessageT()
228       : enable(false),
229         wakeup_interval_ns(0) {
230   }
231 };
232 
233 /// Represents a message to ask the nanoapp to create a timer that wakes up at
234 /// the given interval
235 struct TimerMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
236   typedef TimerMessageT NativeTableType;
237   typedef TimerMessageBuilder Builder;
238   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
239     VT_ENABLE = 4,
240     VT_WAKEUP_INTERVAL_NS = 6
241   };
enableFLATBUFFERS_FINAL_CLASS242   bool enable() const {
243     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
244   }
mutate_enableFLATBUFFERS_FINAL_CLASS245   bool mutate_enable(bool _enable) {
246     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
247   }
wakeup_interval_nsFLATBUFFERS_FINAL_CLASS248   uint64_t wakeup_interval_ns() const {
249     return GetField<uint64_t>(VT_WAKEUP_INTERVAL_NS, 0);
250   }
mutate_wakeup_interval_nsFLATBUFFERS_FINAL_CLASS251   bool mutate_wakeup_interval_ns(uint64_t _wakeup_interval_ns) {
252     return SetField<uint64_t>(VT_WAKEUP_INTERVAL_NS, _wakeup_interval_ns, 0);
253   }
VerifyFLATBUFFERS_FINAL_CLASS254   bool Verify(flatbuffers::Verifier &verifier) const {
255     return VerifyTableStart(verifier) &&
256            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
257            VerifyField<uint64_t>(verifier, VT_WAKEUP_INTERVAL_NS) &&
258            verifier.EndTable();
259   }
260   TimerMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
261   void UnPackTo(TimerMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
262   static flatbuffers::Offset<TimerMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TimerMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
263 };
264 
265 struct TimerMessageBuilder {
266   typedef TimerMessage Table;
267   flatbuffers::FlatBufferBuilder &fbb_;
268   flatbuffers::uoffset_t start_;
add_enableTimerMessageBuilder269   void add_enable(bool enable) {
270     fbb_.AddElement<uint8_t>(TimerMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
271   }
add_wakeup_interval_nsTimerMessageBuilder272   void add_wakeup_interval_ns(uint64_t wakeup_interval_ns) {
273     fbb_.AddElement<uint64_t>(TimerMessage::VT_WAKEUP_INTERVAL_NS, wakeup_interval_ns, 0);
274   }
TimerMessageBuilderTimerMessageBuilder275   explicit TimerMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
276         : fbb_(_fbb) {
277     start_ = fbb_.StartTable();
278   }
279   TimerMessageBuilder &operator=(const TimerMessageBuilder &);
FinishTimerMessageBuilder280   flatbuffers::Offset<TimerMessage> Finish() {
281     const auto end = fbb_.EndTable(start_);
282     auto o = flatbuffers::Offset<TimerMessage>(end);
283     return o;
284   }
285 };
286 
287 inline flatbuffers::Offset<TimerMessage> CreateTimerMessage(
288     flatbuffers::FlatBufferBuilder &_fbb,
289     bool enable = false,
290     uint64_t wakeup_interval_ns = 0) {
291   TimerMessageBuilder builder_(_fbb);
292   builder_.add_wakeup_interval_ns(wakeup_interval_ns);
293   builder_.add_enable(enable);
294   return builder_.Finish();
295 }
296 
297 flatbuffers::Offset<TimerMessage> CreateTimerMessage(flatbuffers::FlatBufferBuilder &_fbb, const TimerMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
298 
299 struct WifiScanMessageT : public flatbuffers::NativeTable {
300   typedef WifiScanMessage TableType;
301   bool enable;
302   uint64_t scan_interval_ns;
WifiScanMessageTWifiScanMessageT303   WifiScanMessageT()
304       : enable(false),
305         scan_interval_ns(0) {
306   }
307 };
308 
309 /// Represents a message to ask the nanoapp to start or stop WiFi scanning and
310 /// the scan interval to use if scanning is being started
311 struct WifiScanMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
312   typedef WifiScanMessageT NativeTableType;
313   typedef WifiScanMessageBuilder Builder;
314   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
315     VT_ENABLE = 4,
316     VT_SCAN_INTERVAL_NS = 6
317   };
enableFLATBUFFERS_FINAL_CLASS318   bool enable() const {
319     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
320   }
mutate_enableFLATBUFFERS_FINAL_CLASS321   bool mutate_enable(bool _enable) {
322     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
323   }
scan_interval_nsFLATBUFFERS_FINAL_CLASS324   uint64_t scan_interval_ns() const {
325     return GetField<uint64_t>(VT_SCAN_INTERVAL_NS, 0);
326   }
mutate_scan_interval_nsFLATBUFFERS_FINAL_CLASS327   bool mutate_scan_interval_ns(uint64_t _scan_interval_ns) {
328     return SetField<uint64_t>(VT_SCAN_INTERVAL_NS, _scan_interval_ns, 0);
329   }
VerifyFLATBUFFERS_FINAL_CLASS330   bool Verify(flatbuffers::Verifier &verifier) const {
331     return VerifyTableStart(verifier) &&
332            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
333            VerifyField<uint64_t>(verifier, VT_SCAN_INTERVAL_NS) &&
334            verifier.EndTable();
335   }
336   WifiScanMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
337   void UnPackTo(WifiScanMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
338   static flatbuffers::Offset<WifiScanMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WifiScanMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
339 };
340 
341 struct WifiScanMessageBuilder {
342   typedef WifiScanMessage Table;
343   flatbuffers::FlatBufferBuilder &fbb_;
344   flatbuffers::uoffset_t start_;
add_enableWifiScanMessageBuilder345   void add_enable(bool enable) {
346     fbb_.AddElement<uint8_t>(WifiScanMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
347   }
add_scan_interval_nsWifiScanMessageBuilder348   void add_scan_interval_ns(uint64_t scan_interval_ns) {
349     fbb_.AddElement<uint64_t>(WifiScanMessage::VT_SCAN_INTERVAL_NS, scan_interval_ns, 0);
350   }
WifiScanMessageBuilderWifiScanMessageBuilder351   explicit WifiScanMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
352         : fbb_(_fbb) {
353     start_ = fbb_.StartTable();
354   }
355   WifiScanMessageBuilder &operator=(const WifiScanMessageBuilder &);
FinishWifiScanMessageBuilder356   flatbuffers::Offset<WifiScanMessage> Finish() {
357     const auto end = fbb_.EndTable(start_);
358     auto o = flatbuffers::Offset<WifiScanMessage>(end);
359     return o;
360   }
361 };
362 
363 inline flatbuffers::Offset<WifiScanMessage> CreateWifiScanMessage(
364     flatbuffers::FlatBufferBuilder &_fbb,
365     bool enable = false,
366     uint64_t scan_interval_ns = 0) {
367   WifiScanMessageBuilder builder_(_fbb);
368   builder_.add_scan_interval_ns(scan_interval_ns);
369   builder_.add_enable(enable);
370   return builder_.Finish();
371 }
372 
373 flatbuffers::Offset<WifiScanMessage> CreateWifiScanMessage(flatbuffers::FlatBufferBuilder &_fbb, const WifiScanMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
374 
375 struct GnssLocationMessageT : public flatbuffers::NativeTable {
376   typedef GnssLocationMessage TableType;
377   bool enable;
378   uint32_t scan_interval_millis;
379   uint32_t min_time_to_next_fix_millis;
GnssLocationMessageTGnssLocationMessageT380   GnssLocationMessageT()
381       : enable(false),
382         scan_interval_millis(0),
383         min_time_to_next_fix_millis(0) {
384   }
385 };
386 
387 /// Represents a message to ask the nanoapp to start or stop Gnss location
388 /// sampling at the requested interval
389 struct GnssLocationMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
390   typedef GnssLocationMessageT NativeTableType;
391   typedef GnssLocationMessageBuilder Builder;
392   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
393     VT_ENABLE = 4,
394     VT_SCAN_INTERVAL_MILLIS = 6,
395     VT_MIN_TIME_TO_NEXT_FIX_MILLIS = 8
396   };
enableFLATBUFFERS_FINAL_CLASS397   bool enable() const {
398     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
399   }
mutate_enableFLATBUFFERS_FINAL_CLASS400   bool mutate_enable(bool _enable) {
401     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
402   }
scan_interval_millisFLATBUFFERS_FINAL_CLASS403   uint32_t scan_interval_millis() const {
404     return GetField<uint32_t>(VT_SCAN_INTERVAL_MILLIS, 0);
405   }
mutate_scan_interval_millisFLATBUFFERS_FINAL_CLASS406   bool mutate_scan_interval_millis(uint32_t _scan_interval_millis) {
407     return SetField<uint32_t>(VT_SCAN_INTERVAL_MILLIS, _scan_interval_millis, 0);
408   }
min_time_to_next_fix_millisFLATBUFFERS_FINAL_CLASS409   uint32_t min_time_to_next_fix_millis() const {
410     return GetField<uint32_t>(VT_MIN_TIME_TO_NEXT_FIX_MILLIS, 0);
411   }
mutate_min_time_to_next_fix_millisFLATBUFFERS_FINAL_CLASS412   bool mutate_min_time_to_next_fix_millis(uint32_t _min_time_to_next_fix_millis) {
413     return SetField<uint32_t>(VT_MIN_TIME_TO_NEXT_FIX_MILLIS, _min_time_to_next_fix_millis, 0);
414   }
VerifyFLATBUFFERS_FINAL_CLASS415   bool Verify(flatbuffers::Verifier &verifier) const {
416     return VerifyTableStart(verifier) &&
417            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
418            VerifyField<uint32_t>(verifier, VT_SCAN_INTERVAL_MILLIS) &&
419            VerifyField<uint32_t>(verifier, VT_MIN_TIME_TO_NEXT_FIX_MILLIS) &&
420            verifier.EndTable();
421   }
422   GnssLocationMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
423   void UnPackTo(GnssLocationMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
424   static flatbuffers::Offset<GnssLocationMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GnssLocationMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
425 };
426 
427 struct GnssLocationMessageBuilder {
428   typedef GnssLocationMessage Table;
429   flatbuffers::FlatBufferBuilder &fbb_;
430   flatbuffers::uoffset_t start_;
add_enableGnssLocationMessageBuilder431   void add_enable(bool enable) {
432     fbb_.AddElement<uint8_t>(GnssLocationMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
433   }
add_scan_interval_millisGnssLocationMessageBuilder434   void add_scan_interval_millis(uint32_t scan_interval_millis) {
435     fbb_.AddElement<uint32_t>(GnssLocationMessage::VT_SCAN_INTERVAL_MILLIS, scan_interval_millis, 0);
436   }
add_min_time_to_next_fix_millisGnssLocationMessageBuilder437   void add_min_time_to_next_fix_millis(uint32_t min_time_to_next_fix_millis) {
438     fbb_.AddElement<uint32_t>(GnssLocationMessage::VT_MIN_TIME_TO_NEXT_FIX_MILLIS, min_time_to_next_fix_millis, 0);
439   }
GnssLocationMessageBuilderGnssLocationMessageBuilder440   explicit GnssLocationMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
441         : fbb_(_fbb) {
442     start_ = fbb_.StartTable();
443   }
444   GnssLocationMessageBuilder &operator=(const GnssLocationMessageBuilder &);
FinishGnssLocationMessageBuilder445   flatbuffers::Offset<GnssLocationMessage> Finish() {
446     const auto end = fbb_.EndTable(start_);
447     auto o = flatbuffers::Offset<GnssLocationMessage>(end);
448     return o;
449   }
450 };
451 
452 inline flatbuffers::Offset<GnssLocationMessage> CreateGnssLocationMessage(
453     flatbuffers::FlatBufferBuilder &_fbb,
454     bool enable = false,
455     uint32_t scan_interval_millis = 0,
456     uint32_t min_time_to_next_fix_millis = 0) {
457   GnssLocationMessageBuilder builder_(_fbb);
458   builder_.add_min_time_to_next_fix_millis(min_time_to_next_fix_millis);
459   builder_.add_scan_interval_millis(scan_interval_millis);
460   builder_.add_enable(enable);
461   return builder_.Finish();
462 }
463 
464 flatbuffers::Offset<GnssLocationMessage> CreateGnssLocationMessage(flatbuffers::FlatBufferBuilder &_fbb, const GnssLocationMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
465 
466 struct CellQueryMessageT : public flatbuffers::NativeTable {
467   typedef CellQueryMessage TableType;
468   bool enable;
469   uint64_t query_interval_ns;
CellQueryMessageTCellQueryMessageT470   CellQueryMessageT()
471       : enable(false),
472         query_interval_ns(0) {
473   }
474 };
475 
476 /// Represents a message to ask the nanoapp to start or stop querying the cell
477 /// modem for the latest cell scan results on the given interval
478 struct CellQueryMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
479   typedef CellQueryMessageT NativeTableType;
480   typedef CellQueryMessageBuilder Builder;
481   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
482     VT_ENABLE = 4,
483     VT_QUERY_INTERVAL_NS = 6
484   };
enableFLATBUFFERS_FINAL_CLASS485   bool enable() const {
486     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
487   }
mutate_enableFLATBUFFERS_FINAL_CLASS488   bool mutate_enable(bool _enable) {
489     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
490   }
query_interval_nsFLATBUFFERS_FINAL_CLASS491   uint64_t query_interval_ns() const {
492     return GetField<uint64_t>(VT_QUERY_INTERVAL_NS, 0);
493   }
mutate_query_interval_nsFLATBUFFERS_FINAL_CLASS494   bool mutate_query_interval_ns(uint64_t _query_interval_ns) {
495     return SetField<uint64_t>(VT_QUERY_INTERVAL_NS, _query_interval_ns, 0);
496   }
VerifyFLATBUFFERS_FINAL_CLASS497   bool Verify(flatbuffers::Verifier &verifier) const {
498     return VerifyTableStart(verifier) &&
499            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
500            VerifyField<uint64_t>(verifier, VT_QUERY_INTERVAL_NS) &&
501            verifier.EndTable();
502   }
503   CellQueryMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
504   void UnPackTo(CellQueryMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
505   static flatbuffers::Offset<CellQueryMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CellQueryMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
506 };
507 
508 struct CellQueryMessageBuilder {
509   typedef CellQueryMessage Table;
510   flatbuffers::FlatBufferBuilder &fbb_;
511   flatbuffers::uoffset_t start_;
add_enableCellQueryMessageBuilder512   void add_enable(bool enable) {
513     fbb_.AddElement<uint8_t>(CellQueryMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
514   }
add_query_interval_nsCellQueryMessageBuilder515   void add_query_interval_ns(uint64_t query_interval_ns) {
516     fbb_.AddElement<uint64_t>(CellQueryMessage::VT_QUERY_INTERVAL_NS, query_interval_ns, 0);
517   }
CellQueryMessageBuilderCellQueryMessageBuilder518   explicit CellQueryMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
519         : fbb_(_fbb) {
520     start_ = fbb_.StartTable();
521   }
522   CellQueryMessageBuilder &operator=(const CellQueryMessageBuilder &);
FinishCellQueryMessageBuilder523   flatbuffers::Offset<CellQueryMessage> Finish() {
524     const auto end = fbb_.EndTable(start_);
525     auto o = flatbuffers::Offset<CellQueryMessage>(end);
526     return o;
527   }
528 };
529 
530 inline flatbuffers::Offset<CellQueryMessage> CreateCellQueryMessage(
531     flatbuffers::FlatBufferBuilder &_fbb,
532     bool enable = false,
533     uint64_t query_interval_ns = 0) {
534   CellQueryMessageBuilder builder_(_fbb);
535   builder_.add_query_interval_ns(query_interval_ns);
536   builder_.add_enable(enable);
537   return builder_.Finish();
538 }
539 
540 flatbuffers::Offset<CellQueryMessage> CreateCellQueryMessage(flatbuffers::FlatBufferBuilder &_fbb, const CellQueryMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
541 
542 struct AudioRequestMessageT : public flatbuffers::NativeTable {
543   typedef AudioRequestMessage TableType;
544   bool enable;
545   uint64_t buffer_duration_ns;
AudioRequestMessageTAudioRequestMessageT546   AudioRequestMessageT()
547       : enable(false),
548         buffer_duration_ns(0) {
549   }
550 };
551 
552 /// Represents a message to ask the nanoapp to start / stop requesting Audio
553 /// data buffered at given interval. Note: If there is more than one audio
554 /// source, the nanoapp will only request audio from the first source.
555 struct AudioRequestMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
556   typedef AudioRequestMessageT NativeTableType;
557   typedef AudioRequestMessageBuilder Builder;
558   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
559     VT_ENABLE = 4,
560     VT_BUFFER_DURATION_NS = 6
561   };
enableFLATBUFFERS_FINAL_CLASS562   bool enable() const {
563     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
564   }
mutate_enableFLATBUFFERS_FINAL_CLASS565   bool mutate_enable(bool _enable) {
566     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
567   }
568   /// The buffer duration is also used as the interval for how often
569   /// the buffer should be delivered to the nanoapp.
buffer_duration_nsFLATBUFFERS_FINAL_CLASS570   uint64_t buffer_duration_ns() const {
571     return GetField<uint64_t>(VT_BUFFER_DURATION_NS, 0);
572   }
mutate_buffer_duration_nsFLATBUFFERS_FINAL_CLASS573   bool mutate_buffer_duration_ns(uint64_t _buffer_duration_ns) {
574     return SetField<uint64_t>(VT_BUFFER_DURATION_NS, _buffer_duration_ns, 0);
575   }
VerifyFLATBUFFERS_FINAL_CLASS576   bool Verify(flatbuffers::Verifier &verifier) const {
577     return VerifyTableStart(verifier) &&
578            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
579            VerifyField<uint64_t>(verifier, VT_BUFFER_DURATION_NS) &&
580            verifier.EndTable();
581   }
582   AudioRequestMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
583   void UnPackTo(AudioRequestMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
584   static flatbuffers::Offset<AudioRequestMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AudioRequestMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
585 };
586 
587 struct AudioRequestMessageBuilder {
588   typedef AudioRequestMessage Table;
589   flatbuffers::FlatBufferBuilder &fbb_;
590   flatbuffers::uoffset_t start_;
add_enableAudioRequestMessageBuilder591   void add_enable(bool enable) {
592     fbb_.AddElement<uint8_t>(AudioRequestMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
593   }
add_buffer_duration_nsAudioRequestMessageBuilder594   void add_buffer_duration_ns(uint64_t buffer_duration_ns) {
595     fbb_.AddElement<uint64_t>(AudioRequestMessage::VT_BUFFER_DURATION_NS, buffer_duration_ns, 0);
596   }
AudioRequestMessageBuilderAudioRequestMessageBuilder597   explicit AudioRequestMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
598         : fbb_(_fbb) {
599     start_ = fbb_.StartTable();
600   }
601   AudioRequestMessageBuilder &operator=(const AudioRequestMessageBuilder &);
FinishAudioRequestMessageBuilder602   flatbuffers::Offset<AudioRequestMessage> Finish() {
603     const auto end = fbb_.EndTable(start_);
604     auto o = flatbuffers::Offset<AudioRequestMessage>(end);
605     return o;
606   }
607 };
608 
609 inline flatbuffers::Offset<AudioRequestMessage> CreateAudioRequestMessage(
610     flatbuffers::FlatBufferBuilder &_fbb,
611     bool enable = false,
612     uint64_t buffer_duration_ns = 0) {
613   AudioRequestMessageBuilder builder_(_fbb);
614   builder_.add_buffer_duration_ns(buffer_duration_ns);
615   builder_.add_enable(enable);
616   return builder_.Finish();
617 }
618 
619 flatbuffers::Offset<AudioRequestMessage> CreateAudioRequestMessage(flatbuffers::FlatBufferBuilder &_fbb, const AudioRequestMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
620 
621 struct SensorRequestMessageT : public flatbuffers::NativeTable {
622   typedef SensorRequestMessage TableType;
623   bool enable;
624   chre::power_test::SensorType sensor;
625   uint64_t sampling_interval_ns;
626   uint64_t latency_ns;
SensorRequestMessageTSensorRequestMessageT627   SensorRequestMessageT()
628       : enable(false),
629         sensor(chre::power_test::SensorType::UNKNOWN),
630         sampling_interval_ns(0),
631         latency_ns(0) {
632   }
633 };
634 
635 /// Represents a message to ask the nanoapp to start / stop sampling / batching
636 /// a given sensor
637 struct SensorRequestMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
638   typedef SensorRequestMessageT NativeTableType;
639   typedef SensorRequestMessageBuilder Builder;
640   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
641     VT_ENABLE = 4,
642     VT_SENSOR = 6,
643     VT_SAMPLING_INTERVAL_NS = 8,
644     VT_LATENCY_NS = 10
645   };
enableFLATBUFFERS_FINAL_CLASS646   bool enable() const {
647     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
648   }
mutate_enableFLATBUFFERS_FINAL_CLASS649   bool mutate_enable(bool _enable) {
650     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
651   }
sensorFLATBUFFERS_FINAL_CLASS652   chre::power_test::SensorType sensor() const {
653     return static_cast<chre::power_test::SensorType>(GetField<uint8_t>(VT_SENSOR, 0));
654   }
mutate_sensorFLATBUFFERS_FINAL_CLASS655   bool mutate_sensor(chre::power_test::SensorType _sensor) {
656     return SetField<uint8_t>(VT_SENSOR, static_cast<uint8_t>(_sensor), 0);
657   }
sampling_interval_nsFLATBUFFERS_FINAL_CLASS658   uint64_t sampling_interval_ns() const {
659     return GetField<uint64_t>(VT_SAMPLING_INTERVAL_NS, 0);
660   }
mutate_sampling_interval_nsFLATBUFFERS_FINAL_CLASS661   bool mutate_sampling_interval_ns(uint64_t _sampling_interval_ns) {
662     return SetField<uint64_t>(VT_SAMPLING_INTERVAL_NS, _sampling_interval_ns, 0);
663   }
latency_nsFLATBUFFERS_FINAL_CLASS664   uint64_t latency_ns() const {
665     return GetField<uint64_t>(VT_LATENCY_NS, 0);
666   }
mutate_latency_nsFLATBUFFERS_FINAL_CLASS667   bool mutate_latency_ns(uint64_t _latency_ns) {
668     return SetField<uint64_t>(VT_LATENCY_NS, _latency_ns, 0);
669   }
VerifyFLATBUFFERS_FINAL_CLASS670   bool Verify(flatbuffers::Verifier &verifier) const {
671     return VerifyTableStart(verifier) &&
672            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
673            VerifyField<uint8_t>(verifier, VT_SENSOR) &&
674            VerifyField<uint64_t>(verifier, VT_SAMPLING_INTERVAL_NS) &&
675            VerifyField<uint64_t>(verifier, VT_LATENCY_NS) &&
676            verifier.EndTable();
677   }
678   SensorRequestMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
679   void UnPackTo(SensorRequestMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
680   static flatbuffers::Offset<SensorRequestMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SensorRequestMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
681 };
682 
683 struct SensorRequestMessageBuilder {
684   typedef SensorRequestMessage Table;
685   flatbuffers::FlatBufferBuilder &fbb_;
686   flatbuffers::uoffset_t start_;
add_enableSensorRequestMessageBuilder687   void add_enable(bool enable) {
688     fbb_.AddElement<uint8_t>(SensorRequestMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
689   }
add_sensorSensorRequestMessageBuilder690   void add_sensor(chre::power_test::SensorType sensor) {
691     fbb_.AddElement<uint8_t>(SensorRequestMessage::VT_SENSOR, static_cast<uint8_t>(sensor), 0);
692   }
add_sampling_interval_nsSensorRequestMessageBuilder693   void add_sampling_interval_ns(uint64_t sampling_interval_ns) {
694     fbb_.AddElement<uint64_t>(SensorRequestMessage::VT_SAMPLING_INTERVAL_NS, sampling_interval_ns, 0);
695   }
add_latency_nsSensorRequestMessageBuilder696   void add_latency_ns(uint64_t latency_ns) {
697     fbb_.AddElement<uint64_t>(SensorRequestMessage::VT_LATENCY_NS, latency_ns, 0);
698   }
SensorRequestMessageBuilderSensorRequestMessageBuilder699   explicit SensorRequestMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
700         : fbb_(_fbb) {
701     start_ = fbb_.StartTable();
702   }
703   SensorRequestMessageBuilder &operator=(const SensorRequestMessageBuilder &);
FinishSensorRequestMessageBuilder704   flatbuffers::Offset<SensorRequestMessage> Finish() {
705     const auto end = fbb_.EndTable(start_);
706     auto o = flatbuffers::Offset<SensorRequestMessage>(end);
707     return o;
708   }
709 };
710 
711 inline flatbuffers::Offset<SensorRequestMessage> CreateSensorRequestMessage(
712     flatbuffers::FlatBufferBuilder &_fbb,
713     bool enable = false,
714     chre::power_test::SensorType sensor = chre::power_test::SensorType::UNKNOWN,
715     uint64_t sampling_interval_ns = 0,
716     uint64_t latency_ns = 0) {
717   SensorRequestMessageBuilder builder_(_fbb);
718   builder_.add_latency_ns(latency_ns);
719   builder_.add_sampling_interval_ns(sampling_interval_ns);
720   builder_.add_sensor(sensor);
721   builder_.add_enable(enable);
722   return builder_.Finish();
723 }
724 
725 flatbuffers::Offset<SensorRequestMessage> CreateSensorRequestMessage(flatbuffers::FlatBufferBuilder &_fbb, const SensorRequestMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
726 
727 struct BreakItMessageT : public flatbuffers::NativeTable {
728   typedef BreakItMessage TableType;
729   bool enable;
BreakItMessageTBreakItMessageT730   BreakItMessageT()
731       : enable(false) {
732   }
733 };
734 
735 /// Represents a message to enable / disable break-it mode inside the nanoapp.
736 /// Break-it mode enables WiFi / GNSS / Cell to be queried every second and
737 /// enables all sensors at their fastest sampling rate.
738 struct BreakItMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
739   typedef BreakItMessageT NativeTableType;
740   typedef BreakItMessageBuilder Builder;
741   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
742     VT_ENABLE = 4
743   };
enableFLATBUFFERS_FINAL_CLASS744   bool enable() const {
745     return GetField<uint8_t>(VT_ENABLE, 0) != 0;
746   }
mutate_enableFLATBUFFERS_FINAL_CLASS747   bool mutate_enable(bool _enable) {
748     return SetField<uint8_t>(VT_ENABLE, static_cast<uint8_t>(_enable), 0);
749   }
VerifyFLATBUFFERS_FINAL_CLASS750   bool Verify(flatbuffers::Verifier &verifier) const {
751     return VerifyTableStart(verifier) &&
752            VerifyField<uint8_t>(verifier, VT_ENABLE) &&
753            verifier.EndTable();
754   }
755   BreakItMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
756   void UnPackTo(BreakItMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
757   static flatbuffers::Offset<BreakItMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BreakItMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
758 };
759 
760 struct BreakItMessageBuilder {
761   typedef BreakItMessage Table;
762   flatbuffers::FlatBufferBuilder &fbb_;
763   flatbuffers::uoffset_t start_;
add_enableBreakItMessageBuilder764   void add_enable(bool enable) {
765     fbb_.AddElement<uint8_t>(BreakItMessage::VT_ENABLE, static_cast<uint8_t>(enable), 0);
766   }
BreakItMessageBuilderBreakItMessageBuilder767   explicit BreakItMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
768         : fbb_(_fbb) {
769     start_ = fbb_.StartTable();
770   }
771   BreakItMessageBuilder &operator=(const BreakItMessageBuilder &);
FinishBreakItMessageBuilder772   flatbuffers::Offset<BreakItMessage> Finish() {
773     const auto end = fbb_.EndTable(start_);
774     auto o = flatbuffers::Offset<BreakItMessage>(end);
775     return o;
776   }
777 };
778 
779 inline flatbuffers::Offset<BreakItMessage> CreateBreakItMessage(
780     flatbuffers::FlatBufferBuilder &_fbb,
781     bool enable = false) {
782   BreakItMessageBuilder builder_(_fbb);
783   builder_.add_enable(enable);
784   return builder_.Finish();
785 }
786 
787 flatbuffers::Offset<BreakItMessage> CreateBreakItMessage(flatbuffers::FlatBufferBuilder &_fbb, const BreakItMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
788 
789 struct NanoappResponseMessageT : public flatbuffers::NativeTable {
790   typedef NanoappResponseMessage TableType;
791   bool success;
NanoappResponseMessageTNanoappResponseMessageT792   NanoappResponseMessageT()
793       : success(false) {
794   }
795 };
796 
797 /// Indicates whether the nanoapp successfully performed the requested action.
798 /// Any failures will be printed to the logs.
799 struct NanoappResponseMessage FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
800   typedef NanoappResponseMessageT NativeTableType;
801   typedef NanoappResponseMessageBuilder Builder;
802   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
803     VT_SUCCESS = 4
804   };
successFLATBUFFERS_FINAL_CLASS805   bool success() const {
806     return GetField<uint8_t>(VT_SUCCESS, 0) != 0;
807   }
mutate_successFLATBUFFERS_FINAL_CLASS808   bool mutate_success(bool _success) {
809     return SetField<uint8_t>(VT_SUCCESS, static_cast<uint8_t>(_success), 0);
810   }
VerifyFLATBUFFERS_FINAL_CLASS811   bool Verify(flatbuffers::Verifier &verifier) const {
812     return VerifyTableStart(verifier) &&
813            VerifyField<uint8_t>(verifier, VT_SUCCESS) &&
814            verifier.EndTable();
815   }
816   NanoappResponseMessageT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
817   void UnPackTo(NanoappResponseMessageT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
818   static flatbuffers::Offset<NanoappResponseMessage> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappResponseMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
819 };
820 
821 struct NanoappResponseMessageBuilder {
822   typedef NanoappResponseMessage Table;
823   flatbuffers::FlatBufferBuilder &fbb_;
824   flatbuffers::uoffset_t start_;
add_successNanoappResponseMessageBuilder825   void add_success(bool success) {
826     fbb_.AddElement<uint8_t>(NanoappResponseMessage::VT_SUCCESS, static_cast<uint8_t>(success), 0);
827   }
NanoappResponseMessageBuilderNanoappResponseMessageBuilder828   explicit NanoappResponseMessageBuilder(flatbuffers::FlatBufferBuilder &_fbb)
829         : fbb_(_fbb) {
830     start_ = fbb_.StartTable();
831   }
832   NanoappResponseMessageBuilder &operator=(const NanoappResponseMessageBuilder &);
FinishNanoappResponseMessageBuilder833   flatbuffers::Offset<NanoappResponseMessage> Finish() {
834     const auto end = fbb_.EndTable(start_);
835     auto o = flatbuffers::Offset<NanoappResponseMessage>(end);
836     return o;
837   }
838 };
839 
840 inline flatbuffers::Offset<NanoappResponseMessage> CreateNanoappResponseMessage(
841     flatbuffers::FlatBufferBuilder &_fbb,
842     bool success = false) {
843   NanoappResponseMessageBuilder builder_(_fbb);
844   builder_.add_success(success);
845   return builder_.Finish();
846 }
847 
848 flatbuffers::Offset<NanoappResponseMessage> CreateNanoappResponseMessage(flatbuffers::FlatBufferBuilder &_fbb, const NanoappResponseMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
849 
UnPack(const flatbuffers::resolver_function_t * _resolver)850 inline TimerMessageT *TimerMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
851   std::unique_ptr<chre::power_test::TimerMessageT> _o = std::unique_ptr<chre::power_test::TimerMessageT>(new TimerMessageT());
852   UnPackTo(_o.get(), _resolver);
853   return _o.release();
854 }
855 
UnPackTo(TimerMessageT * _o,const flatbuffers::resolver_function_t * _resolver)856 inline void TimerMessage::UnPackTo(TimerMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
857   (void)_o;
858   (void)_resolver;
859   { auto _e = enable(); _o->enable = _e; }
860   { auto _e = wakeup_interval_ns(); _o->wakeup_interval_ns = _e; }
861 }
862 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const TimerMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)863 inline flatbuffers::Offset<TimerMessage> TimerMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TimerMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
864   return CreateTimerMessage(_fbb, _o, _rehasher);
865 }
866 
CreateTimerMessage(flatbuffers::FlatBufferBuilder & _fbb,const TimerMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)867 inline flatbuffers::Offset<TimerMessage> CreateTimerMessage(flatbuffers::FlatBufferBuilder &_fbb, const TimerMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
868   (void)_rehasher;
869   (void)_o;
870   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TimerMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
871   auto _enable = _o->enable;
872   auto _wakeup_interval_ns = _o->wakeup_interval_ns;
873   return chre::power_test::CreateTimerMessage(
874       _fbb,
875       _enable,
876       _wakeup_interval_ns);
877 }
878 
UnPack(const flatbuffers::resolver_function_t * _resolver)879 inline WifiScanMessageT *WifiScanMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
880   std::unique_ptr<chre::power_test::WifiScanMessageT> _o = std::unique_ptr<chre::power_test::WifiScanMessageT>(new WifiScanMessageT());
881   UnPackTo(_o.get(), _resolver);
882   return _o.release();
883 }
884 
UnPackTo(WifiScanMessageT * _o,const flatbuffers::resolver_function_t * _resolver)885 inline void WifiScanMessage::UnPackTo(WifiScanMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
886   (void)_o;
887   (void)_resolver;
888   { auto _e = enable(); _o->enable = _e; }
889   { auto _e = scan_interval_ns(); _o->scan_interval_ns = _e; }
890 }
891 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const WifiScanMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)892 inline flatbuffers::Offset<WifiScanMessage> WifiScanMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WifiScanMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
893   return CreateWifiScanMessage(_fbb, _o, _rehasher);
894 }
895 
CreateWifiScanMessage(flatbuffers::FlatBufferBuilder & _fbb,const WifiScanMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)896 inline flatbuffers::Offset<WifiScanMessage> CreateWifiScanMessage(flatbuffers::FlatBufferBuilder &_fbb, const WifiScanMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
897   (void)_rehasher;
898   (void)_o;
899   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WifiScanMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
900   auto _enable = _o->enable;
901   auto _scan_interval_ns = _o->scan_interval_ns;
902   return chre::power_test::CreateWifiScanMessage(
903       _fbb,
904       _enable,
905       _scan_interval_ns);
906 }
907 
UnPack(const flatbuffers::resolver_function_t * _resolver)908 inline GnssLocationMessageT *GnssLocationMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
909   std::unique_ptr<chre::power_test::GnssLocationMessageT> _o = std::unique_ptr<chre::power_test::GnssLocationMessageT>(new GnssLocationMessageT());
910   UnPackTo(_o.get(), _resolver);
911   return _o.release();
912 }
913 
UnPackTo(GnssLocationMessageT * _o,const flatbuffers::resolver_function_t * _resolver)914 inline void GnssLocationMessage::UnPackTo(GnssLocationMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
915   (void)_o;
916   (void)_resolver;
917   { auto _e = enable(); _o->enable = _e; }
918   { auto _e = scan_interval_millis(); _o->scan_interval_millis = _e; }
919   { auto _e = min_time_to_next_fix_millis(); _o->min_time_to_next_fix_millis = _e; }
920 }
921 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const GnssLocationMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)922 inline flatbuffers::Offset<GnssLocationMessage> GnssLocationMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GnssLocationMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
923   return CreateGnssLocationMessage(_fbb, _o, _rehasher);
924 }
925 
CreateGnssLocationMessage(flatbuffers::FlatBufferBuilder & _fbb,const GnssLocationMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)926 inline flatbuffers::Offset<GnssLocationMessage> CreateGnssLocationMessage(flatbuffers::FlatBufferBuilder &_fbb, const GnssLocationMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
927   (void)_rehasher;
928   (void)_o;
929   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GnssLocationMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
930   auto _enable = _o->enable;
931   auto _scan_interval_millis = _o->scan_interval_millis;
932   auto _min_time_to_next_fix_millis = _o->min_time_to_next_fix_millis;
933   return chre::power_test::CreateGnssLocationMessage(
934       _fbb,
935       _enable,
936       _scan_interval_millis,
937       _min_time_to_next_fix_millis);
938 }
939 
UnPack(const flatbuffers::resolver_function_t * _resolver)940 inline CellQueryMessageT *CellQueryMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
941   std::unique_ptr<chre::power_test::CellQueryMessageT> _o = std::unique_ptr<chre::power_test::CellQueryMessageT>(new CellQueryMessageT());
942   UnPackTo(_o.get(), _resolver);
943   return _o.release();
944 }
945 
UnPackTo(CellQueryMessageT * _o,const flatbuffers::resolver_function_t * _resolver)946 inline void CellQueryMessage::UnPackTo(CellQueryMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
947   (void)_o;
948   (void)_resolver;
949   { auto _e = enable(); _o->enable = _e; }
950   { auto _e = query_interval_ns(); _o->query_interval_ns = _e; }
951 }
952 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const CellQueryMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)953 inline flatbuffers::Offset<CellQueryMessage> CellQueryMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CellQueryMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
954   return CreateCellQueryMessage(_fbb, _o, _rehasher);
955 }
956 
CreateCellQueryMessage(flatbuffers::FlatBufferBuilder & _fbb,const CellQueryMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)957 inline flatbuffers::Offset<CellQueryMessage> CreateCellQueryMessage(flatbuffers::FlatBufferBuilder &_fbb, const CellQueryMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
958   (void)_rehasher;
959   (void)_o;
960   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CellQueryMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
961   auto _enable = _o->enable;
962   auto _query_interval_ns = _o->query_interval_ns;
963   return chre::power_test::CreateCellQueryMessage(
964       _fbb,
965       _enable,
966       _query_interval_ns);
967 }
968 
UnPack(const flatbuffers::resolver_function_t * _resolver)969 inline AudioRequestMessageT *AudioRequestMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
970   std::unique_ptr<chre::power_test::AudioRequestMessageT> _o = std::unique_ptr<chre::power_test::AudioRequestMessageT>(new AudioRequestMessageT());
971   UnPackTo(_o.get(), _resolver);
972   return _o.release();
973 }
974 
UnPackTo(AudioRequestMessageT * _o,const flatbuffers::resolver_function_t * _resolver)975 inline void AudioRequestMessage::UnPackTo(AudioRequestMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
976   (void)_o;
977   (void)_resolver;
978   { auto _e = enable(); _o->enable = _e; }
979   { auto _e = buffer_duration_ns(); _o->buffer_duration_ns = _e; }
980 }
981 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const AudioRequestMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)982 inline flatbuffers::Offset<AudioRequestMessage> AudioRequestMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AudioRequestMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
983   return CreateAudioRequestMessage(_fbb, _o, _rehasher);
984 }
985 
CreateAudioRequestMessage(flatbuffers::FlatBufferBuilder & _fbb,const AudioRequestMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)986 inline flatbuffers::Offset<AudioRequestMessage> CreateAudioRequestMessage(flatbuffers::FlatBufferBuilder &_fbb, const AudioRequestMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
987   (void)_rehasher;
988   (void)_o;
989   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AudioRequestMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
990   auto _enable = _o->enable;
991   auto _buffer_duration_ns = _o->buffer_duration_ns;
992   return chre::power_test::CreateAudioRequestMessage(
993       _fbb,
994       _enable,
995       _buffer_duration_ns);
996 }
997 
UnPack(const flatbuffers::resolver_function_t * _resolver)998 inline SensorRequestMessageT *SensorRequestMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
999   std::unique_ptr<chre::power_test::SensorRequestMessageT> _o = std::unique_ptr<chre::power_test::SensorRequestMessageT>(new SensorRequestMessageT());
1000   UnPackTo(_o.get(), _resolver);
1001   return _o.release();
1002 }
1003 
UnPackTo(SensorRequestMessageT * _o,const flatbuffers::resolver_function_t * _resolver)1004 inline void SensorRequestMessage::UnPackTo(SensorRequestMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
1005   (void)_o;
1006   (void)_resolver;
1007   { auto _e = enable(); _o->enable = _e; }
1008   { auto _e = sensor(); _o->sensor = _e; }
1009   { auto _e = sampling_interval_ns(); _o->sampling_interval_ns = _e; }
1010   { auto _e = latency_ns(); _o->latency_ns = _e; }
1011 }
1012 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const SensorRequestMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1013 inline flatbuffers::Offset<SensorRequestMessage> SensorRequestMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SensorRequestMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
1014   return CreateSensorRequestMessage(_fbb, _o, _rehasher);
1015 }
1016 
CreateSensorRequestMessage(flatbuffers::FlatBufferBuilder & _fbb,const SensorRequestMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1017 inline flatbuffers::Offset<SensorRequestMessage> CreateSensorRequestMessage(flatbuffers::FlatBufferBuilder &_fbb, const SensorRequestMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
1018   (void)_rehasher;
1019   (void)_o;
1020   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SensorRequestMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
1021   auto _enable = _o->enable;
1022   auto _sensor = _o->sensor;
1023   auto _sampling_interval_ns = _o->sampling_interval_ns;
1024   auto _latency_ns = _o->latency_ns;
1025   return chre::power_test::CreateSensorRequestMessage(
1026       _fbb,
1027       _enable,
1028       _sensor,
1029       _sampling_interval_ns,
1030       _latency_ns);
1031 }
1032 
UnPack(const flatbuffers::resolver_function_t * _resolver)1033 inline BreakItMessageT *BreakItMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
1034   std::unique_ptr<chre::power_test::BreakItMessageT> _o = std::unique_ptr<chre::power_test::BreakItMessageT>(new BreakItMessageT());
1035   UnPackTo(_o.get(), _resolver);
1036   return _o.release();
1037 }
1038 
UnPackTo(BreakItMessageT * _o,const flatbuffers::resolver_function_t * _resolver)1039 inline void BreakItMessage::UnPackTo(BreakItMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
1040   (void)_o;
1041   (void)_resolver;
1042   { auto _e = enable(); _o->enable = _e; }
1043 }
1044 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const BreakItMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1045 inline flatbuffers::Offset<BreakItMessage> BreakItMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BreakItMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
1046   return CreateBreakItMessage(_fbb, _o, _rehasher);
1047 }
1048 
CreateBreakItMessage(flatbuffers::FlatBufferBuilder & _fbb,const BreakItMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1049 inline flatbuffers::Offset<BreakItMessage> CreateBreakItMessage(flatbuffers::FlatBufferBuilder &_fbb, const BreakItMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
1050   (void)_rehasher;
1051   (void)_o;
1052   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BreakItMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
1053   auto _enable = _o->enable;
1054   return chre::power_test::CreateBreakItMessage(
1055       _fbb,
1056       _enable);
1057 }
1058 
UnPack(const flatbuffers::resolver_function_t * _resolver)1059 inline NanoappResponseMessageT *NanoappResponseMessage::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
1060   std::unique_ptr<chre::power_test::NanoappResponseMessageT> _o = std::unique_ptr<chre::power_test::NanoappResponseMessageT>(new NanoappResponseMessageT());
1061   UnPackTo(_o.get(), _resolver);
1062   return _o.release();
1063 }
1064 
UnPackTo(NanoappResponseMessageT * _o,const flatbuffers::resolver_function_t * _resolver)1065 inline void NanoappResponseMessage::UnPackTo(NanoappResponseMessageT *_o, const flatbuffers::resolver_function_t *_resolver) const {
1066   (void)_o;
1067   (void)_resolver;
1068   { auto _e = success(); _o->success = _e; }
1069 }
1070 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const NanoappResponseMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1071 inline flatbuffers::Offset<NanoappResponseMessage> NanoappResponseMessage::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NanoappResponseMessageT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
1072   return CreateNanoappResponseMessage(_fbb, _o, _rehasher);
1073 }
1074 
CreateNanoappResponseMessage(flatbuffers::FlatBufferBuilder & _fbb,const NanoappResponseMessageT * _o,const flatbuffers::rehasher_function_t * _rehasher)1075 inline flatbuffers::Offset<NanoappResponseMessage> CreateNanoappResponseMessage(flatbuffers::FlatBufferBuilder &_fbb, const NanoappResponseMessageT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
1076   (void)_rehasher;
1077   (void)_o;
1078   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NanoappResponseMessageT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
1079   auto _success = _o->success;
1080   return chre::power_test::CreateNanoappResponseMessage(
1081       _fbb,
1082       _success);
1083 }
1084 
1085 }  // namespace power_test
1086 }  // namespace chre
1087 
1088 #endif  // FLATBUFFERS_GENERATED_CHREPOWERTEST_CHRE_POWER_TEST_H_
1089