xref: /btstack/src/btstack_event.h (revision 1b464e99afd70ddaf6b75be1ba7cc563a5f5dfd8)
1 /*
2  * Copyright (C) 2016 BlueKitchen GmbH
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  * 3. Neither the name of the copyright holders nor the names of
14  *    contributors may be used to endorse or promote products derived
15  *    from this software without specific prior written permission.
16  * 4. Any redistribution, use, or modification is done solely for
17  *    personal benefit and not for any commercial purpose or for
18  *    monetary gain.
19  *
20  * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
21  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS
24  * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
27  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
30  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31  * SUCH DAMAGE.
32  *
33  * Please inquire about commercial licensing options at
34  * [email protected]
35  *
36  */
37 
38 
39 /*
40  *  btstack_event.h
41  *
42  *  @brief BTstack event getter/setter
43  *  @note  Don't edit - generated by tool/btstack_event_generator.py
44  *
45  */
46 
47 #ifndef BTSTACK_EVENT_H
48 #define BTSTACK_EVENT_H
49 
50 #if defined __cplusplus
51 extern "C" {
52 #endif
53 
54 #include "btstack_util.h"
55 #include <stdint.h>
56 
57 #ifdef ENABLE_BLE
58 #include "ble/gatt_client.h"
59 #endif
60 
61 /* API_START */
62 
63 /**
64  * @brief Get event type
65  * @param event
66  * @return type of event
67  */
68 static inline uint8_t hci_event_packet_get_type(const uint8_t * event){
69     return event[0];
70 }
71 
72 /***
73  * @brief Get subevent code for a2dp event
74  * @param event packet
75  * @return subevent_code
76  */
77 static inline uint8_t hci_event_a2dp_meta_get_subevent_code(const uint8_t * event){
78     return event[2];
79 }
80 /***
81  * @brief Get subevent code for ancs event
82  * @param event packet
83  * @return subevent_code
84  */
85 static inline uint8_t hci_event_ancs_meta_get_subevent_code(const uint8_t * event){
86     return event[2];
87 }
88 /***
89  * @brief Get subevent code for avdtp event
90  * @param event packet
91  * @return subevent_code
92  */
93 static inline uint8_t hci_event_avdtp_meta_get_subevent_code(const uint8_t * event){
94     return event[2];
95 }
96 /***
97  * @brief Get subevent code for avrcp event
98  * @param event packet
99  * @return subevent_code
100  */
101 static inline uint8_t hci_event_avrcp_meta_get_subevent_code(const uint8_t * event){
102     return event[2];
103 }
104 /***
105  * @brief Get subevent code for gattservice event
106  * @param event packet
107  * @return subevent_code
108  */
109 static inline uint8_t hci_event_gattservice_meta_get_subevent_code(const uint8_t * event){
110     return event[2];
111 }
112 /***
113  * @brief Get subevent code for goep event
114  * @param event packet
115  * @return subevent_code
116  */
117 static inline uint8_t hci_event_goep_meta_get_subevent_code(const uint8_t * event){
118     return event[2];
119 }
120 /***
121  * @brief Get subevent code for hfp event
122  * @param event packet
123  * @return subevent_code
124  */
125 static inline uint8_t hci_event_hfp_meta_get_subevent_code(const uint8_t * event){
126     return event[2];
127 }
128 /***
129  * @brief Get subevent code for hid event
130  * @param event packet
131  * @return subevent_code
132  */
133 static inline uint8_t hci_event_hid_meta_get_subevent_code(const uint8_t * event){
134     return event[2];
135 }
136 /***
137  * @brief Get subevent code for hids event
138  * @param event packet
139  * @return subevent_code
140  */
141 static inline uint8_t hci_event_hids_meta_get_subevent_code(const uint8_t * event){
142     return event[2];
143 }
144 /***
145  * @brief Get subevent code for hsp event
146  * @param event packet
147  * @return subevent_code
148  */
149 static inline uint8_t hci_event_hsp_meta_get_subevent_code(const uint8_t * event){
150     return event[2];
151 }
152 /***
153  * @brief Get subevent code for le event
154  * @param event packet
155  * @return subevent_code
156  */
157 static inline uint8_t hci_event_le_meta_get_subevent_code(const uint8_t * event){
158     return event[2];
159 }
160 /***
161  * @brief Get subevent code for map event
162  * @param event packet
163  * @return subevent_code
164  */
165 static inline uint8_t hci_event_map_meta_get_subevent_code(const uint8_t * event){
166     return event[2];
167 }
168 /***
169  * @brief Get subevent code for mesh event
170  * @param event packet
171  * @return subevent_code
172  */
173 static inline uint8_t hci_event_mesh_meta_get_subevent_code(const uint8_t * event){
174     return event[2];
175 }
176 /***
177  * @brief Get subevent code for pbap event
178  * @param event packet
179  * @return subevent_code
180  */
181 static inline uint8_t hci_event_pbap_meta_get_subevent_code(const uint8_t * event){
182     return event[2];
183 }
184 /**
185  * @brief Get field status from event HCI_EVENT_INQUIRY_COMPLETE
186  * @param event packet
187  * @return status
188  * @note: btstack_type 1
189  */
190 static inline uint8_t hci_event_inquiry_complete_get_status(const uint8_t * event){
191     return event[2];
192 }
193 
194 /**
195  * @brief Get field num_responses from event HCI_EVENT_INQUIRY_RESULT
196  * @param event packet
197  * @return num_responses
198  * @note: btstack_type 1
199  */
200 static inline uint8_t hci_event_inquiry_result_get_num_responses(const uint8_t * event){
201     return event[2];
202 }
203 /**
204  * @brief Get field bd_addr from event HCI_EVENT_INQUIRY_RESULT
205  * @param event packet
206  * @param Pointer to storage for bd_addr
207  * @note: btstack_type B
208  */
209 static inline void hci_event_inquiry_result_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
210     reverse_bytes(&event[3], bd_addr, 6);
211 }
212 /**
213  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_INQUIRY_RESULT
214  * @param event packet
215  * @return page_scan_repetition_mode
216  * @note: btstack_type 1
217  */
218 static inline uint8_t hci_event_inquiry_result_get_page_scan_repetition_mode(const uint8_t * event){
219     return event[9];
220 }
221 /**
222  * @brief Get field reserved1 from event HCI_EVENT_INQUIRY_RESULT
223  * @param event packet
224  * @return reserved1
225  * @note: btstack_type 1
226  */
227 static inline uint8_t hci_event_inquiry_result_get_reserved1(const uint8_t * event){
228     return event[10];
229 }
230 /**
231  * @brief Get field reserved2 from event HCI_EVENT_INQUIRY_RESULT
232  * @param event packet
233  * @return reserved2
234  * @note: btstack_type 1
235  */
236 static inline uint8_t hci_event_inquiry_result_get_reserved2(const uint8_t * event){
237     return event[11];
238 }
239 /**
240  * @brief Get field class_of_device from event HCI_EVENT_INQUIRY_RESULT
241  * @param event packet
242  * @return class_of_device
243  * @note: btstack_type 3
244  */
245 static inline uint32_t hci_event_inquiry_result_get_class_of_device(const uint8_t * event){
246     return little_endian_read_24(event, 12);
247 }
248 /**
249  * @brief Get field clock_offset from event HCI_EVENT_INQUIRY_RESULT
250  * @param event packet
251  * @return clock_offset
252  * @note: btstack_type 2
253  */
254 static inline uint16_t hci_event_inquiry_result_get_clock_offset(const uint8_t * event){
255     return little_endian_read_16(event, 15);
256 }
257 
258 /**
259  * @brief Get field status from event HCI_EVENT_CONNECTION_COMPLETE
260  * @param event packet
261  * @return status
262  * @note: btstack_type 1
263  */
264 static inline uint8_t hci_event_connection_complete_get_status(const uint8_t * event){
265     return event[2];
266 }
267 /**
268  * @brief Get field connection_handle from event HCI_EVENT_CONNECTION_COMPLETE
269  * @param event packet
270  * @return connection_handle
271  * @note: btstack_type 2
272  */
273 static inline uint16_t hci_event_connection_complete_get_connection_handle(const uint8_t * event){
274     return little_endian_read_16(event, 3);
275 }
276 /**
277  * @brief Get field bd_addr from event HCI_EVENT_CONNECTION_COMPLETE
278  * @param event packet
279  * @param Pointer to storage for bd_addr
280  * @note: btstack_type B
281  */
282 static inline void hci_event_connection_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
283     reverse_bytes(&event[5], bd_addr, 6);
284 }
285 /**
286  * @brief Get field link_type from event HCI_EVENT_CONNECTION_COMPLETE
287  * @param event packet
288  * @return link_type
289  * @note: btstack_type 1
290  */
291 static inline uint8_t hci_event_connection_complete_get_link_type(const uint8_t * event){
292     return event[11];
293 }
294 /**
295  * @brief Get field encryption_enabled from event HCI_EVENT_CONNECTION_COMPLETE
296  * @param event packet
297  * @return encryption_enabled
298  * @note: btstack_type 1
299  */
300 static inline uint8_t hci_event_connection_complete_get_encryption_enabled(const uint8_t * event){
301     return event[12];
302 }
303 
304 /**
305  * @brief Get field bd_addr from event HCI_EVENT_CONNECTION_REQUEST
306  * @param event packet
307  * @param Pointer to storage for bd_addr
308  * @note: btstack_type B
309  */
310 static inline void hci_event_connection_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
311     reverse_bytes(&event[2], bd_addr, 6);
312 }
313 /**
314  * @brief Get field class_of_device from event HCI_EVENT_CONNECTION_REQUEST
315  * @param event packet
316  * @return class_of_device
317  * @note: btstack_type 3
318  */
319 static inline uint32_t hci_event_connection_request_get_class_of_device(const uint8_t * event){
320     return little_endian_read_24(event, 8);
321 }
322 /**
323  * @brief Get field link_type from event HCI_EVENT_CONNECTION_REQUEST
324  * @param event packet
325  * @return link_type
326  * @note: btstack_type 1
327  */
328 static inline uint8_t hci_event_connection_request_get_link_type(const uint8_t * event){
329     return event[11];
330 }
331 
332 /**
333  * @brief Get field status from event HCI_EVENT_DISCONNECTION_COMPLETE
334  * @param event packet
335  * @return status
336  * @note: btstack_type 1
337  */
338 static inline uint8_t hci_event_disconnection_complete_get_status(const uint8_t * event){
339     return event[2];
340 }
341 /**
342  * @brief Get field connection_handle from event HCI_EVENT_DISCONNECTION_COMPLETE
343  * @param event packet
344  * @return connection_handle
345  * @note: btstack_type 2
346  */
347 static inline uint16_t hci_event_disconnection_complete_get_connection_handle(const uint8_t * event){
348     return little_endian_read_16(event, 3);
349 }
350 /**
351  * @brief Get field reason from event HCI_EVENT_DISCONNECTION_COMPLETE
352  * @param event packet
353  * @return reason
354  * @note: btstack_type 1
355  */
356 static inline uint8_t hci_event_disconnection_complete_get_reason(const uint8_t * event){
357     return event[5];
358 }
359 
360 /**
361  * @brief Get field status from event HCI_EVENT_AUTHENTICATION_COMPLETE
362  * @param event packet
363  * @return status
364  * @note: btstack_type 1
365  */
366 static inline uint8_t hci_event_authentication_complete_get_status(const uint8_t * event){
367     return event[2];
368 }
369 /**
370  * @brief Get field connection_handle from event HCI_EVENT_AUTHENTICATION_COMPLETE
371  * @param event packet
372  * @return connection_handle
373  * @note: btstack_type 2
374  */
375 static inline uint16_t hci_event_authentication_complete_get_connection_handle(const uint8_t * event){
376     return little_endian_read_16(event, 3);
377 }
378 
379 /**
380  * @brief Get field status from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
381  * @param event packet
382  * @return status
383  * @note: btstack_type 1
384  */
385 static inline uint8_t hci_event_remote_name_request_complete_get_status(const uint8_t * event){
386     return event[2];
387 }
388 /**
389  * @brief Get field bd_addr from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
390  * @param event packet
391  * @param Pointer to storage for bd_addr
392  * @note: btstack_type B
393  */
394 static inline void hci_event_remote_name_request_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
395     reverse_bytes(&event[3], bd_addr, 6);
396 }
397 /**
398  * @brief Get field remote_name from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
399  * @param event packet
400  * @return remote_name
401  * @note: btstack_type N
402  */
403 static inline const char * hci_event_remote_name_request_complete_get_remote_name(const uint8_t * event){
404     return (const char *) &event[9];
405 }
406 
407 /**
408  * @brief Get field status from event HCI_EVENT_ENCRYPTION_CHANGE
409  * @param event packet
410  * @return status
411  * @note: btstack_type 1
412  */
413 static inline uint8_t hci_event_encryption_change_get_status(const uint8_t * event){
414     return event[2];
415 }
416 /**
417  * @brief Get field connection_handle from event HCI_EVENT_ENCRYPTION_CHANGE
418  * @param event packet
419  * @return connection_handle
420  * @note: btstack_type 2
421  */
422 static inline uint16_t hci_event_encryption_change_get_connection_handle(const uint8_t * event){
423     return little_endian_read_16(event, 3);
424 }
425 /**
426  * @brief Get field encryption_enabled from event HCI_EVENT_ENCRYPTION_CHANGE
427  * @param event packet
428  * @return encryption_enabled
429  * @note: btstack_type 1
430  */
431 static inline uint8_t hci_event_encryption_change_get_encryption_enabled(const uint8_t * event){
432     return event[5];
433 }
434 
435 /**
436  * @brief Get field status from event HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
437  * @param event packet
438  * @return status
439  * @note: btstack_type 1
440  */
441 static inline uint8_t hci_event_change_connection_link_key_complete_get_status(const uint8_t * event){
442     return event[2];
443 }
444 /**
445  * @brief Get field connection_handle from event HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
446  * @param event packet
447  * @return connection_handle
448  * @note: btstack_type 2
449  */
450 static inline uint16_t hci_event_change_connection_link_key_complete_get_connection_handle(const uint8_t * event){
451     return little_endian_read_16(event, 3);
452 }
453 
454 /**
455  * @brief Get field status from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
456  * @param event packet
457  * @return status
458  * @note: btstack_type 1
459  */
460 static inline uint8_t hci_event_master_link_key_complete_get_status(const uint8_t * event){
461     return event[2];
462 }
463 /**
464  * @brief Get field connection_handle from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
465  * @param event packet
466  * @return connection_handle
467  * @note: btstack_type 2
468  */
469 static inline uint16_t hci_event_master_link_key_complete_get_connection_handle(const uint8_t * event){
470     return little_endian_read_16(event, 3);
471 }
472 /**
473  * @brief Get field key_flag from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
474  * @param event packet
475  * @return key_flag
476  * @note: btstack_type 1
477  */
478 static inline uint8_t hci_event_master_link_key_complete_get_key_flag(const uint8_t * event){
479     return event[5];
480 }
481 
482 /**
483  * @brief Get field status from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
484  * @param event packet
485  * @return status
486  * @note: btstack_type 1
487  */
488 static inline uint8_t hci_event_read_remote_version_information_complete_get_status(const uint8_t * event){
489     return event[2];
490 }
491 /**
492  * @brief Get field connection_handle from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
493  * @param event packet
494  * @return connection_handle
495  * @note: btstack_type 2
496  */
497 static inline uint16_t hci_event_read_remote_version_information_complete_get_connection_handle(const uint8_t * event){
498     return little_endian_read_16(event, 3);
499 }
500 /**
501  * @brief Get field version from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
502  * @param event packet
503  * @return version
504  * @note: btstack_type 1
505  */
506 static inline uint8_t hci_event_read_remote_version_information_complete_get_version(const uint8_t * event){
507     return event[5];
508 }
509 /**
510  * @brief Get field manufacturer_name from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
511  * @param event packet
512  * @return manufacturer_name
513  * @note: btstack_type 2
514  */
515 static inline uint16_t hci_event_read_remote_version_information_complete_get_manufacturer_name(const uint8_t * event){
516     return little_endian_read_16(event, 6);
517 }
518 /**
519  * @brief Get field subversion from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
520  * @param event packet
521  * @return subversion
522  * @note: btstack_type 2
523  */
524 static inline uint16_t hci_event_read_remote_version_information_complete_get_subversion(const uint8_t * event){
525     return little_endian_read_16(event, 8);
526 }
527 
528 /**
529  * @brief Get field num_hci_command_packets from event HCI_EVENT_COMMAND_COMPLETE
530  * @param event packet
531  * @return num_hci_command_packets
532  * @note: btstack_type 1
533  */
534 static inline uint8_t hci_event_command_complete_get_num_hci_command_packets(const uint8_t * event){
535     return event[2];
536 }
537 /**
538  * @brief Get field command_opcode from event HCI_EVENT_COMMAND_COMPLETE
539  * @param event packet
540  * @return command_opcode
541  * @note: btstack_type 2
542  */
543 static inline uint16_t hci_event_command_complete_get_command_opcode(const uint8_t * event){
544     return little_endian_read_16(event, 3);
545 }
546 /**
547  * @brief Get field return_parameters from event HCI_EVENT_COMMAND_COMPLETE
548  * @param event packet
549  * @return return_parameters
550  * @note: btstack_type R
551  */
552 static inline const uint8_t * hci_event_command_complete_get_return_parameters(const uint8_t * event){
553     return &event[5];
554 }
555 
556 /**
557  * @brief Get field status from event HCI_EVENT_COMMAND_STATUS
558  * @param event packet
559  * @return status
560  * @note: btstack_type 1
561  */
562 static inline uint8_t hci_event_command_status_get_status(const uint8_t * event){
563     return event[2];
564 }
565 /**
566  * @brief Get field num_hci_command_packets from event HCI_EVENT_COMMAND_STATUS
567  * @param event packet
568  * @return num_hci_command_packets
569  * @note: btstack_type 1
570  */
571 static inline uint8_t hci_event_command_status_get_num_hci_command_packets(const uint8_t * event){
572     return event[3];
573 }
574 /**
575  * @brief Get field command_opcode from event HCI_EVENT_COMMAND_STATUS
576  * @param event packet
577  * @return command_opcode
578  * @note: btstack_type 2
579  */
580 static inline uint16_t hci_event_command_status_get_command_opcode(const uint8_t * event){
581     return little_endian_read_16(event, 4);
582 }
583 
584 /**
585  * @brief Get field hardware_code from event HCI_EVENT_HARDWARE_ERROR
586  * @param event packet
587  * @return hardware_code
588  * @note: btstack_type 1
589  */
590 static inline uint8_t hci_event_hardware_error_get_hardware_code(const uint8_t * event){
591     return event[2];
592 }
593 
594 /**
595  * @brief Get field status from event HCI_EVENT_ROLE_CHANGE
596  * @param event packet
597  * @return status
598  * @note: btstack_type 1
599  */
600 static inline uint8_t hci_event_role_change_get_status(const uint8_t * event){
601     return event[2];
602 }
603 /**
604  * @brief Get field bd_addr from event HCI_EVENT_ROLE_CHANGE
605  * @param event packet
606  * @param Pointer to storage for bd_addr
607  * @note: btstack_type B
608  */
609 static inline void hci_event_role_change_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
610     reverse_bytes(&event[3], bd_addr, 6);
611 }
612 /**
613  * @brief Get field role from event HCI_EVENT_ROLE_CHANGE
614  * @param event packet
615  * @return role
616  * @note: btstack_type 1
617  */
618 static inline uint8_t hci_event_role_change_get_role(const uint8_t * event){
619     return event[9];
620 }
621 
622 /**
623  * @brief Get field status from event HCI_EVENT_MODE_CHANGE
624  * @param event packet
625  * @return status
626  * @note: btstack_type 1
627  */
628 static inline uint8_t hci_event_mode_change_get_status(const uint8_t * event){
629     return event[2];
630 }
631 /**
632  * @brief Get field handle from event HCI_EVENT_MODE_CHANGE
633  * @param event packet
634  * @return handle
635  * @note: btstack_type H
636  */
637 static inline hci_con_handle_t hci_event_mode_change_get_handle(const uint8_t * event){
638     return little_endian_read_16(event, 3);
639 }
640 /**
641  * @brief Get field mode from event HCI_EVENT_MODE_CHANGE
642  * @param event packet
643  * @return mode
644  * @note: btstack_type 1
645  */
646 static inline uint8_t hci_event_mode_change_get_mode(const uint8_t * event){
647     return event[5];
648 }
649 /**
650  * @brief Get field interval from event HCI_EVENT_MODE_CHANGE
651  * @param event packet
652  * @return interval
653  * @note: btstack_type 2
654  */
655 static inline uint16_t hci_event_mode_change_get_interval(const uint8_t * event){
656     return little_endian_read_16(event, 6);
657 }
658 
659 /**
660  * @brief Get field bd_addr from event HCI_EVENT_PIN_CODE_REQUEST
661  * @param event packet
662  * @param Pointer to storage for bd_addr
663  * @note: btstack_type B
664  */
665 static inline void hci_event_pin_code_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
666     reverse_bytes(&event[2], bd_addr, 6);
667 }
668 
669 /**
670  * @brief Get field bd_addr from event HCI_EVENT_LINK_KEY_REQUEST
671  * @param event packet
672  * @param Pointer to storage for bd_addr
673  * @note: btstack_type B
674  */
675 static inline void hci_event_link_key_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
676     reverse_bytes(&event[2], bd_addr, 6);
677 }
678 
679 /**
680  * @brief Get field link_type from event HCI_EVENT_DATA_BUFFER_OVERFLOW
681  * @param event packet
682  * @return link_type
683  * @note: btstack_type 1
684  */
685 static inline uint8_t hci_event_data_buffer_overflow_get_link_type(const uint8_t * event){
686     return event[2];
687 }
688 
689 /**
690  * @brief Get field handle from event HCI_EVENT_MAX_SLOTS_CHANGED
691  * @param event packet
692  * @return handle
693  * @note: btstack_type H
694  */
695 static inline hci_con_handle_t hci_event_max_slots_changed_get_handle(const uint8_t * event){
696     return little_endian_read_16(event, 2);
697 }
698 /**
699  * @brief Get field lmp_max_slots from event HCI_EVENT_MAX_SLOTS_CHANGED
700  * @param event packet
701  * @return lmp_max_slots
702  * @note: btstack_type 1
703  */
704 static inline uint8_t hci_event_max_slots_changed_get_lmp_max_slots(const uint8_t * event){
705     return event[4];
706 }
707 
708 /**
709  * @brief Get field status from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
710  * @param event packet
711  * @return status
712  * @note: btstack_type 1
713  */
714 static inline uint8_t hci_event_read_clock_offset_complete_get_status(const uint8_t * event){
715     return event[2];
716 }
717 /**
718  * @brief Get field handle from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
719  * @param event packet
720  * @return handle
721  * @note: btstack_type H
722  */
723 static inline hci_con_handle_t hci_event_read_clock_offset_complete_get_handle(const uint8_t * event){
724     return little_endian_read_16(event, 3);
725 }
726 /**
727  * @brief Get field clock_offset from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
728  * @param event packet
729  * @return clock_offset
730  * @note: btstack_type 2
731  */
732 static inline uint16_t hci_event_read_clock_offset_complete_get_clock_offset(const uint8_t * event){
733     return little_endian_read_16(event, 5);
734 }
735 
736 /**
737  * @brief Get field status from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
738  * @param event packet
739  * @return status
740  * @note: btstack_type 1
741  */
742 static inline uint8_t hci_event_connection_packet_type_changed_get_status(const uint8_t * event){
743     return event[2];
744 }
745 /**
746  * @brief Get field handle from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
747  * @param event packet
748  * @return handle
749  * @note: btstack_type H
750  */
751 static inline hci_con_handle_t hci_event_connection_packet_type_changed_get_handle(const uint8_t * event){
752     return little_endian_read_16(event, 3);
753 }
754 /**
755  * @brief Get field packet_types from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
756  * @param event packet
757  * @return packet_types
758  * @note: btstack_type 2
759  */
760 static inline uint16_t hci_event_connection_packet_type_changed_get_packet_types(const uint8_t * event){
761     return little_endian_read_16(event, 5);
762 }
763 
764 /**
765  * @brief Get field num_responses from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
766  * @param event packet
767  * @return num_responses
768  * @note: btstack_type 1
769  */
770 static inline uint8_t hci_event_inquiry_result_with_rssi_get_num_responses(const uint8_t * event){
771     return event[2];
772 }
773 /**
774  * @brief Get field bd_addr from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
775  * @param event packet
776  * @param Pointer to storage for bd_addr
777  * @note: btstack_type B
778  */
779 static inline void hci_event_inquiry_result_with_rssi_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
780     reverse_bytes(&event[3], bd_addr, 6);
781 }
782 /**
783  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
784  * @param event packet
785  * @return page_scan_repetition_mode
786  * @note: btstack_type 1
787  */
788 static inline uint8_t hci_event_inquiry_result_with_rssi_get_page_scan_repetition_mode(const uint8_t * event){
789     return event[9];
790 }
791 /**
792  * @brief Get field reserved from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
793  * @param event packet
794  * @return reserved
795  * @note: btstack_type 1
796  */
797 static inline uint8_t hci_event_inquiry_result_with_rssi_get_reserved(const uint8_t * event){
798     return event[10];
799 }
800 /**
801  * @brief Get field class_of_device from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
802  * @param event packet
803  * @return class_of_device
804  * @note: btstack_type 3
805  */
806 static inline uint32_t hci_event_inquiry_result_with_rssi_get_class_of_device(const uint8_t * event){
807     return little_endian_read_24(event, 11);
808 }
809 /**
810  * @brief Get field clock_offset from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
811  * @param event packet
812  * @return clock_offset
813  * @note: btstack_type 2
814  */
815 static inline uint16_t hci_event_inquiry_result_with_rssi_get_clock_offset(const uint8_t * event){
816     return little_endian_read_16(event, 14);
817 }
818 /**
819  * @brief Get field rssi from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
820  * @param event packet
821  * @return rssi
822  * @note: btstack_type 1
823  */
824 static inline uint8_t hci_event_inquiry_result_with_rssi_get_rssi(const uint8_t * event){
825     return event[16];
826 }
827 
828 /**
829  * @brief Get field status from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
830  * @param event packet
831  * @return status
832  * @note: btstack_type 1
833  */
834 static inline uint8_t hci_event_synchronous_connection_complete_get_status(const uint8_t * event){
835     return event[2];
836 }
837 /**
838  * @brief Get field handle from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
839  * @param event packet
840  * @return handle
841  * @note: btstack_type H
842  */
843 static inline hci_con_handle_t hci_event_synchronous_connection_complete_get_handle(const uint8_t * event){
844     return little_endian_read_16(event, 3);
845 }
846 /**
847  * @brief Get field bd_addr from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
848  * @param event packet
849  * @param Pointer to storage for bd_addr
850  * @note: btstack_type B
851  */
852 static inline void hci_event_synchronous_connection_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
853     reverse_bytes(&event[5], bd_addr, 6);
854 }
855 /**
856  * @brief Get field link_type from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
857  * @param event packet
858  * @return link_type
859  * @note: btstack_type 1
860  */
861 static inline uint8_t hci_event_synchronous_connection_complete_get_link_type(const uint8_t * event){
862     return event[11];
863 }
864 /**
865  * @brief Get field transmission_interval from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
866  * @param event packet
867  * @return transmission_interval
868  * @note: btstack_type 1
869  */
870 static inline uint8_t hci_event_synchronous_connection_complete_get_transmission_interval(const uint8_t * event){
871     return event[12];
872 }
873 /**
874  * @brief Get field retransmission_interval from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
875  * @param event packet
876  * @return retransmission_interval
877  * @note: btstack_type 1
878  */
879 static inline uint8_t hci_event_synchronous_connection_complete_get_retransmission_interval(const uint8_t * event){
880     return event[13];
881 }
882 /**
883  * @brief Get field rx_packet_length from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
884  * @param event packet
885  * @return rx_packet_length
886  * @note: btstack_type 2
887  */
888 static inline uint16_t hci_event_synchronous_connection_complete_get_rx_packet_length(const uint8_t * event){
889     return little_endian_read_16(event, 14);
890 }
891 /**
892  * @brief Get field tx_packet_length from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
893  * @param event packet
894  * @return tx_packet_length
895  * @note: btstack_type 2
896  */
897 static inline uint16_t hci_event_synchronous_connection_complete_get_tx_packet_length(const uint8_t * event){
898     return little_endian_read_16(event, 16);
899 }
900 /**
901  * @brief Get field air_mode from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
902  * @param event packet
903  * @return air_mode
904  * @note: btstack_type 1
905  */
906 static inline uint8_t hci_event_synchronous_connection_complete_get_air_mode(const uint8_t * event){
907     return event[18];
908 }
909 
910 /**
911  * @brief Get field num_responses from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
912  * @param event packet
913  * @return num_responses
914  * @note: btstack_type 1
915  */
916 static inline uint8_t hci_event_extended_inquiry_response_get_num_responses(const uint8_t * event){
917     return event[2];
918 }
919 /**
920  * @brief Get field bd_addr from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
921  * @param event packet
922  * @param Pointer to storage for bd_addr
923  * @note: btstack_type B
924  */
925 static inline void hci_event_extended_inquiry_response_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
926     reverse_bytes(&event[3], bd_addr, 6);
927 }
928 /**
929  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
930  * @param event packet
931  * @return page_scan_repetition_mode
932  * @note: btstack_type 1
933  */
934 static inline uint8_t hci_event_extended_inquiry_response_get_page_scan_repetition_mode(const uint8_t * event){
935     return event[9];
936 }
937 /**
938  * @brief Get field reserved from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
939  * @param event packet
940  * @return reserved
941  * @note: btstack_type 1
942  */
943 static inline uint8_t hci_event_extended_inquiry_response_get_reserved(const uint8_t * event){
944     return event[10];
945 }
946 /**
947  * @brief Get field class_of_device from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
948  * @param event packet
949  * @return class_of_device
950  * @note: btstack_type 3
951  */
952 static inline uint32_t hci_event_extended_inquiry_response_get_class_of_device(const uint8_t * event){
953     return little_endian_read_24(event, 11);
954 }
955 /**
956  * @brief Get field clock_offset from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
957  * @param event packet
958  * @return clock_offset
959  * @note: btstack_type 2
960  */
961 static inline uint16_t hci_event_extended_inquiry_response_get_clock_offset(const uint8_t * event){
962     return little_endian_read_16(event, 14);
963 }
964 /**
965  * @brief Get field rssi from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
966  * @param event packet
967  * @return rssi
968  * @note: btstack_type 1
969  */
970 static inline uint8_t hci_event_extended_inquiry_response_get_rssi(const uint8_t * event){
971     return event[16];
972 }
973 
974 /**
975  * @brief Get field status from event HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE
976  * @param event packet
977  * @return status
978  * @note: btstack_type 1
979  */
980 static inline uint8_t hci_event_encryption_key_refresh_complete_get_status(const uint8_t * event){
981     return event[2];
982 }
983 /**
984  * @brief Get field handle from event HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE
985  * @param event packet
986  * @return handle
987  * @note: btstack_type H
988  */
989 static inline hci_con_handle_t hci_event_encryption_key_refresh_complete_get_handle(const uint8_t * event){
990     return little_endian_read_16(event, 3);
991 }
992 
993 /**
994  * @brief Get field bd_addr from event HCI_EVENT_USER_CONFIRMATION_REQUEST
995  * @param event packet
996  * @param Pointer to storage for bd_addr
997  * @note: btstack_type B
998  */
999 static inline void hci_event_user_confirmation_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1000     reverse_bytes(&event[2], bd_addr, 6);
1001 }
1002 /**
1003  * @brief Get field numeric_value from event HCI_EVENT_USER_CONFIRMATION_REQUEST
1004  * @param event packet
1005  * @return numeric_value
1006  * @note: btstack_type 4
1007  */
1008 static inline uint32_t hci_event_user_confirmation_request_get_numeric_value(const uint8_t * event){
1009     return little_endian_read_32(event, 8);
1010 }
1011 
1012 /**
1013  * @brief Get field bd_addr from event HCI_EVENT_USER_PASSKEY_REQUEST
1014  * @param event packet
1015  * @param Pointer to storage for bd_addr
1016  * @note: btstack_type B
1017  */
1018 static inline void hci_event_user_passkey_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1019     reverse_bytes(&event[2], bd_addr, 6);
1020 }
1021 
1022 /**
1023  * @brief Get field bd_addr from event HCI_EVENT_REMOTE_OOB_DATA_REQUEST
1024  * @param event packet
1025  * @param Pointer to storage for bd_addr
1026  * @note: btstack_type B
1027  */
1028 static inline void hci_event_remote_oob_data_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1029     reverse_bytes(&event[2], bd_addr, 6);
1030 }
1031 
1032 /**
1033  * @brief Get field status from event HCI_EVENT_SIMPLE_PAIRING_COMPLETE
1034  * @param event packet
1035  * @return status
1036  * @note: btstack_type 1
1037  */
1038 static inline uint8_t hci_event_simple_pairing_complete_get_status(const uint8_t * event){
1039     return event[2];
1040 }
1041 /**
1042  * @brief Get field bd_addr from event HCI_EVENT_SIMPLE_PAIRING_COMPLETE
1043  * @param event packet
1044  * @param Pointer to storage for bd_addr
1045  * @note: btstack_type B
1046  */
1047 static inline void hci_event_simple_pairing_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1048     reverse_bytes(&event[3], bd_addr, 6);
1049 }
1050 
1051 /**
1052  * @brief Get field state from event BTSTACK_EVENT_STATE
1053  * @param event packet
1054  * @return state
1055  * @note: btstack_type 1
1056  */
1057 static inline uint8_t btstack_event_state_get_state(const uint8_t * event){
1058     return event[2];
1059 }
1060 
1061 /**
1062  * @brief Get field number_connections from event BTSTACK_EVENT_NR_CONNECTIONS_CHANGED
1063  * @param event packet
1064  * @return number_connections
1065  * @note: btstack_type 1
1066  */
1067 static inline uint8_t btstack_event_nr_connections_changed_get_number_connections(const uint8_t * event){
1068     return event[2];
1069 }
1070 
1071 
1072 /**
1073  * @brief Get field discoverable from event BTSTACK_EVENT_DISCOVERABLE_ENABLED
1074  * @param event packet
1075  * @return discoverable
1076  * @note: btstack_type 1
1077  */
1078 static inline uint8_t btstack_event_discoverable_enabled_get_discoverable(const uint8_t * event){
1079     return event[2];
1080 }
1081 
1082 /**
1083  * @brief Get field active from event HCI_EVENT_TRANSPORT_SLEEP_MODE
1084  * @param event packet
1085  * @return active
1086  * @note: btstack_type 1
1087  */
1088 static inline uint8_t hci_event_transport_sleep_mode_get_active(const uint8_t * event){
1089     return event[2];
1090 }
1091 
1092 /**
1093  * @brief Get field handle from event HCI_EVENT_SCO_CAN_SEND_NOW
1094  * @param event packet
1095  * @param Pointer to storage for handle
1096  * @note: btstack_type B
1097  */
1098 static inline void hci_event_sco_can_send_now_get_handle(const uint8_t * event, bd_addr_t handle){
1099     reverse_bytes(&event[2], handle, 6);
1100 }
1101 
1102 /**
1103  * @brief Get field status from event L2CAP_EVENT_CHANNEL_OPENED
1104  * @param event packet
1105  * @return status
1106  * @note: btstack_type 1
1107  */
1108 static inline uint8_t l2cap_event_channel_opened_get_status(const uint8_t * event){
1109     return event[2];
1110 }
1111 /**
1112  * @brief Get field address from event L2CAP_EVENT_CHANNEL_OPENED
1113  * @param event packet
1114  * @param Pointer to storage for address
1115  * @note: btstack_type B
1116  */
1117 static inline void l2cap_event_channel_opened_get_address(const uint8_t * event, bd_addr_t address){
1118     reverse_bytes(&event[3], address, 6);
1119 }
1120 /**
1121  * @brief Get field handle from event L2CAP_EVENT_CHANNEL_OPENED
1122  * @param event packet
1123  * @return handle
1124  * @note: btstack_type H
1125  */
1126 static inline hci_con_handle_t l2cap_event_channel_opened_get_handle(const uint8_t * event){
1127     return little_endian_read_16(event, 9);
1128 }
1129 /**
1130  * @brief Get field psm from event L2CAP_EVENT_CHANNEL_OPENED
1131  * @param event packet
1132  * @return psm
1133  * @note: btstack_type 2
1134  */
1135 static inline uint16_t l2cap_event_channel_opened_get_psm(const uint8_t * event){
1136     return little_endian_read_16(event, 11);
1137 }
1138 /**
1139  * @brief Get field local_cid from event L2CAP_EVENT_CHANNEL_OPENED
1140  * @param event packet
1141  * @return local_cid
1142  * @note: btstack_type 2
1143  */
1144 static inline uint16_t l2cap_event_channel_opened_get_local_cid(const uint8_t * event){
1145     return little_endian_read_16(event, 13);
1146 }
1147 /**
1148  * @brief Get field remote_cid from event L2CAP_EVENT_CHANNEL_OPENED
1149  * @param event packet
1150  * @return remote_cid
1151  * @note: btstack_type 2
1152  */
1153 static inline uint16_t l2cap_event_channel_opened_get_remote_cid(const uint8_t * event){
1154     return little_endian_read_16(event, 15);
1155 }
1156 /**
1157  * @brief Get field local_mtu from event L2CAP_EVENT_CHANNEL_OPENED
1158  * @param event packet
1159  * @return local_mtu
1160  * @note: btstack_type 2
1161  */
1162 static inline uint16_t l2cap_event_channel_opened_get_local_mtu(const uint8_t * event){
1163     return little_endian_read_16(event, 17);
1164 }
1165 /**
1166  * @brief Get field remote_mtu from event L2CAP_EVENT_CHANNEL_OPENED
1167  * @param event packet
1168  * @return remote_mtu
1169  * @note: btstack_type 2
1170  */
1171 static inline uint16_t l2cap_event_channel_opened_get_remote_mtu(const uint8_t * event){
1172     return little_endian_read_16(event, 19);
1173 }
1174 /**
1175  * @brief Get field flush_timeout from event L2CAP_EVENT_CHANNEL_OPENED
1176  * @param event packet
1177  * @return flush_timeout
1178  * @note: btstack_type 2
1179  */
1180 static inline uint16_t l2cap_event_channel_opened_get_flush_timeout(const uint8_t * event){
1181     return little_endian_read_16(event, 21);
1182 }
1183 /**
1184  * @brief Get field incoming from event L2CAP_EVENT_CHANNEL_OPENED
1185  * @param event packet
1186  * @return incoming
1187  * @note: btstack_type 1
1188  */
1189 static inline uint8_t l2cap_event_channel_opened_get_incoming(const uint8_t * event){
1190     return event[23];
1191 }
1192 /**
1193  * @brief Get field mode from event L2CAP_EVENT_CHANNEL_OPENED
1194  * @param event packet
1195  * @return mode
1196  * @note: btstack_type 1
1197  */
1198 static inline uint8_t l2cap_event_channel_opened_get_mode(const uint8_t * event){
1199     return event[24];
1200 }
1201 /**
1202  * @brief Get field fcs from event L2CAP_EVENT_CHANNEL_OPENED
1203  * @param event packet
1204  * @return fcs
1205  * @note: btstack_type 1
1206  */
1207 static inline uint8_t l2cap_event_channel_opened_get_fcs(const uint8_t * event){
1208     return event[25];
1209 }
1210 
1211 /**
1212  * @brief Get field local_cid from event L2CAP_EVENT_CHANNEL_CLOSED
1213  * @param event packet
1214  * @return local_cid
1215  * @note: btstack_type 2
1216  */
1217 static inline uint16_t l2cap_event_channel_closed_get_local_cid(const uint8_t * event){
1218     return little_endian_read_16(event, 2);
1219 }
1220 
1221 /**
1222  * @brief Get field address from event L2CAP_EVENT_INCOMING_CONNECTION
1223  * @param event packet
1224  * @param Pointer to storage for address
1225  * @note: btstack_type B
1226  */
1227 static inline void l2cap_event_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
1228     reverse_bytes(&event[2], address, 6);
1229 }
1230 /**
1231  * @brief Get field handle from event L2CAP_EVENT_INCOMING_CONNECTION
1232  * @param event packet
1233  * @return handle
1234  * @note: btstack_type H
1235  */
1236 static inline hci_con_handle_t l2cap_event_incoming_connection_get_handle(const uint8_t * event){
1237     return little_endian_read_16(event, 8);
1238 }
1239 /**
1240  * @brief Get field psm from event L2CAP_EVENT_INCOMING_CONNECTION
1241  * @param event packet
1242  * @return psm
1243  * @note: btstack_type 2
1244  */
1245 static inline uint16_t l2cap_event_incoming_connection_get_psm(const uint8_t * event){
1246     return little_endian_read_16(event, 10);
1247 }
1248 /**
1249  * @brief Get field local_cid from event L2CAP_EVENT_INCOMING_CONNECTION
1250  * @param event packet
1251  * @return local_cid
1252  * @note: btstack_type 2
1253  */
1254 static inline uint16_t l2cap_event_incoming_connection_get_local_cid(const uint8_t * event){
1255     return little_endian_read_16(event, 12);
1256 }
1257 /**
1258  * @brief Get field remote_cid from event L2CAP_EVENT_INCOMING_CONNECTION
1259  * @param event packet
1260  * @return remote_cid
1261  * @note: btstack_type 2
1262  */
1263 static inline uint16_t l2cap_event_incoming_connection_get_remote_cid(const uint8_t * event){
1264     return little_endian_read_16(event, 14);
1265 }
1266 
1267 /**
1268  * @brief Get field handle from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1269  * @param event packet
1270  * @return handle
1271  * @note: btstack_type H
1272  */
1273 static inline hci_con_handle_t l2cap_event_connection_parameter_update_request_get_handle(const uint8_t * event){
1274     return little_endian_read_16(event, 2);
1275 }
1276 /**
1277  * @brief Get field interval_min from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1278  * @param event packet
1279  * @return interval_min
1280  * @note: btstack_type 2
1281  */
1282 static inline uint16_t l2cap_event_connection_parameter_update_request_get_interval_min(const uint8_t * event){
1283     return little_endian_read_16(event, 4);
1284 }
1285 /**
1286  * @brief Get field interval_max from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1287  * @param event packet
1288  * @return interval_max
1289  * @note: btstack_type 2
1290  */
1291 static inline uint16_t l2cap_event_connection_parameter_update_request_get_interval_max(const uint8_t * event){
1292     return little_endian_read_16(event, 6);
1293 }
1294 /**
1295  * @brief Get field latencey from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1296  * @param event packet
1297  * @return latencey
1298  * @note: btstack_type 2
1299  */
1300 static inline uint16_t l2cap_event_connection_parameter_update_request_get_latencey(const uint8_t * event){
1301     return little_endian_read_16(event, 8);
1302 }
1303 /**
1304  * @brief Get field timeout_multiplier from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1305  * @param event packet
1306  * @return timeout_multiplier
1307  * @note: btstack_type 2
1308  */
1309 static inline uint16_t l2cap_event_connection_parameter_update_request_get_timeout_multiplier(const uint8_t * event){
1310     return little_endian_read_16(event, 10);
1311 }
1312 
1313 /**
1314  * @brief Get field handle from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE
1315  * @param event packet
1316  * @return handle
1317  * @note: btstack_type H
1318  */
1319 static inline hci_con_handle_t l2cap_event_connection_parameter_update_response_get_handle(const uint8_t * event){
1320     return little_endian_read_16(event, 2);
1321 }
1322 /**
1323  * @brief Get field result from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE
1324  * @param event packet
1325  * @return result
1326  * @note: btstack_type 2
1327  */
1328 static inline uint16_t l2cap_event_connection_parameter_update_response_get_result(const uint8_t * event){
1329     return little_endian_read_16(event, 4);
1330 }
1331 
1332 /**
1333  * @brief Get field local_cid from event L2CAP_EVENT_CAN_SEND_NOW
1334  * @param event packet
1335  * @return local_cid
1336  * @note: btstack_type 2
1337  */
1338 static inline uint16_t l2cap_event_can_send_now_get_local_cid(const uint8_t * event){
1339     return little_endian_read_16(event, 2);
1340 }
1341 
1342 /**
1343  * @brief Get field address_type from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1344  * @param event packet
1345  * @return address_type
1346  * @note: btstack_type 1
1347  */
1348 static inline uint8_t l2cap_event_le_incoming_connection_get_address_type(const uint8_t * event){
1349     return event[2];
1350 }
1351 /**
1352  * @brief Get field address from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1353  * @param event packet
1354  * @param Pointer to storage for address
1355  * @note: btstack_type B
1356  */
1357 static inline void l2cap_event_le_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
1358     reverse_bytes(&event[3], address, 6);
1359 }
1360 /**
1361  * @brief Get field handle from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1362  * @param event packet
1363  * @return handle
1364  * @note: btstack_type H
1365  */
1366 static inline hci_con_handle_t l2cap_event_le_incoming_connection_get_handle(const uint8_t * event){
1367     return little_endian_read_16(event, 9);
1368 }
1369 /**
1370  * @brief Get field psm from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1371  * @param event packet
1372  * @return psm
1373  * @note: btstack_type 2
1374  */
1375 static inline uint16_t l2cap_event_le_incoming_connection_get_psm(const uint8_t * event){
1376     return little_endian_read_16(event, 11);
1377 }
1378 /**
1379  * @brief Get field local_cid from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1380  * @param event packet
1381  * @return local_cid
1382  * @note: btstack_type 2
1383  */
1384 static inline uint16_t l2cap_event_le_incoming_connection_get_local_cid(const uint8_t * event){
1385     return little_endian_read_16(event, 13);
1386 }
1387 /**
1388  * @brief Get field remote_cid from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1389  * @param event packet
1390  * @return remote_cid
1391  * @note: btstack_type 2
1392  */
1393 static inline uint16_t l2cap_event_le_incoming_connection_get_remote_cid(const uint8_t * event){
1394     return little_endian_read_16(event, 15);
1395 }
1396 /**
1397  * @brief Get field remote_mtu from event L2CAP_EVENT_LE_INCOMING_CONNECTION
1398  * @param event packet
1399  * @return remote_mtu
1400  * @note: btstack_type 2
1401  */
1402 static inline uint16_t l2cap_event_le_incoming_connection_get_remote_mtu(const uint8_t * event){
1403     return little_endian_read_16(event, 17);
1404 }
1405 
1406 /**
1407  * @brief Get field status from event L2CAP_EVENT_LE_CHANNEL_OPENED
1408  * @param event packet
1409  * @return status
1410  * @note: btstack_type 1
1411  */
1412 static inline uint8_t l2cap_event_le_channel_opened_get_status(const uint8_t * event){
1413     return event[2];
1414 }
1415 /**
1416  * @brief Get field address_type from event L2CAP_EVENT_LE_CHANNEL_OPENED
1417  * @param event packet
1418  * @return address_type
1419  * @note: btstack_type 1
1420  */
1421 static inline uint8_t l2cap_event_le_channel_opened_get_address_type(const uint8_t * event){
1422     return event[3];
1423 }
1424 /**
1425  * @brief Get field address from event L2CAP_EVENT_LE_CHANNEL_OPENED
1426  * @param event packet
1427  * @param Pointer to storage for address
1428  * @note: btstack_type B
1429  */
1430 static inline void l2cap_event_le_channel_opened_get_address(const uint8_t * event, bd_addr_t address){
1431     reverse_bytes(&event[4], address, 6);
1432 }
1433 /**
1434  * @brief Get field handle from event L2CAP_EVENT_LE_CHANNEL_OPENED
1435  * @param event packet
1436  * @return handle
1437  * @note: btstack_type H
1438  */
1439 static inline hci_con_handle_t l2cap_event_le_channel_opened_get_handle(const uint8_t * event){
1440     return little_endian_read_16(event, 10);
1441 }
1442 /**
1443  * @brief Get field incoming from event L2CAP_EVENT_LE_CHANNEL_OPENED
1444  * @param event packet
1445  * @return incoming
1446  * @note: btstack_type 1
1447  */
1448 static inline uint8_t l2cap_event_le_channel_opened_get_incoming(const uint8_t * event){
1449     return event[12];
1450 }
1451 /**
1452  * @brief Get field psm from event L2CAP_EVENT_LE_CHANNEL_OPENED
1453  * @param event packet
1454  * @return psm
1455  * @note: btstack_type 2
1456  */
1457 static inline uint16_t l2cap_event_le_channel_opened_get_psm(const uint8_t * event){
1458     return little_endian_read_16(event, 13);
1459 }
1460 /**
1461  * @brief Get field local_cid from event L2CAP_EVENT_LE_CHANNEL_OPENED
1462  * @param event packet
1463  * @return local_cid
1464  * @note: btstack_type 2
1465  */
1466 static inline uint16_t l2cap_event_le_channel_opened_get_local_cid(const uint8_t * event){
1467     return little_endian_read_16(event, 15);
1468 }
1469 /**
1470  * @brief Get field remote_cid from event L2CAP_EVENT_LE_CHANNEL_OPENED
1471  * @param event packet
1472  * @return remote_cid
1473  * @note: btstack_type 2
1474  */
1475 static inline uint16_t l2cap_event_le_channel_opened_get_remote_cid(const uint8_t * event){
1476     return little_endian_read_16(event, 17);
1477 }
1478 /**
1479  * @brief Get field local_mtu from event L2CAP_EVENT_LE_CHANNEL_OPENED
1480  * @param event packet
1481  * @return local_mtu
1482  * @note: btstack_type 2
1483  */
1484 static inline uint16_t l2cap_event_le_channel_opened_get_local_mtu(const uint8_t * event){
1485     return little_endian_read_16(event, 19);
1486 }
1487 /**
1488  * @brief Get field remote_mtu from event L2CAP_EVENT_LE_CHANNEL_OPENED
1489  * @param event packet
1490  * @return remote_mtu
1491  * @note: btstack_type 2
1492  */
1493 static inline uint16_t l2cap_event_le_channel_opened_get_remote_mtu(const uint8_t * event){
1494     return little_endian_read_16(event, 21);
1495 }
1496 
1497 /**
1498  * @brief Get field local_cid from event L2CAP_EVENT_LE_CHANNEL_CLOSED
1499  * @param event packet
1500  * @return local_cid
1501  * @note: btstack_type 2
1502  */
1503 static inline uint16_t l2cap_event_le_channel_closed_get_local_cid(const uint8_t * event){
1504     return little_endian_read_16(event, 2);
1505 }
1506 
1507 /**
1508  * @brief Get field local_cid from event L2CAP_EVENT_LE_CAN_SEND_NOW
1509  * @param event packet
1510  * @return local_cid
1511  * @note: btstack_type 2
1512  */
1513 static inline uint16_t l2cap_event_le_can_send_now_get_local_cid(const uint8_t * event){
1514     return little_endian_read_16(event, 2);
1515 }
1516 
1517 /**
1518  * @brief Get field local_cid from event L2CAP_EVENT_LE_PACKET_SENT
1519  * @param event packet
1520  * @return local_cid
1521  * @note: btstack_type 2
1522  */
1523 static inline uint16_t l2cap_event_le_packet_sent_get_local_cid(const uint8_t * event){
1524     return little_endian_read_16(event, 2);
1525 }
1526 
1527 /**
1528  * @brief Get field local_cid from event L2CAP_EVENT_ERTM_BUFFER_RELEASED
1529  * @param event packet
1530  * @return local_cid
1531  * @note: btstack_type 2
1532  */
1533 static inline uint16_t l2cap_event_ertm_buffer_released_get_local_cid(const uint8_t * event){
1534     return little_endian_read_16(event, 2);
1535 }
1536 
1537 
1538 /**
1539  * @brief Get field status from event RFCOMM_EVENT_CHANNEL_OPENED
1540  * @param event packet
1541  * @return status
1542  * @note: btstack_type 1
1543  */
1544 static inline uint8_t rfcomm_event_channel_opened_get_status(const uint8_t * event){
1545     return event[2];
1546 }
1547 /**
1548  * @brief Get field bd_addr from event RFCOMM_EVENT_CHANNEL_OPENED
1549  * @param event packet
1550  * @param Pointer to storage for bd_addr
1551  * @note: btstack_type B
1552  */
1553 static inline void rfcomm_event_channel_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1554     reverse_bytes(&event[3], bd_addr, 6);
1555 }
1556 /**
1557  * @brief Get field con_handle from event RFCOMM_EVENT_CHANNEL_OPENED
1558  * @param event packet
1559  * @return con_handle
1560  * @note: btstack_type 2
1561  */
1562 static inline uint16_t rfcomm_event_channel_opened_get_con_handle(const uint8_t * event){
1563     return little_endian_read_16(event, 9);
1564 }
1565 /**
1566  * @brief Get field server_channel from event RFCOMM_EVENT_CHANNEL_OPENED
1567  * @param event packet
1568  * @return server_channel
1569  * @note: btstack_type 1
1570  */
1571 static inline uint8_t rfcomm_event_channel_opened_get_server_channel(const uint8_t * event){
1572     return event[11];
1573 }
1574 /**
1575  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CHANNEL_OPENED
1576  * @param event packet
1577  * @return rfcomm_cid
1578  * @note: btstack_type 2
1579  */
1580 static inline uint16_t rfcomm_event_channel_opened_get_rfcomm_cid(const uint8_t * event){
1581     return little_endian_read_16(event, 12);
1582 }
1583 /**
1584  * @brief Get field max_frame_size from event RFCOMM_EVENT_CHANNEL_OPENED
1585  * @param event packet
1586  * @return max_frame_size
1587  * @note: btstack_type 2
1588  */
1589 static inline uint16_t rfcomm_event_channel_opened_get_max_frame_size(const uint8_t * event){
1590     return little_endian_read_16(event, 14);
1591 }
1592 /**
1593  * @brief Get field incoming from event RFCOMM_EVENT_CHANNEL_OPENED
1594  * @param event packet
1595  * @return incoming
1596  * @note: btstack_type 1
1597  */
1598 static inline uint8_t rfcomm_event_channel_opened_get_incoming(const uint8_t * event){
1599     return event[16];
1600 }
1601 
1602 /**
1603  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CHANNEL_CLOSED
1604  * @param event packet
1605  * @return rfcomm_cid
1606  * @note: btstack_type 2
1607  */
1608 static inline uint16_t rfcomm_event_channel_closed_get_rfcomm_cid(const uint8_t * event){
1609     return little_endian_read_16(event, 2);
1610 }
1611 
1612 /**
1613  * @brief Get field bd_addr from event RFCOMM_EVENT_INCOMING_CONNECTION
1614  * @param event packet
1615  * @param Pointer to storage for bd_addr
1616  * @note: btstack_type B
1617  */
1618 static inline void rfcomm_event_incoming_connection_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1619     reverse_bytes(&event[2], bd_addr, 6);
1620 }
1621 /**
1622  * @brief Get field server_channel from event RFCOMM_EVENT_INCOMING_CONNECTION
1623  * @param event packet
1624  * @return server_channel
1625  * @note: btstack_type 1
1626  */
1627 static inline uint8_t rfcomm_event_incoming_connection_get_server_channel(const uint8_t * event){
1628     return event[8];
1629 }
1630 /**
1631  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_INCOMING_CONNECTION
1632  * @param event packet
1633  * @return rfcomm_cid
1634  * @note: btstack_type 2
1635  */
1636 static inline uint16_t rfcomm_event_incoming_connection_get_rfcomm_cid(const uint8_t * event){
1637     return little_endian_read_16(event, 9);
1638 }
1639 
1640 /**
1641  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_REMOTE_LINE_STATUS
1642  * @param event packet
1643  * @return rfcomm_cid
1644  * @note: btstack_type 2
1645  */
1646 static inline uint16_t rfcomm_event_remote_line_status_get_rfcomm_cid(const uint8_t * event){
1647     return little_endian_read_16(event, 2);
1648 }
1649 /**
1650  * @brief Get field line_status from event RFCOMM_EVENT_REMOTE_LINE_STATUS
1651  * @param event packet
1652  * @return line_status
1653  * @note: btstack_type 1
1654  */
1655 static inline uint8_t rfcomm_event_remote_line_status_get_line_status(const uint8_t * event){
1656     return event[4];
1657 }
1658 
1659 /**
1660  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_REMOTE_MODEM_STATUS
1661  * @param event packet
1662  * @return rfcomm_cid
1663  * @note: btstack_type 2
1664  */
1665 static inline uint16_t rfcomm_event_remote_modem_status_get_rfcomm_cid(const uint8_t * event){
1666     return little_endian_read_16(event, 2);
1667 }
1668 /**
1669  * @brief Get field modem_status from event RFCOMM_EVENT_REMOTE_MODEM_STATUS
1670  * @param event packet
1671  * @return modem_status
1672  * @note: btstack_type 1
1673  */
1674 static inline uint8_t rfcomm_event_remote_modem_status_get_modem_status(const uint8_t * event){
1675     return event[4];
1676 }
1677 
1678 /**
1679  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CAN_SEND_NOW
1680  * @param event packet
1681  * @return rfcomm_cid
1682  * @note: btstack_type 2
1683  */
1684 static inline uint16_t rfcomm_event_can_send_now_get_rfcomm_cid(const uint8_t * event){
1685     return little_endian_read_16(event, 2);
1686 }
1687 
1688 /**
1689  * @brief Get field status from event SDP_EVENT_QUERY_COMPLETE
1690  * @param event packet
1691  * @return status
1692  * @note: btstack_type 1
1693  */
1694 static inline uint8_t sdp_event_query_complete_get_status(const uint8_t * event){
1695     return event[2];
1696 }
1697 
1698 /**
1699  * @brief Get field rfcomm_channel from event SDP_EVENT_QUERY_RFCOMM_SERVICE
1700  * @param event packet
1701  * @return rfcomm_channel
1702  * @note: btstack_type 1
1703  */
1704 static inline uint8_t sdp_event_query_rfcomm_service_get_rfcomm_channel(const uint8_t * event){
1705     return event[2];
1706 }
1707 /**
1708  * @brief Get field name from event SDP_EVENT_QUERY_RFCOMM_SERVICE
1709  * @param event packet
1710  * @return name
1711  * @note: btstack_type T
1712  */
1713 static inline const char * sdp_event_query_rfcomm_service_get_name(const uint8_t * event){
1714     return (const char *) &event[3];
1715 }
1716 
1717 /**
1718  * @brief Get field record_id from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
1719  * @param event packet
1720  * @return record_id
1721  * @note: btstack_type 2
1722  */
1723 static inline uint16_t sdp_event_query_attribute_byte_get_record_id(const uint8_t * event){
1724     return little_endian_read_16(event, 2);
1725 }
1726 /**
1727  * @brief Get field attribute_id from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
1728  * @param event packet
1729  * @return attribute_id
1730  * @note: btstack_type 2
1731  */
1732 static inline uint16_t sdp_event_query_attribute_byte_get_attribute_id(const uint8_t * event){
1733     return little_endian_read_16(event, 4);
1734 }
1735 /**
1736  * @brief Get field attribute_length from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
1737  * @param event packet
1738  * @return attribute_length
1739  * @note: btstack_type 2
1740  */
1741 static inline uint16_t sdp_event_query_attribute_byte_get_attribute_length(const uint8_t * event){
1742     return little_endian_read_16(event, 6);
1743 }
1744 /**
1745  * @brief Get field data_offset from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
1746  * @param event packet
1747  * @return data_offset
1748  * @note: btstack_type 2
1749  */
1750 static inline uint16_t sdp_event_query_attribute_byte_get_data_offset(const uint8_t * event){
1751     return little_endian_read_16(event, 8);
1752 }
1753 /**
1754  * @brief Get field data from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
1755  * @param event packet
1756  * @return data
1757  * @note: btstack_type 1
1758  */
1759 static inline uint8_t sdp_event_query_attribute_byte_get_data(const uint8_t * event){
1760     return event[10];
1761 }
1762 
1763 /**
1764  * @brief Get field record_id from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
1765  * @param event packet
1766  * @return record_id
1767  * @note: btstack_type 2
1768  */
1769 static inline uint16_t sdp_event_query_attribute_value_get_record_id(const uint8_t * event){
1770     return little_endian_read_16(event, 2);
1771 }
1772 /**
1773  * @brief Get field attribute_id from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
1774  * @param event packet
1775  * @return attribute_id
1776  * @note: btstack_type 2
1777  */
1778 static inline uint16_t sdp_event_query_attribute_value_get_attribute_id(const uint8_t * event){
1779     return little_endian_read_16(event, 4);
1780 }
1781 /**
1782  * @brief Get field attribute_length from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
1783  * @param event packet
1784  * @return attribute_length
1785  * @note: btstack_type L
1786  */
1787 static inline uint16_t sdp_event_query_attribute_value_get_attribute_length(const uint8_t * event){
1788     return little_endian_read_16(event, 6);
1789 }
1790 /**
1791  * @brief Get field attribute_value from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
1792  * @param event packet
1793  * @return attribute_value
1794  * @note: btstack_type V
1795  */
1796 static inline const uint8_t * sdp_event_query_attribute_value_get_attribute_value(const uint8_t * event){
1797     return &event[8];
1798 }
1799 
1800 /**
1801  * @brief Get field total_count from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
1802  * @param event packet
1803  * @return total_count
1804  * @note: btstack_type 2
1805  */
1806 static inline uint16_t sdp_event_query_service_record_handle_get_total_count(const uint8_t * event){
1807     return little_endian_read_16(event, 2);
1808 }
1809 /**
1810  * @brief Get field record_index from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
1811  * @param event packet
1812  * @return record_index
1813  * @note: btstack_type 2
1814  */
1815 static inline uint16_t sdp_event_query_service_record_handle_get_record_index(const uint8_t * event){
1816     return little_endian_read_16(event, 4);
1817 }
1818 /**
1819  * @brief Get field record_handle from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
1820  * @param event packet
1821  * @return record_handle
1822  * @note: btstack_type 4
1823  */
1824 static inline uint32_t sdp_event_query_service_record_handle_get_record_handle(const uint8_t * event){
1825     return little_endian_read_32(event, 6);
1826 }
1827 
1828 #ifdef ENABLE_BLE
1829 /**
1830  * @brief Get field handle from event GATT_EVENT_QUERY_COMPLETE
1831  * @param event packet
1832  * @return handle
1833  * @note: btstack_type H
1834  */
1835 static inline hci_con_handle_t gatt_event_query_complete_get_handle(const uint8_t * event){
1836     return little_endian_read_16(event, 2);
1837 }
1838 /**
1839  * @brief Get field att_status from event GATT_EVENT_QUERY_COMPLETE
1840  * @param event packet
1841  * @return att_status
1842  * @note: btstack_type 1
1843  */
1844 static inline uint8_t gatt_event_query_complete_get_att_status(const uint8_t * event){
1845     return event[4];
1846 }
1847 #endif
1848 
1849 #ifdef ENABLE_BLE
1850 /**
1851  * @brief Get field handle from event GATT_EVENT_SERVICE_QUERY_RESULT
1852  * @param event packet
1853  * @return handle
1854  * @note: btstack_type H
1855  */
1856 static inline hci_con_handle_t gatt_event_service_query_result_get_handle(const uint8_t * event){
1857     return little_endian_read_16(event, 2);
1858 }
1859 /**
1860  * @brief Get field service from event GATT_EVENT_SERVICE_QUERY_RESULT
1861  * @param event packet
1862  * @param Pointer to storage for service
1863  * @note: btstack_type X
1864  */
1865 static inline void gatt_event_service_query_result_get_service(const uint8_t * event, gatt_client_service_t * service){
1866     gatt_client_deserialize_service(event, 4, service);
1867 }
1868 #endif
1869 
1870 #ifdef ENABLE_BLE
1871 /**
1872  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_QUERY_RESULT
1873  * @param event packet
1874  * @return handle
1875  * @note: btstack_type H
1876  */
1877 static inline hci_con_handle_t gatt_event_characteristic_query_result_get_handle(const uint8_t * event){
1878     return little_endian_read_16(event, 2);
1879 }
1880 /**
1881  * @brief Get field characteristic from event GATT_EVENT_CHARACTERISTIC_QUERY_RESULT
1882  * @param event packet
1883  * @param Pointer to storage for characteristic
1884  * @note: btstack_type Y
1885  */
1886 static inline void gatt_event_characteristic_query_result_get_characteristic(const uint8_t * event, gatt_client_characteristic_t * characteristic){
1887     gatt_client_deserialize_characteristic(event, 4, characteristic);
1888 }
1889 #endif
1890 
1891 #ifdef ENABLE_BLE
1892 /**
1893  * @brief Get field handle from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
1894  * @param event packet
1895  * @return handle
1896  * @note: btstack_type H
1897  */
1898 static inline hci_con_handle_t gatt_event_included_service_query_result_get_handle(const uint8_t * event){
1899     return little_endian_read_16(event, 2);
1900 }
1901 /**
1902  * @brief Get field include_handle from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
1903  * @param event packet
1904  * @return include_handle
1905  * @note: btstack_type 2
1906  */
1907 static inline uint16_t gatt_event_included_service_query_result_get_include_handle(const uint8_t * event){
1908     return little_endian_read_16(event, 4);
1909 }
1910 /**
1911  * @brief Get field service from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
1912  * @param event packet
1913  * @param Pointer to storage for service
1914  * @note: btstack_type X
1915  */
1916 static inline void gatt_event_included_service_query_result_get_service(const uint8_t * event, gatt_client_service_t * service){
1917     gatt_client_deserialize_service(event, 6, service);
1918 }
1919 #endif
1920 
1921 #ifdef ENABLE_BLE
1922 /**
1923  * @brief Get field handle from event GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT
1924  * @param event packet
1925  * @return handle
1926  * @note: btstack_type H
1927  */
1928 static inline hci_con_handle_t gatt_event_all_characteristic_descriptors_query_result_get_handle(const uint8_t * event){
1929     return little_endian_read_16(event, 2);
1930 }
1931 /**
1932  * @brief Get field characteristic_descriptor from event GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT
1933  * @param event packet
1934  * @param Pointer to storage for characteristic_descriptor
1935  * @note: btstack_type Z
1936  */
1937 static inline void gatt_event_all_characteristic_descriptors_query_result_get_characteristic_descriptor(const uint8_t * event, gatt_client_characteristic_descriptor_t * characteristic_descriptor){
1938     gatt_client_deserialize_characteristic_descriptor(event, 4, characteristic_descriptor);
1939 }
1940 #endif
1941 
1942 #ifdef ENABLE_BLE
1943 /**
1944  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
1945  * @param event packet
1946  * @return handle
1947  * @note: btstack_type H
1948  */
1949 static inline hci_con_handle_t gatt_event_characteristic_value_query_result_get_handle(const uint8_t * event){
1950     return little_endian_read_16(event, 2);
1951 }
1952 /**
1953  * @brief Get field value_handle from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
1954  * @param event packet
1955  * @return value_handle
1956  * @note: btstack_type 2
1957  */
1958 static inline uint16_t gatt_event_characteristic_value_query_result_get_value_handle(const uint8_t * event){
1959     return little_endian_read_16(event, 4);
1960 }
1961 /**
1962  * @brief Get field value_length from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
1963  * @param event packet
1964  * @return value_length
1965  * @note: btstack_type L
1966  */
1967 static inline uint16_t gatt_event_characteristic_value_query_result_get_value_length(const uint8_t * event){
1968     return little_endian_read_16(event, 6);
1969 }
1970 /**
1971  * @brief Get field value from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
1972  * @param event packet
1973  * @return value
1974  * @note: btstack_type V
1975  */
1976 static inline const uint8_t * gatt_event_characteristic_value_query_result_get_value(const uint8_t * event){
1977     return &event[8];
1978 }
1979 #endif
1980 
1981 #ifdef ENABLE_BLE
1982 /**
1983  * @brief Get field handle from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
1984  * @param event packet
1985  * @return handle
1986  * @note: btstack_type H
1987  */
1988 static inline hci_con_handle_t gatt_event_long_characteristic_value_query_result_get_handle(const uint8_t * event){
1989     return little_endian_read_16(event, 2);
1990 }
1991 /**
1992  * @brief Get field value_handle from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
1993  * @param event packet
1994  * @return value_handle
1995  * @note: btstack_type 2
1996  */
1997 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_handle(const uint8_t * event){
1998     return little_endian_read_16(event, 4);
1999 }
2000 /**
2001  * @brief Get field value_offset from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2002  * @param event packet
2003  * @return value_offset
2004  * @note: btstack_type 2
2005  */
2006 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_offset(const uint8_t * event){
2007     return little_endian_read_16(event, 6);
2008 }
2009 /**
2010  * @brief Get field value_length from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2011  * @param event packet
2012  * @return value_length
2013  * @note: btstack_type L
2014  */
2015 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_length(const uint8_t * event){
2016     return little_endian_read_16(event, 8);
2017 }
2018 /**
2019  * @brief Get field value from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2020  * @param event packet
2021  * @return value
2022  * @note: btstack_type V
2023  */
2024 static inline const uint8_t * gatt_event_long_characteristic_value_query_result_get_value(const uint8_t * event){
2025     return &event[10];
2026 }
2027 #endif
2028 
2029 #ifdef ENABLE_BLE
2030 /**
2031  * @brief Get field handle from event GATT_EVENT_NOTIFICATION
2032  * @param event packet
2033  * @return handle
2034  * @note: btstack_type H
2035  */
2036 static inline hci_con_handle_t gatt_event_notification_get_handle(const uint8_t * event){
2037     return little_endian_read_16(event, 2);
2038 }
2039 /**
2040  * @brief Get field value_handle from event GATT_EVENT_NOTIFICATION
2041  * @param event packet
2042  * @return value_handle
2043  * @note: btstack_type 2
2044  */
2045 static inline uint16_t gatt_event_notification_get_value_handle(const uint8_t * event){
2046     return little_endian_read_16(event, 4);
2047 }
2048 /**
2049  * @brief Get field value_length from event GATT_EVENT_NOTIFICATION
2050  * @param event packet
2051  * @return value_length
2052  * @note: btstack_type L
2053  */
2054 static inline uint16_t gatt_event_notification_get_value_length(const uint8_t * event){
2055     return little_endian_read_16(event, 6);
2056 }
2057 /**
2058  * @brief Get field value from event GATT_EVENT_NOTIFICATION
2059  * @param event packet
2060  * @return value
2061  * @note: btstack_type V
2062  */
2063 static inline const uint8_t * gatt_event_notification_get_value(const uint8_t * event){
2064     return &event[8];
2065 }
2066 #endif
2067 
2068 #ifdef ENABLE_BLE
2069 /**
2070  * @brief Get field handle from event GATT_EVENT_INDICATION
2071  * @param event packet
2072  * @return handle
2073  * @note: btstack_type H
2074  */
2075 static inline hci_con_handle_t gatt_event_indication_get_handle(const uint8_t * event){
2076     return little_endian_read_16(event, 2);
2077 }
2078 /**
2079  * @brief Get field value_handle from event GATT_EVENT_INDICATION
2080  * @param event packet
2081  * @return value_handle
2082  * @note: btstack_type 2
2083  */
2084 static inline uint16_t gatt_event_indication_get_value_handle(const uint8_t * event){
2085     return little_endian_read_16(event, 4);
2086 }
2087 /**
2088  * @brief Get field value_length from event GATT_EVENT_INDICATION
2089  * @param event packet
2090  * @return value_length
2091  * @note: btstack_type L
2092  */
2093 static inline uint16_t gatt_event_indication_get_value_length(const uint8_t * event){
2094     return little_endian_read_16(event, 6);
2095 }
2096 /**
2097  * @brief Get field value from event GATT_EVENT_INDICATION
2098  * @param event packet
2099  * @return value
2100  * @note: btstack_type V
2101  */
2102 static inline const uint8_t * gatt_event_indication_get_value(const uint8_t * event){
2103     return &event[8];
2104 }
2105 #endif
2106 
2107 #ifdef ENABLE_BLE
2108 /**
2109  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2110  * @param event packet
2111  * @return handle
2112  * @note: btstack_type H
2113  */
2114 static inline hci_con_handle_t gatt_event_characteristic_descriptor_query_result_get_handle(const uint8_t * event){
2115     return little_endian_read_16(event, 2);
2116 }
2117 /**
2118  * @brief Get field descriptor_handle from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2119  * @param event packet
2120  * @return descriptor_handle
2121  * @note: btstack_type 2
2122  */
2123 static inline uint16_t gatt_event_characteristic_descriptor_query_result_get_descriptor_handle(const uint8_t * event){
2124     return little_endian_read_16(event, 4);
2125 }
2126 /**
2127  * @brief Get field descriptor_length from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2128  * @param event packet
2129  * @return descriptor_length
2130  * @note: btstack_type L
2131  */
2132 static inline uint16_t gatt_event_characteristic_descriptor_query_result_get_descriptor_length(const uint8_t * event){
2133     return little_endian_read_16(event, 6);
2134 }
2135 /**
2136  * @brief Get field descriptor from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2137  * @param event packet
2138  * @return descriptor
2139  * @note: btstack_type V
2140  */
2141 static inline const uint8_t * gatt_event_characteristic_descriptor_query_result_get_descriptor(const uint8_t * event){
2142     return &event[8];
2143 }
2144 #endif
2145 
2146 #ifdef ENABLE_BLE
2147 /**
2148  * @brief Get field handle from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2149  * @param event packet
2150  * @return handle
2151  * @note: btstack_type H
2152  */
2153 static inline hci_con_handle_t gatt_event_long_characteristic_descriptor_query_result_get_handle(const uint8_t * event){
2154     return little_endian_read_16(event, 2);
2155 }
2156 /**
2157  * @brief Get field descriptor_offset from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2158  * @param event packet
2159  * @return descriptor_offset
2160  * @note: btstack_type 2
2161  */
2162 static inline uint16_t gatt_event_long_characteristic_descriptor_query_result_get_descriptor_offset(const uint8_t * event){
2163     return little_endian_read_16(event, 4);
2164 }
2165 /**
2166  * @brief Get field descriptor_length from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2167  * @param event packet
2168  * @return descriptor_length
2169  * @note: btstack_type L
2170  */
2171 static inline uint16_t gatt_event_long_characteristic_descriptor_query_result_get_descriptor_length(const uint8_t * event){
2172     return little_endian_read_16(event, 6);
2173 }
2174 /**
2175  * @brief Get field descriptor from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2176  * @param event packet
2177  * @return descriptor
2178  * @note: btstack_type V
2179  */
2180 static inline const uint8_t * gatt_event_long_characteristic_descriptor_query_result_get_descriptor(const uint8_t * event){
2181     return &event[8];
2182 }
2183 #endif
2184 
2185 #ifdef ENABLE_BLE
2186 /**
2187  * @brief Get field handle from event GATT_EVENT_MTU
2188  * @param event packet
2189  * @return handle
2190  * @note: btstack_type H
2191  */
2192 static inline hci_con_handle_t gatt_event_mtu_get_handle(const uint8_t * event){
2193     return little_endian_read_16(event, 2);
2194 }
2195 /**
2196  * @brief Get field MTU from event GATT_EVENT_MTU
2197  * @param event packet
2198  * @return MTU
2199  * @note: btstack_type 2
2200  */
2201 static inline uint16_t gatt_event_mtu_get_MTU(const uint8_t * event){
2202     return little_endian_read_16(event, 4);
2203 }
2204 #endif
2205 
2206 #ifdef ENABLE_BLE
2207 /**
2208  * @brief Get field handle from event GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE
2209  * @param event packet
2210  * @return handle
2211  * @note: btstack_type H
2212  */
2213 static inline hci_con_handle_t gatt_event_can_write_without_response_get_handle(const uint8_t * event){
2214     return little_endian_read_16(event, 2);
2215 }
2216 #endif
2217 
2218 /**
2219  * @brief Get field address_type from event ATT_EVENT_CONNECTED
2220  * @param event packet
2221  * @return address_type
2222  * @note: btstack_type 1
2223  */
2224 static inline uint8_t att_event_connected_get_address_type(const uint8_t * event){
2225     return event[2];
2226 }
2227 /**
2228  * @brief Get field address from event ATT_EVENT_CONNECTED
2229  * @param event packet
2230  * @param Pointer to storage for address
2231  * @note: btstack_type B
2232  */
2233 static inline void att_event_connected_get_address(const uint8_t * event, bd_addr_t address){
2234     reverse_bytes(&event[3], address, 6);
2235 }
2236 /**
2237  * @brief Get field handle from event ATT_EVENT_CONNECTED
2238  * @param event packet
2239  * @return handle
2240  * @note: btstack_type H
2241  */
2242 static inline hci_con_handle_t att_event_connected_get_handle(const uint8_t * event){
2243     return little_endian_read_16(event, 9);
2244 }
2245 
2246 /**
2247  * @brief Get field handle from event ATT_EVENT_DISCONNECTED
2248  * @param event packet
2249  * @return handle
2250  * @note: btstack_type H
2251  */
2252 static inline hci_con_handle_t att_event_disconnected_get_handle(const uint8_t * event){
2253     return little_endian_read_16(event, 2);
2254 }
2255 
2256 /**
2257  * @brief Get field handle from event ATT_EVENT_MTU_EXCHANGE_COMPLETE
2258  * @param event packet
2259  * @return handle
2260  * @note: btstack_type H
2261  */
2262 static inline hci_con_handle_t att_event_mtu_exchange_complete_get_handle(const uint8_t * event){
2263     return little_endian_read_16(event, 2);
2264 }
2265 /**
2266  * @brief Get field MTU from event ATT_EVENT_MTU_EXCHANGE_COMPLETE
2267  * @param event packet
2268  * @return MTU
2269  * @note: btstack_type 2
2270  */
2271 static inline uint16_t att_event_mtu_exchange_complete_get_MTU(const uint8_t * event){
2272     return little_endian_read_16(event, 4);
2273 }
2274 
2275 /**
2276  * @brief Get field status from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2277  * @param event packet
2278  * @return status
2279  * @note: btstack_type 1
2280  */
2281 static inline uint8_t att_event_handle_value_indication_complete_get_status(const uint8_t * event){
2282     return event[2];
2283 }
2284 /**
2285  * @brief Get field conn_handle from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2286  * @param event packet
2287  * @return conn_handle
2288  * @note: btstack_type H
2289  */
2290 static inline hci_con_handle_t att_event_handle_value_indication_complete_get_conn_handle(const uint8_t * event){
2291     return little_endian_read_16(event, 3);
2292 }
2293 /**
2294  * @brief Get field attribute_handle from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2295  * @param event packet
2296  * @return attribute_handle
2297  * @note: btstack_type 2
2298  */
2299 static inline uint16_t att_event_handle_value_indication_complete_get_attribute_handle(const uint8_t * event){
2300     return little_endian_read_16(event, 5);
2301 }
2302 
2303 
2304 /**
2305  * @brief Get field status from event BNEP_EVENT_SERVICE_REGISTERED
2306  * @param event packet
2307  * @return status
2308  * @note: btstack_type 1
2309  */
2310 static inline uint8_t bnep_event_service_registered_get_status(const uint8_t * event){
2311     return event[2];
2312 }
2313 /**
2314  * @brief Get field service_uuid from event BNEP_EVENT_SERVICE_REGISTERED
2315  * @param event packet
2316  * @return service_uuid
2317  * @note: btstack_type 2
2318  */
2319 static inline uint16_t bnep_event_service_registered_get_service_uuid(const uint8_t * event){
2320     return little_endian_read_16(event, 3);
2321 }
2322 
2323 /**
2324  * @brief Get field status from event BNEP_EVENT_CHANNEL_OPENED
2325  * @param event packet
2326  * @return status
2327  * @note: btstack_type 1
2328  */
2329 static inline uint8_t bnep_event_channel_opened_get_status(const uint8_t * event){
2330     return event[2];
2331 }
2332 /**
2333  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_OPENED
2334  * @param event packet
2335  * @return bnep_cid
2336  * @note: btstack_type 2
2337  */
2338 static inline uint16_t bnep_event_channel_opened_get_bnep_cid(const uint8_t * event){
2339     return little_endian_read_16(event, 3);
2340 }
2341 /**
2342  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_OPENED
2343  * @param event packet
2344  * @return source_uuid
2345  * @note: btstack_type 2
2346  */
2347 static inline uint16_t bnep_event_channel_opened_get_source_uuid(const uint8_t * event){
2348     return little_endian_read_16(event, 5);
2349 }
2350 /**
2351  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_OPENED
2352  * @param event packet
2353  * @return destination_uuid
2354  * @note: btstack_type 2
2355  */
2356 static inline uint16_t bnep_event_channel_opened_get_destination_uuid(const uint8_t * event){
2357     return little_endian_read_16(event, 7);
2358 }
2359 /**
2360  * @brief Get field mtu from event BNEP_EVENT_CHANNEL_OPENED
2361  * @param event packet
2362  * @return mtu
2363  * @note: btstack_type 2
2364  */
2365 static inline uint16_t bnep_event_channel_opened_get_mtu(const uint8_t * event){
2366     return little_endian_read_16(event, 9);
2367 }
2368 /**
2369  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_OPENED
2370  * @param event packet
2371  * @param Pointer to storage for remote_address
2372  * @note: btstack_type B
2373  */
2374 static inline void bnep_event_channel_opened_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2375     reverse_bytes(&event[11], remote_address, 6);
2376 }
2377 /**
2378  * @brief Get field con_handle from event BNEP_EVENT_CHANNEL_OPENED
2379  * @param event packet
2380  * @return con_handle
2381  * @note: btstack_type H
2382  */
2383 static inline hci_con_handle_t bnep_event_channel_opened_get_con_handle(const uint8_t * event){
2384     return little_endian_read_16(event, 17);
2385 }
2386 
2387 /**
2388  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_CLOSED
2389  * @param event packet
2390  * @return bnep_cid
2391  * @note: btstack_type 2
2392  */
2393 static inline uint16_t bnep_event_channel_closed_get_bnep_cid(const uint8_t * event){
2394     return little_endian_read_16(event, 2);
2395 }
2396 /**
2397  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_CLOSED
2398  * @param event packet
2399  * @return source_uuid
2400  * @note: btstack_type 2
2401  */
2402 static inline uint16_t bnep_event_channel_closed_get_source_uuid(const uint8_t * event){
2403     return little_endian_read_16(event, 4);
2404 }
2405 /**
2406  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_CLOSED
2407  * @param event packet
2408  * @return destination_uuid
2409  * @note: btstack_type 2
2410  */
2411 static inline uint16_t bnep_event_channel_closed_get_destination_uuid(const uint8_t * event){
2412     return little_endian_read_16(event, 6);
2413 }
2414 /**
2415  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_CLOSED
2416  * @param event packet
2417  * @param Pointer to storage for remote_address
2418  * @note: btstack_type B
2419  */
2420 static inline void bnep_event_channel_closed_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2421     reverse_bytes(&event[8], remote_address, 6);
2422 }
2423 
2424 /**
2425  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_TIMEOUT
2426  * @param event packet
2427  * @return bnep_cid
2428  * @note: btstack_type 2
2429  */
2430 static inline uint16_t bnep_event_channel_timeout_get_bnep_cid(const uint8_t * event){
2431     return little_endian_read_16(event, 2);
2432 }
2433 /**
2434  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_TIMEOUT
2435  * @param event packet
2436  * @return source_uuid
2437  * @note: btstack_type 2
2438  */
2439 static inline uint16_t bnep_event_channel_timeout_get_source_uuid(const uint8_t * event){
2440     return little_endian_read_16(event, 4);
2441 }
2442 /**
2443  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_TIMEOUT
2444  * @param event packet
2445  * @return destination_uuid
2446  * @note: btstack_type 2
2447  */
2448 static inline uint16_t bnep_event_channel_timeout_get_destination_uuid(const uint8_t * event){
2449     return little_endian_read_16(event, 6);
2450 }
2451 /**
2452  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_TIMEOUT
2453  * @param event packet
2454  * @param Pointer to storage for remote_address
2455  * @note: btstack_type B
2456  */
2457 static inline void bnep_event_channel_timeout_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2458     reverse_bytes(&event[8], remote_address, 6);
2459 }
2460 /**
2461  * @brief Get field channel_state from event BNEP_EVENT_CHANNEL_TIMEOUT
2462  * @param event packet
2463  * @return channel_state
2464  * @note: btstack_type 1
2465  */
2466 static inline uint8_t bnep_event_channel_timeout_get_channel_state(const uint8_t * event){
2467     return event[14];
2468 }
2469 
2470 /**
2471  * @brief Get field bnep_cid from event BNEP_EVENT_CAN_SEND_NOW
2472  * @param event packet
2473  * @return bnep_cid
2474  * @note: btstack_type 2
2475  */
2476 static inline uint16_t bnep_event_can_send_now_get_bnep_cid(const uint8_t * event){
2477     return little_endian_read_16(event, 2);
2478 }
2479 /**
2480  * @brief Get field source_uuid from event BNEP_EVENT_CAN_SEND_NOW
2481  * @param event packet
2482  * @return source_uuid
2483  * @note: btstack_type 2
2484  */
2485 static inline uint16_t bnep_event_can_send_now_get_source_uuid(const uint8_t * event){
2486     return little_endian_read_16(event, 4);
2487 }
2488 /**
2489  * @brief Get field destination_uuid from event BNEP_EVENT_CAN_SEND_NOW
2490  * @param event packet
2491  * @return destination_uuid
2492  * @note: btstack_type 2
2493  */
2494 static inline uint16_t bnep_event_can_send_now_get_destination_uuid(const uint8_t * event){
2495     return little_endian_read_16(event, 6);
2496 }
2497 /**
2498  * @brief Get field remote_address from event BNEP_EVENT_CAN_SEND_NOW
2499  * @param event packet
2500  * @param Pointer to storage for remote_address
2501  * @note: btstack_type B
2502  */
2503 static inline void bnep_event_can_send_now_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2504     reverse_bytes(&event[8], remote_address, 6);
2505 }
2506 
2507 #ifdef ENABLE_BLE
2508 /**
2509  * @brief Get field handle from event SM_EVENT_JUST_WORKS_REQUEST
2510  * @param event packet
2511  * @return handle
2512  * @note: btstack_type H
2513  */
2514 static inline hci_con_handle_t sm_event_just_works_request_get_handle(const uint8_t * event){
2515     return little_endian_read_16(event, 2);
2516 }
2517 /**
2518  * @brief Get field addr_type from event SM_EVENT_JUST_WORKS_REQUEST
2519  * @param event packet
2520  * @return addr_type
2521  * @note: btstack_type 1
2522  */
2523 static inline uint8_t sm_event_just_works_request_get_addr_type(const uint8_t * event){
2524     return event[4];
2525 }
2526 /**
2527  * @brief Get field address from event SM_EVENT_JUST_WORKS_REQUEST
2528  * @param event packet
2529  * @param Pointer to storage for address
2530  * @note: btstack_type B
2531  */
2532 static inline void sm_event_just_works_request_get_address(const uint8_t * event, bd_addr_t address){
2533     reverse_bytes(&event[5], address, 6);
2534 }
2535 #endif
2536 
2537 #ifdef ENABLE_BLE
2538 /**
2539  * @brief Get field handle from event SM_EVENT_JUST_WORKS_CANCEL
2540  * @param event packet
2541  * @return handle
2542  * @note: btstack_type H
2543  */
2544 static inline hci_con_handle_t sm_event_just_works_cancel_get_handle(const uint8_t * event){
2545     return little_endian_read_16(event, 2);
2546 }
2547 /**
2548  * @brief Get field addr_type from event SM_EVENT_JUST_WORKS_CANCEL
2549  * @param event packet
2550  * @return addr_type
2551  * @note: btstack_type 1
2552  */
2553 static inline uint8_t sm_event_just_works_cancel_get_addr_type(const uint8_t * event){
2554     return event[4];
2555 }
2556 /**
2557  * @brief Get field address from event SM_EVENT_JUST_WORKS_CANCEL
2558  * @param event packet
2559  * @param Pointer to storage for address
2560  * @note: btstack_type B
2561  */
2562 static inline void sm_event_just_works_cancel_get_address(const uint8_t * event, bd_addr_t address){
2563     reverse_bytes(&event[5], address, 6);
2564 }
2565 #endif
2566 
2567 #ifdef ENABLE_BLE
2568 /**
2569  * @brief Get field handle from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2570  * @param event packet
2571  * @return handle
2572  * @note: btstack_type H
2573  */
2574 static inline hci_con_handle_t sm_event_passkey_display_number_get_handle(const uint8_t * event){
2575     return little_endian_read_16(event, 2);
2576 }
2577 /**
2578  * @brief Get field addr_type from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2579  * @param event packet
2580  * @return addr_type
2581  * @note: btstack_type 1
2582  */
2583 static inline uint8_t sm_event_passkey_display_number_get_addr_type(const uint8_t * event){
2584     return event[4];
2585 }
2586 /**
2587  * @brief Get field address from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2588  * @param event packet
2589  * @param Pointer to storage for address
2590  * @note: btstack_type B
2591  */
2592 static inline void sm_event_passkey_display_number_get_address(const uint8_t * event, bd_addr_t address){
2593     reverse_bytes(&event[5], address, 6);
2594 }
2595 /**
2596  * @brief Get field passkey from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2597  * @param event packet
2598  * @return passkey
2599  * @note: btstack_type 4
2600  */
2601 static inline uint32_t sm_event_passkey_display_number_get_passkey(const uint8_t * event){
2602     return little_endian_read_32(event, 11);
2603 }
2604 #endif
2605 
2606 #ifdef ENABLE_BLE
2607 /**
2608  * @brief Get field handle from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2609  * @param event packet
2610  * @return handle
2611  * @note: btstack_type H
2612  */
2613 static inline hci_con_handle_t sm_event_passkey_display_cancel_get_handle(const uint8_t * event){
2614     return little_endian_read_16(event, 2);
2615 }
2616 /**
2617  * @brief Get field addr_type from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2618  * @param event packet
2619  * @return addr_type
2620  * @note: btstack_type 1
2621  */
2622 static inline uint8_t sm_event_passkey_display_cancel_get_addr_type(const uint8_t * event){
2623     return event[4];
2624 }
2625 /**
2626  * @brief Get field address from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2627  * @param event packet
2628  * @param Pointer to storage for address
2629  * @note: btstack_type B
2630  */
2631 static inline void sm_event_passkey_display_cancel_get_address(const uint8_t * event, bd_addr_t address){
2632     reverse_bytes(&event[5], address, 6);
2633 }
2634 #endif
2635 
2636 #ifdef ENABLE_BLE
2637 /**
2638  * @brief Get field handle from event SM_EVENT_PASSKEY_INPUT_NUMBER
2639  * @param event packet
2640  * @return handle
2641  * @note: btstack_type H
2642  */
2643 static inline hci_con_handle_t sm_event_passkey_input_number_get_handle(const uint8_t * event){
2644     return little_endian_read_16(event, 2);
2645 }
2646 /**
2647  * @brief Get field addr_type from event SM_EVENT_PASSKEY_INPUT_NUMBER
2648  * @param event packet
2649  * @return addr_type
2650  * @note: btstack_type 1
2651  */
2652 static inline uint8_t sm_event_passkey_input_number_get_addr_type(const uint8_t * event){
2653     return event[4];
2654 }
2655 /**
2656  * @brief Get field address from event SM_EVENT_PASSKEY_INPUT_NUMBER
2657  * @param event packet
2658  * @param Pointer to storage for address
2659  * @note: btstack_type B
2660  */
2661 static inline void sm_event_passkey_input_number_get_address(const uint8_t * event, bd_addr_t address){
2662     reverse_bytes(&event[5], address, 6);
2663 }
2664 #endif
2665 
2666 #ifdef ENABLE_BLE
2667 /**
2668  * @brief Get field handle from event SM_EVENT_PASSKEY_INPUT_CANCEL
2669  * @param event packet
2670  * @return handle
2671  * @note: btstack_type H
2672  */
2673 static inline hci_con_handle_t sm_event_passkey_input_cancel_get_handle(const uint8_t * event){
2674     return little_endian_read_16(event, 2);
2675 }
2676 /**
2677  * @brief Get field addr_type from event SM_EVENT_PASSKEY_INPUT_CANCEL
2678  * @param event packet
2679  * @return addr_type
2680  * @note: btstack_type 1
2681  */
2682 static inline uint8_t sm_event_passkey_input_cancel_get_addr_type(const uint8_t * event){
2683     return event[4];
2684 }
2685 /**
2686  * @brief Get field address from event SM_EVENT_PASSKEY_INPUT_CANCEL
2687  * @param event packet
2688  * @param Pointer to storage for address
2689  * @note: btstack_type B
2690  */
2691 static inline void sm_event_passkey_input_cancel_get_address(const uint8_t * event, bd_addr_t address){
2692     reverse_bytes(&event[5], address, 6);
2693 }
2694 #endif
2695 
2696 #ifdef ENABLE_BLE
2697 /**
2698  * @brief Get field handle from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2699  * @param event packet
2700  * @return handle
2701  * @note: btstack_type H
2702  */
2703 static inline hci_con_handle_t sm_event_numeric_comparison_request_get_handle(const uint8_t * event){
2704     return little_endian_read_16(event, 2);
2705 }
2706 /**
2707  * @brief Get field addr_type from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2708  * @param event packet
2709  * @return addr_type
2710  * @note: btstack_type 1
2711  */
2712 static inline uint8_t sm_event_numeric_comparison_request_get_addr_type(const uint8_t * event){
2713     return event[4];
2714 }
2715 /**
2716  * @brief Get field address from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2717  * @param event packet
2718  * @param Pointer to storage for address
2719  * @note: btstack_type B
2720  */
2721 static inline void sm_event_numeric_comparison_request_get_address(const uint8_t * event, bd_addr_t address){
2722     reverse_bytes(&event[5], address, 6);
2723 }
2724 /**
2725  * @brief Get field passkey from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2726  * @param event packet
2727  * @return passkey
2728  * @note: btstack_type 4
2729  */
2730 static inline uint32_t sm_event_numeric_comparison_request_get_passkey(const uint8_t * event){
2731     return little_endian_read_32(event, 11);
2732 }
2733 #endif
2734 
2735 #ifdef ENABLE_BLE
2736 /**
2737  * @brief Get field handle from event SM_EVENT_NUMERIC_COMPARISON_CANCEL
2738  * @param event packet
2739  * @return handle
2740  * @note: btstack_type H
2741  */
2742 static inline hci_con_handle_t sm_event_numeric_comparison_cancel_get_handle(const uint8_t * event){
2743     return little_endian_read_16(event, 2);
2744 }
2745 /**
2746  * @brief Get field addr_type from event SM_EVENT_NUMERIC_COMPARISON_CANCEL
2747  * @param event packet
2748  * @return addr_type
2749  * @note: btstack_type 1
2750  */
2751 static inline uint8_t sm_event_numeric_comparison_cancel_get_addr_type(const uint8_t * event){
2752     return event[4];
2753 }
2754 /**
2755  * @brief Get field address from event SM_EVENT_NUMERIC_COMPARISON_CANCEL
2756  * @param event packet
2757  * @param Pointer to storage for address
2758  * @note: btstack_type B
2759  */
2760 static inline void sm_event_numeric_comparison_cancel_get_address(const uint8_t * event, bd_addr_t address){
2761     reverse_bytes(&event[5], address, 6);
2762 }
2763 #endif
2764 
2765 #ifdef ENABLE_BLE
2766 /**
2767  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_STARTED
2768  * @param event packet
2769  * @return handle
2770  * @note: btstack_type H
2771  */
2772 static inline hci_con_handle_t sm_event_identity_resolving_started_get_handle(const uint8_t * event){
2773     return little_endian_read_16(event, 2);
2774 }
2775 /**
2776  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_STARTED
2777  * @param event packet
2778  * @return addr_type
2779  * @note: btstack_type 1
2780  */
2781 static inline uint8_t sm_event_identity_resolving_started_get_addr_type(const uint8_t * event){
2782     return event[4];
2783 }
2784 /**
2785  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_STARTED
2786  * @param event packet
2787  * @param Pointer to storage for address
2788  * @note: btstack_type B
2789  */
2790 static inline void sm_event_identity_resolving_started_get_address(const uint8_t * event, bd_addr_t address){
2791     reverse_bytes(&event[5], address, 6);
2792 }
2793 #endif
2794 
2795 #ifdef ENABLE_BLE
2796 /**
2797  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_FAILED
2798  * @param event packet
2799  * @return handle
2800  * @note: btstack_type H
2801  */
2802 static inline hci_con_handle_t sm_event_identity_resolving_failed_get_handle(const uint8_t * event){
2803     return little_endian_read_16(event, 2);
2804 }
2805 /**
2806  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_FAILED
2807  * @param event packet
2808  * @return addr_type
2809  * @note: btstack_type 1
2810  */
2811 static inline uint8_t sm_event_identity_resolving_failed_get_addr_type(const uint8_t * event){
2812     return event[4];
2813 }
2814 /**
2815  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_FAILED
2816  * @param event packet
2817  * @param Pointer to storage for address
2818  * @note: btstack_type B
2819  */
2820 static inline void sm_event_identity_resolving_failed_get_address(const uint8_t * event, bd_addr_t address){
2821     reverse_bytes(&event[5], address, 6);
2822 }
2823 #endif
2824 
2825 #ifdef ENABLE_BLE
2826 /**
2827  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2828  * @param event packet
2829  * @return handle
2830  * @note: btstack_type H
2831  */
2832 static inline hci_con_handle_t sm_event_identity_resolving_succeeded_get_handle(const uint8_t * event){
2833     return little_endian_read_16(event, 2);
2834 }
2835 /**
2836  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2837  * @param event packet
2838  * @return addr_type
2839  * @note: btstack_type 1
2840  */
2841 static inline uint8_t sm_event_identity_resolving_succeeded_get_addr_type(const uint8_t * event){
2842     return event[4];
2843 }
2844 /**
2845  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2846  * @param event packet
2847  * @param Pointer to storage for address
2848  * @note: btstack_type B
2849  */
2850 static inline void sm_event_identity_resolving_succeeded_get_address(const uint8_t * event, bd_addr_t address){
2851     reverse_bytes(&event[5], address, 6);
2852 }
2853 /**
2854  * @brief Get field identity_addr_type from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2855  * @param event packet
2856  * @return identity_addr_type
2857  * @note: btstack_type 1
2858  */
2859 static inline uint8_t sm_event_identity_resolving_succeeded_get_identity_addr_type(const uint8_t * event){
2860     return event[11];
2861 }
2862 /**
2863  * @brief Get field identity_address from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2864  * @param event packet
2865  * @param Pointer to storage for identity_address
2866  * @note: btstack_type B
2867  */
2868 static inline void sm_event_identity_resolving_succeeded_get_identity_address(const uint8_t * event, bd_addr_t identity_address){
2869     reverse_bytes(&event[12], identity_address, 6);
2870 }
2871 /**
2872  * @brief Get field index from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2873  * @param event packet
2874  * @return index
2875  * @note: btstack_type 2
2876  */
2877 static inline uint16_t sm_event_identity_resolving_succeeded_get_index(const uint8_t * event){
2878     return little_endian_read_16(event, 18);
2879 }
2880 #endif
2881 
2882 #ifdef ENABLE_BLE
2883 /**
2884  * @brief Get field handle from event SM_EVENT_AUTHORIZATION_REQUEST
2885  * @param event packet
2886  * @return handle
2887  * @note: btstack_type H
2888  */
2889 static inline hci_con_handle_t sm_event_authorization_request_get_handle(const uint8_t * event){
2890     return little_endian_read_16(event, 2);
2891 }
2892 /**
2893  * @brief Get field addr_type from event SM_EVENT_AUTHORIZATION_REQUEST
2894  * @param event packet
2895  * @return addr_type
2896  * @note: btstack_type 1
2897  */
2898 static inline uint8_t sm_event_authorization_request_get_addr_type(const uint8_t * event){
2899     return event[4];
2900 }
2901 /**
2902  * @brief Get field address from event SM_EVENT_AUTHORIZATION_REQUEST
2903  * @param event packet
2904  * @param Pointer to storage for address
2905  * @note: btstack_type B
2906  */
2907 static inline void sm_event_authorization_request_get_address(const uint8_t * event, bd_addr_t address){
2908     reverse_bytes(&event[5], address, 6);
2909 }
2910 #endif
2911 
2912 #ifdef ENABLE_BLE
2913 /**
2914  * @brief Get field handle from event SM_EVENT_AUTHORIZATION_RESULT
2915  * @param event packet
2916  * @return handle
2917  * @note: btstack_type H
2918  */
2919 static inline hci_con_handle_t sm_event_authorization_result_get_handle(const uint8_t * event){
2920     return little_endian_read_16(event, 2);
2921 }
2922 /**
2923  * @brief Get field addr_type from event SM_EVENT_AUTHORIZATION_RESULT
2924  * @param event packet
2925  * @return addr_type
2926  * @note: btstack_type 1
2927  */
2928 static inline uint8_t sm_event_authorization_result_get_addr_type(const uint8_t * event){
2929     return event[4];
2930 }
2931 /**
2932  * @brief Get field address from event SM_EVENT_AUTHORIZATION_RESULT
2933  * @param event packet
2934  * @param Pointer to storage for address
2935  * @note: btstack_type B
2936  */
2937 static inline void sm_event_authorization_result_get_address(const uint8_t * event, bd_addr_t address){
2938     reverse_bytes(&event[5], address, 6);
2939 }
2940 /**
2941  * @brief Get field authorization_result from event SM_EVENT_AUTHORIZATION_RESULT
2942  * @param event packet
2943  * @return authorization_result
2944  * @note: btstack_type 1
2945  */
2946 static inline uint8_t sm_event_authorization_result_get_authorization_result(const uint8_t * event){
2947     return event[11];
2948 }
2949 #endif
2950 
2951 #ifdef ENABLE_BLE
2952 /**
2953  * @brief Get field handle from event SM_EVENT_KEYPRESS_NOTIFICATION
2954  * @param event packet
2955  * @return handle
2956  * @note: btstack_type H
2957  */
2958 static inline hci_con_handle_t sm_event_keypress_notification_get_handle(const uint8_t * event){
2959     return little_endian_read_16(event, 2);
2960 }
2961 /**
2962  * @brief Get field action from event SM_EVENT_KEYPRESS_NOTIFICATION
2963  * @param event packet
2964  * @return action
2965  * @note: btstack_type 1
2966  */
2967 static inline uint8_t sm_event_keypress_notification_get_action(const uint8_t * event){
2968     return event[4];
2969 }
2970 #endif
2971 
2972 #ifdef ENABLE_BLE
2973 /**
2974  * @brief Get field handle from event SM_EVENT_IDENTITY_CREATED
2975  * @param event packet
2976  * @return handle
2977  * @note: btstack_type H
2978  */
2979 static inline hci_con_handle_t sm_event_identity_created_get_handle(const uint8_t * event){
2980     return little_endian_read_16(event, 2);
2981 }
2982 /**
2983  * @brief Get field addr_type from event SM_EVENT_IDENTITY_CREATED
2984  * @param event packet
2985  * @return addr_type
2986  * @note: btstack_type 1
2987  */
2988 static inline uint8_t sm_event_identity_created_get_addr_type(const uint8_t * event){
2989     return event[4];
2990 }
2991 /**
2992  * @brief Get field address from event SM_EVENT_IDENTITY_CREATED
2993  * @param event packet
2994  * @param Pointer to storage for address
2995  * @note: btstack_type B
2996  */
2997 static inline void sm_event_identity_created_get_address(const uint8_t * event, bd_addr_t address){
2998     reverse_bytes(&event[5], address, 6);
2999 }
3000 /**
3001  * @brief Get field identity_addr_type from event SM_EVENT_IDENTITY_CREATED
3002  * @param event packet
3003  * @return identity_addr_type
3004  * @note: btstack_type 1
3005  */
3006 static inline uint8_t sm_event_identity_created_get_identity_addr_type(const uint8_t * event){
3007     return event[11];
3008 }
3009 /**
3010  * @brief Get field identity_address from event SM_EVENT_IDENTITY_CREATED
3011  * @param event packet
3012  * @param Pointer to storage for identity_address
3013  * @note: btstack_type B
3014  */
3015 static inline void sm_event_identity_created_get_identity_address(const uint8_t * event, bd_addr_t identity_address){
3016     reverse_bytes(&event[12], identity_address, 6);
3017 }
3018 /**
3019  * @brief Get field index from event SM_EVENT_IDENTITY_CREATED
3020  * @param event packet
3021  * @return index
3022  * @note: btstack_type 2
3023  */
3024 static inline uint16_t sm_event_identity_created_get_index(const uint8_t * event){
3025     return little_endian_read_16(event, 18);
3026 }
3027 #endif
3028 
3029 #ifdef ENABLE_BLE
3030 /**
3031  * @brief Get field handle from event SM_EVENT_PAIRING_COMPLETE
3032  * @param event packet
3033  * @return handle
3034  * @note: btstack_type H
3035  */
3036 static inline hci_con_handle_t sm_event_pairing_complete_get_handle(const uint8_t * event){
3037     return little_endian_read_16(event, 2);
3038 }
3039 /**
3040  * @brief Get field addr_type from event SM_EVENT_PAIRING_COMPLETE
3041  * @param event packet
3042  * @return addr_type
3043  * @note: btstack_type 1
3044  */
3045 static inline uint8_t sm_event_pairing_complete_get_addr_type(const uint8_t * event){
3046     return event[4];
3047 }
3048 /**
3049  * @brief Get field address from event SM_EVENT_PAIRING_COMPLETE
3050  * @param event packet
3051  * @param Pointer to storage for address
3052  * @note: btstack_type B
3053  */
3054 static inline void sm_event_pairing_complete_get_address(const uint8_t * event, bd_addr_t address){
3055     reverse_bytes(&event[5], address, 6);
3056 }
3057 /**
3058  * @brief Get field status from event SM_EVENT_PAIRING_COMPLETE
3059  * @param event packet
3060  * @return status
3061  * @note: btstack_type 1
3062  */
3063 static inline uint8_t sm_event_pairing_complete_get_status(const uint8_t * event){
3064     return event[11];
3065 }
3066 /**
3067  * @brief Get field reason from event SM_EVENT_PAIRING_COMPLETE
3068  * @param event packet
3069  * @return reason
3070  * @note: btstack_type 1
3071  */
3072 static inline uint8_t sm_event_pairing_complete_get_reason(const uint8_t * event){
3073     return event[12];
3074 }
3075 #endif
3076 
3077 /**
3078  * @brief Get field handle from event GAP_EVENT_SECURITY_LEVEL
3079  * @param event packet
3080  * @return handle
3081  * @note: btstack_type H
3082  */
3083 static inline hci_con_handle_t gap_event_security_level_get_handle(const uint8_t * event){
3084     return little_endian_read_16(event, 2);
3085 }
3086 /**
3087  * @brief Get field security_level from event GAP_EVENT_SECURITY_LEVEL
3088  * @param event packet
3089  * @return security_level
3090  * @note: btstack_type 1
3091  */
3092 static inline uint8_t gap_event_security_level_get_security_level(const uint8_t * event){
3093     return event[4];
3094 }
3095 
3096 /**
3097  * @brief Get field status from event GAP_EVENT_DEDICATED_BONDING_COMPLETED
3098  * @param event packet
3099  * @return status
3100  * @note: btstack_type 1
3101  */
3102 static inline uint8_t gap_event_dedicated_bonding_completed_get_status(const uint8_t * event){
3103     return event[2];
3104 }
3105 /**
3106  * @brief Get field address from event GAP_EVENT_DEDICATED_BONDING_COMPLETED
3107  * @param event packet
3108  * @param Pointer to storage for address
3109  * @note: btstack_type B
3110  */
3111 static inline void gap_event_dedicated_bonding_completed_get_address(const uint8_t * event, bd_addr_t address){
3112     reverse_bytes(&event[3], address, 6);
3113 }
3114 
3115 /**
3116  * @brief Get field advertising_event_type from event GAP_EVENT_ADVERTISING_REPORT
3117  * @param event packet
3118  * @return advertising_event_type
3119  * @note: btstack_type 1
3120  */
3121 static inline uint8_t gap_event_advertising_report_get_advertising_event_type(const uint8_t * event){
3122     return event[2];
3123 }
3124 /**
3125  * @brief Get field address_type from event GAP_EVENT_ADVERTISING_REPORT
3126  * @param event packet
3127  * @return address_type
3128  * @note: btstack_type 1
3129  */
3130 static inline uint8_t gap_event_advertising_report_get_address_type(const uint8_t * event){
3131     return event[3];
3132 }
3133 /**
3134  * @brief Get field address from event GAP_EVENT_ADVERTISING_REPORT
3135  * @param event packet
3136  * @param Pointer to storage for address
3137  * @note: btstack_type B
3138  */
3139 static inline void gap_event_advertising_report_get_address(const uint8_t * event, bd_addr_t address){
3140     reverse_bytes(&event[4], address, 6);
3141 }
3142 /**
3143  * @brief Get field rssi from event GAP_EVENT_ADVERTISING_REPORT
3144  * @param event packet
3145  * @return rssi
3146  * @note: btstack_type 1
3147  */
3148 static inline uint8_t gap_event_advertising_report_get_rssi(const uint8_t * event){
3149     return event[10];
3150 }
3151 /**
3152  * @brief Get field data_length from event GAP_EVENT_ADVERTISING_REPORT
3153  * @param event packet
3154  * @return data_length
3155  * @note: btstack_type J
3156  */
3157 static inline uint8_t gap_event_advertising_report_get_data_length(const uint8_t * event){
3158     return event[11];
3159 }
3160 /**
3161  * @brief Get field data from event GAP_EVENT_ADVERTISING_REPORT
3162  * @param event packet
3163  * @return data
3164  * @note: btstack_type V
3165  */
3166 static inline const uint8_t * gap_event_advertising_report_get_data(const uint8_t * event){
3167     return &event[12];
3168 }
3169 
3170 /**
3171  * @brief Get field bd_addr from event GAP_EVENT_INQUIRY_RESULT
3172  * @param event packet
3173  * @param Pointer to storage for bd_addr
3174  * @note: btstack_type B
3175  */
3176 static inline void gap_event_inquiry_result_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3177     reverse_bytes(&event[2], bd_addr, 6);
3178 }
3179 /**
3180  * @brief Get field page_scan_repetition_mode from event GAP_EVENT_INQUIRY_RESULT
3181  * @param event packet
3182  * @return page_scan_repetition_mode
3183  * @note: btstack_type 1
3184  */
3185 static inline uint8_t gap_event_inquiry_result_get_page_scan_repetition_mode(const uint8_t * event){
3186     return event[8];
3187 }
3188 /**
3189  * @brief Get field class_of_device from event GAP_EVENT_INQUIRY_RESULT
3190  * @param event packet
3191  * @return class_of_device
3192  * @note: btstack_type 3
3193  */
3194 static inline uint32_t gap_event_inquiry_result_get_class_of_device(const uint8_t * event){
3195     return little_endian_read_24(event, 9);
3196 }
3197 /**
3198  * @brief Get field clock_offset from event GAP_EVENT_INQUIRY_RESULT
3199  * @param event packet
3200  * @return clock_offset
3201  * @note: btstack_type 2
3202  */
3203 static inline uint16_t gap_event_inquiry_result_get_clock_offset(const uint8_t * event){
3204     return little_endian_read_16(event, 12);
3205 }
3206 /**
3207  * @brief Get field rssi_available from event GAP_EVENT_INQUIRY_RESULT
3208  * @param event packet
3209  * @return rssi_available
3210  * @note: btstack_type 1
3211  */
3212 static inline uint8_t gap_event_inquiry_result_get_rssi_available(const uint8_t * event){
3213     return event[14];
3214 }
3215 /**
3216  * @brief Get field rssi from event GAP_EVENT_INQUIRY_RESULT
3217  * @param event packet
3218  * @return rssi
3219  * @note: btstack_type 1
3220  */
3221 static inline uint8_t gap_event_inquiry_result_get_rssi(const uint8_t * event){
3222     return event[15];
3223 }
3224 /**
3225  * @brief Get field name_available from event GAP_EVENT_INQUIRY_RESULT
3226  * @param event packet
3227  * @return name_available
3228  * @note: btstack_type 1
3229  */
3230 static inline uint8_t gap_event_inquiry_result_get_name_available(const uint8_t * event){
3231     return event[16];
3232 }
3233 /**
3234  * @brief Get field name_len from event GAP_EVENT_INQUIRY_RESULT
3235  * @param event packet
3236  * @return name_len
3237  * @note: btstack_type J
3238  */
3239 static inline uint8_t gap_event_inquiry_result_get_name_len(const uint8_t * event){
3240     return event[17];
3241 }
3242 /**
3243  * @brief Get field name from event GAP_EVENT_INQUIRY_RESULT
3244  * @param event packet
3245  * @return name
3246  * @note: btstack_type V
3247  */
3248 static inline const uint8_t * gap_event_inquiry_result_get_name(const uint8_t * event){
3249     return &event[18];
3250 }
3251 
3252 /**
3253  * @brief Get field status from event GAP_EVENT_INQUIRY_COMPLETE
3254  * @param event packet
3255  * @return status
3256  * @note: btstack_type 1
3257  */
3258 static inline uint8_t gap_event_inquiry_complete_get_status(const uint8_t * event){
3259     return event[2];
3260 }
3261 
3262 /**
3263  * @brief Get field con_handle from event GAP_EVENT_RSSI_MEASUREMENT
3264  * @param event packet
3265  * @return con_handle
3266  * @note: btstack_type H
3267  */
3268 static inline hci_con_handle_t gap_event_rssi_measurement_get_con_handle(const uint8_t * event){
3269     return little_endian_read_16(event, 2);
3270 }
3271 /**
3272  * @brief Get field rssi from event GAP_EVENT_RSSI_MEASUREMENT
3273  * @param event packet
3274  * @return rssi
3275  * @note: btstack_type 1
3276  */
3277 static inline uint8_t gap_event_rssi_measurement_get_rssi(const uint8_t * event){
3278     return event[4];
3279 }
3280 
3281 /**
3282  * @brief Get field status from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3283  * @param event packet
3284  * @return status
3285  * @note: btstack_type 1
3286  */
3287 static inline uint8_t hci_subevent_le_connection_complete_get_status(const uint8_t * event){
3288     return event[3];
3289 }
3290 /**
3291  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3292  * @param event packet
3293  * @return connection_handle
3294  * @note: btstack_type H
3295  */
3296 static inline hci_con_handle_t hci_subevent_le_connection_complete_get_connection_handle(const uint8_t * event){
3297     return little_endian_read_16(event, 4);
3298 }
3299 /**
3300  * @brief Get field role from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3301  * @param event packet
3302  * @return role
3303  * @note: btstack_type 1
3304  */
3305 static inline uint8_t hci_subevent_le_connection_complete_get_role(const uint8_t * event){
3306     return event[6];
3307 }
3308 /**
3309  * @brief Get field peer_address_type from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3310  * @param event packet
3311  * @return peer_address_type
3312  * @note: btstack_type 1
3313  */
3314 static inline uint8_t hci_subevent_le_connection_complete_get_peer_address_type(const uint8_t * event){
3315     return event[7];
3316 }
3317 /**
3318  * @brief Get field peer_address from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3319  * @param event packet
3320  * @param Pointer to storage for peer_address
3321  * @note: btstack_type B
3322  */
3323 static inline void hci_subevent_le_connection_complete_get_peer_address(const uint8_t * event, bd_addr_t peer_address){
3324     reverse_bytes(&event[8], peer_address, 6);
3325 }
3326 /**
3327  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3328  * @param event packet
3329  * @return conn_interval
3330  * @note: btstack_type 2
3331  */
3332 static inline uint16_t hci_subevent_le_connection_complete_get_conn_interval(const uint8_t * event){
3333     return little_endian_read_16(event, 14);
3334 }
3335 /**
3336  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3337  * @param event packet
3338  * @return conn_latency
3339  * @note: btstack_type 2
3340  */
3341 static inline uint16_t hci_subevent_le_connection_complete_get_conn_latency(const uint8_t * event){
3342     return little_endian_read_16(event, 16);
3343 }
3344 /**
3345  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3346  * @param event packet
3347  * @return supervision_timeout
3348  * @note: btstack_type 2
3349  */
3350 static inline uint16_t hci_subevent_le_connection_complete_get_supervision_timeout(const uint8_t * event){
3351     return little_endian_read_16(event, 18);
3352 }
3353 /**
3354  * @brief Get field master_clock_accuracy from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3355  * @param event packet
3356  * @return master_clock_accuracy
3357  * @note: btstack_type 1
3358  */
3359 static inline uint8_t hci_subevent_le_connection_complete_get_master_clock_accuracy(const uint8_t * event){
3360     return event[20];
3361 }
3362 
3363 /**
3364  * @brief Get field status from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3365  * @param event packet
3366  * @return status
3367  * @note: btstack_type 1
3368  */
3369 static inline uint8_t hci_subevent_le_connection_update_complete_get_status(const uint8_t * event){
3370     return event[3];
3371 }
3372 /**
3373  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3374  * @param event packet
3375  * @return connection_handle
3376  * @note: btstack_type H
3377  */
3378 static inline hci_con_handle_t hci_subevent_le_connection_update_complete_get_connection_handle(const uint8_t * event){
3379     return little_endian_read_16(event, 4);
3380 }
3381 /**
3382  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3383  * @param event packet
3384  * @return conn_interval
3385  * @note: btstack_type 2
3386  */
3387 static inline uint16_t hci_subevent_le_connection_update_complete_get_conn_interval(const uint8_t * event){
3388     return little_endian_read_16(event, 6);
3389 }
3390 /**
3391  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3392  * @param event packet
3393  * @return conn_latency
3394  * @note: btstack_type 2
3395  */
3396 static inline uint16_t hci_subevent_le_connection_update_complete_get_conn_latency(const uint8_t * event){
3397     return little_endian_read_16(event, 8);
3398 }
3399 /**
3400  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3401  * @param event packet
3402  * @return supervision_timeout
3403  * @note: btstack_type 2
3404  */
3405 static inline uint16_t hci_subevent_le_connection_update_complete_get_supervision_timeout(const uint8_t * event){
3406     return little_endian_read_16(event, 10);
3407 }
3408 
3409 /**
3410  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE
3411  * @param event packet
3412  * @return connection_handle
3413  * @note: btstack_type H
3414  */
3415 static inline hci_con_handle_t hci_subevent_le_read_remote_used_features_complete_get_connection_handle(const uint8_t * event){
3416     return little_endian_read_16(event, 3);
3417 }
3418 /**
3419  * @brief Get field random_number from event HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE
3420  * @param event packet
3421  * @return random_number
3422  * @note: btstack_type D
3423  */
3424 static inline const uint8_t * hci_subevent_le_read_remote_used_features_complete_get_random_number(const uint8_t * event){
3425     return (const uint8_t *) &event[5];
3426 }
3427 /**
3428  * @brief Get field encryption_diversifier from event HCI_SUBEVENT_LE_READ_REMOTE_USED_FEATURES_COMPLETE
3429  * @param event packet
3430  * @return encryption_diversifier
3431  * @note: btstack_type 2
3432  */
3433 static inline uint16_t hci_subevent_le_read_remote_used_features_complete_get_encryption_diversifier(const uint8_t * event){
3434     return little_endian_read_16(event, 13);
3435 }
3436 
3437 /**
3438  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
3439  * @param event packet
3440  * @return connection_handle
3441  * @note: btstack_type H
3442  */
3443 static inline hci_con_handle_t hci_subevent_le_long_term_key_request_get_connection_handle(const uint8_t * event){
3444     return little_endian_read_16(event, 3);
3445 }
3446 /**
3447  * @brief Get field random_number from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
3448  * @param event packet
3449  * @return random_number
3450  * @note: btstack_type D
3451  */
3452 static inline const uint8_t * hci_subevent_le_long_term_key_request_get_random_number(const uint8_t * event){
3453     return (const uint8_t *) &event[5];
3454 }
3455 /**
3456  * @brief Get field encryption_diversifier from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
3457  * @param event packet
3458  * @return encryption_diversifier
3459  * @note: btstack_type 2
3460  */
3461 static inline uint16_t hci_subevent_le_long_term_key_request_get_encryption_diversifier(const uint8_t * event){
3462     return little_endian_read_16(event, 13);
3463 }
3464 
3465 /**
3466  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
3467  * @param event packet
3468  * @return connection_handle
3469  * @note: btstack_type H
3470  */
3471 static inline hci_con_handle_t hci_subevent_le_remote_connection_parameter_request_get_connection_handle(const uint8_t * event){
3472     return little_endian_read_16(event, 3);
3473 }
3474 /**
3475  * @brief Get field interval_min from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
3476  * @param event packet
3477  * @return interval_min
3478  * @note: btstack_type 2
3479  */
3480 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_interval_min(const uint8_t * event){
3481     return little_endian_read_16(event, 5);
3482 }
3483 /**
3484  * @brief Get field interval_max from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
3485  * @param event packet
3486  * @return interval_max
3487  * @note: btstack_type 2
3488  */
3489 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_interval_max(const uint8_t * event){
3490     return little_endian_read_16(event, 7);
3491 }
3492 /**
3493  * @brief Get field latency from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
3494  * @param event packet
3495  * @return latency
3496  * @note: btstack_type 2
3497  */
3498 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_latency(const uint8_t * event){
3499     return little_endian_read_16(event, 9);
3500 }
3501 /**
3502  * @brief Get field timeout from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
3503  * @param event packet
3504  * @return timeout
3505  * @note: btstack_type 2
3506  */
3507 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_timeout(const uint8_t * event){
3508     return little_endian_read_16(event, 11);
3509 }
3510 
3511 /**
3512  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
3513  * @param event packet
3514  * @return connection_handle
3515  * @note: btstack_type H
3516  */
3517 static inline hci_con_handle_t hci_subevent_le_data_length_change_get_connection_handle(const uint8_t * event){
3518     return little_endian_read_16(event, 3);
3519 }
3520 /**
3521  * @brief Get field max_tx_octets from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
3522  * @param event packet
3523  * @return max_tx_octets
3524  * @note: btstack_type 2
3525  */
3526 static inline uint16_t hci_subevent_le_data_length_change_get_max_tx_octets(const uint8_t * event){
3527     return little_endian_read_16(event, 5);
3528 }
3529 /**
3530  * @brief Get field max_tx_time from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
3531  * @param event packet
3532  * @return max_tx_time
3533  * @note: btstack_type 2
3534  */
3535 static inline uint16_t hci_subevent_le_data_length_change_get_max_tx_time(const uint8_t * event){
3536     return little_endian_read_16(event, 7);
3537 }
3538 /**
3539  * @brief Get field max_rx_octets from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
3540  * @param event packet
3541  * @return max_rx_octets
3542  * @note: btstack_type 2
3543  */
3544 static inline uint16_t hci_subevent_le_data_length_change_get_max_rx_octets(const uint8_t * event){
3545     return little_endian_read_16(event, 9);
3546 }
3547 /**
3548  * @brief Get field max_rx_time from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
3549  * @param event packet
3550  * @return max_rx_time
3551  * @note: btstack_type 2
3552  */
3553 static inline uint16_t hci_subevent_le_data_length_change_get_max_rx_time(const uint8_t * event){
3554     return little_endian_read_16(event, 11);
3555 }
3556 
3557 /**
3558  * @brief Get field status from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
3559  * @param event packet
3560  * @return status
3561  * @note: btstack_type 1
3562  */
3563 static inline uint8_t hci_subevent_le_read_local_p256_public_key_complete_get_status(const uint8_t * event){
3564     return event[3];
3565 }
3566 /**
3567  * @brief Get field dhkey_x from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
3568  * @param event packet
3569  * @param Pointer to storage for dhkey_x
3570  * @note: btstack_type Q
3571  */
3572 static inline void hci_subevent_le_read_local_p256_public_key_complete_get_dhkey_x(const uint8_t * event, uint8_t * dhkey_x){
3573     reverse_bytes(&event[4], dhkey_x, 32);
3574 }
3575 /**
3576  * @brief Get field dhkey_y from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
3577  * @param event packet
3578  * @param Pointer to storage for dhkey_y
3579  * @note: btstack_type Q
3580  */
3581 static inline void hci_subevent_le_read_local_p256_public_key_complete_get_dhkey_y(const uint8_t * event, uint8_t * dhkey_y){
3582     reverse_bytes(&event[36], dhkey_y, 32);
3583 }
3584 
3585 /**
3586  * @brief Get field status from event HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE
3587  * @param event packet
3588  * @return status
3589  * @note: btstack_type 1
3590  */
3591 static inline uint8_t hci_subevent_le_generate_dhkey_complete_get_status(const uint8_t * event){
3592     return event[3];
3593 }
3594 /**
3595  * @brief Get field dhkey from event HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE
3596  * @param event packet
3597  * @param Pointer to storage for dhkey
3598  * @note: btstack_type Q
3599  */
3600 static inline void hci_subevent_le_generate_dhkey_complete_get_dhkey(const uint8_t * event, uint8_t * dhkey){
3601     reverse_bytes(&event[4], dhkey, 32);
3602 }
3603 
3604 /**
3605  * @brief Get field status from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3606  * @param event packet
3607  * @return status
3608  * @note: btstack_type 1
3609  */
3610 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_status(const uint8_t * event){
3611     return event[3];
3612 }
3613 /**
3614  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3615  * @param event packet
3616  * @return connection_handle
3617  * @note: btstack_type H
3618  */
3619 static inline hci_con_handle_t hci_subevent_le_enhanced_connection_complete_get_connection_handle(const uint8_t * event){
3620     return little_endian_read_16(event, 4);
3621 }
3622 /**
3623  * @brief Get field role from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3624  * @param event packet
3625  * @return role
3626  * @note: btstack_type 1
3627  */
3628 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_role(const uint8_t * event){
3629     return event[6];
3630 }
3631 /**
3632  * @brief Get field peer_address_type from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3633  * @param event packet
3634  * @return peer_address_type
3635  * @note: btstack_type 1
3636  */
3637 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_peer_address_type(const uint8_t * event){
3638     return event[7];
3639 }
3640 /**
3641  * @brief Get field perr_addresss from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3642  * @param event packet
3643  * @param Pointer to storage for perr_addresss
3644  * @note: btstack_type B
3645  */
3646 static inline void hci_subevent_le_enhanced_connection_complete_get_perr_addresss(const uint8_t * event, bd_addr_t perr_addresss){
3647     reverse_bytes(&event[8], perr_addresss, 6);
3648 }
3649 /**
3650  * @brief Get field local_resolvable_private_addres from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3651  * @param event packet
3652  * @param Pointer to storage for local_resolvable_private_addres
3653  * @note: btstack_type B
3654  */
3655 static inline void hci_subevent_le_enhanced_connection_complete_get_local_resolvable_private_addres(const uint8_t * event, bd_addr_t local_resolvable_private_addres){
3656     reverse_bytes(&event[14], local_resolvable_private_addres, 6);
3657 }
3658 /**
3659  * @brief Get field peer_resolvable_private_addres from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3660  * @param event packet
3661  * @param Pointer to storage for peer_resolvable_private_addres
3662  * @note: btstack_type B
3663  */
3664 static inline void hci_subevent_le_enhanced_connection_complete_get_peer_resolvable_private_addres(const uint8_t * event, bd_addr_t peer_resolvable_private_addres){
3665     reverse_bytes(&event[20], peer_resolvable_private_addres, 6);
3666 }
3667 /**
3668  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3669  * @param event packet
3670  * @return conn_interval
3671  * @note: btstack_type 2
3672  */
3673 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_conn_interval(const uint8_t * event){
3674     return little_endian_read_16(event, 26);
3675 }
3676 /**
3677  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3678  * @param event packet
3679  * @return conn_latency
3680  * @note: btstack_type 2
3681  */
3682 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_conn_latency(const uint8_t * event){
3683     return little_endian_read_16(event, 28);
3684 }
3685 /**
3686  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3687  * @param event packet
3688  * @return supervision_timeout
3689  * @note: btstack_type 2
3690  */
3691 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_supervision_timeout(const uint8_t * event){
3692     return little_endian_read_16(event, 30);
3693 }
3694 /**
3695  * @brief Get field master_clock_accuracy from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
3696  * @param event packet
3697  * @return master_clock_accuracy
3698  * @note: btstack_type 1
3699  */
3700 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_master_clock_accuracy(const uint8_t * event){
3701     return event[32];
3702 }
3703 
3704 /**
3705  * @brief Get field status from event HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE
3706  * @param event packet
3707  * @return status
3708  * @note: btstack_type 1
3709  */
3710 static inline uint8_t hsp_subevent_rfcomm_connection_complete_get_status(const uint8_t * event){
3711     return event[3];
3712 }
3713 
3714 /**
3715  * @brief Get field status from event HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE
3716  * @param event packet
3717  * @return status
3718  * @note: btstack_type 1
3719  */
3720 static inline uint8_t hsp_subevent_rfcomm_disconnection_complete_get_status(const uint8_t * event){
3721     return event[3];
3722 }
3723 
3724 /**
3725  * @brief Get field status from event HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE
3726  * @param event packet
3727  * @return status
3728  * @note: btstack_type 1
3729  */
3730 static inline uint8_t hsp_subevent_audio_connection_complete_get_status(const uint8_t * event){
3731     return event[3];
3732 }
3733 /**
3734  * @brief Get field handle from event HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE
3735  * @param event packet
3736  * @return handle
3737  * @note: btstack_type H
3738  */
3739 static inline hci_con_handle_t hsp_subevent_audio_connection_complete_get_handle(const uint8_t * event){
3740     return little_endian_read_16(event, 4);
3741 }
3742 
3743 /**
3744  * @brief Get field status from event HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE
3745  * @param event packet
3746  * @return status
3747  * @note: btstack_type 1
3748  */
3749 static inline uint8_t hsp_subevent_audio_disconnection_complete_get_status(const uint8_t * event){
3750     return event[3];
3751 }
3752 
3753 
3754 /**
3755  * @brief Get field gain from event HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED
3756  * @param event packet
3757  * @return gain
3758  * @note: btstack_type 1
3759  */
3760 static inline uint8_t hsp_subevent_microphone_gain_changed_get_gain(const uint8_t * event){
3761     return event[3];
3762 }
3763 
3764 /**
3765  * @brief Get field gain from event HSP_SUBEVENT_SPEAKER_GAIN_CHANGED
3766  * @param event packet
3767  * @return gain
3768  * @note: btstack_type 1
3769  */
3770 static inline uint8_t hsp_subevent_speaker_gain_changed_get_gain(const uint8_t * event){
3771     return event[3];
3772 }
3773 
3774 /**
3775  * @brief Get field value_length from event HSP_SUBEVENT_HS_COMMAND
3776  * @param event packet
3777  * @return value_length
3778  * @note: btstack_type J
3779  */
3780 static inline uint8_t hsp_subevent_hs_command_get_value_length(const uint8_t * event){
3781     return event[3];
3782 }
3783 /**
3784  * @brief Get field value from event HSP_SUBEVENT_HS_COMMAND
3785  * @param event packet
3786  * @return value
3787  * @note: btstack_type V
3788  */
3789 static inline const uint8_t * hsp_subevent_hs_command_get_value(const uint8_t * event){
3790     return &event[4];
3791 }
3792 
3793 /**
3794  * @brief Get field value_length from event HSP_SUBEVENT_AG_INDICATION
3795  * @param event packet
3796  * @return value_length
3797  * @note: btstack_type J
3798  */
3799 static inline uint8_t hsp_subevent_ag_indication_get_value_length(const uint8_t * event){
3800     return event[3];
3801 }
3802 /**
3803  * @brief Get field value from event HSP_SUBEVENT_AG_INDICATION
3804  * @param event packet
3805  * @return value
3806  * @note: btstack_type V
3807  */
3808 static inline const uint8_t * hsp_subevent_ag_indication_get_value(const uint8_t * event){
3809     return &event[4];
3810 }
3811 
3812 /**
3813  * @brief Get field status from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
3814  * @param event packet
3815  * @return status
3816  * @note: btstack_type 1
3817  */
3818 static inline uint8_t hfp_subevent_service_level_connection_established_get_status(const uint8_t * event){
3819     return event[3];
3820 }
3821 /**
3822  * @brief Get field con_handle from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
3823  * @param event packet
3824  * @return con_handle
3825  * @note: btstack_type H
3826  */
3827 static inline hci_con_handle_t hfp_subevent_service_level_connection_established_get_con_handle(const uint8_t * event){
3828     return little_endian_read_16(event, 4);
3829 }
3830 /**
3831  * @brief Get field bd_addr from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
3832  * @param event packet
3833  * @param Pointer to storage for bd_addr
3834  * @note: btstack_type B
3835  */
3836 static inline void hfp_subevent_service_level_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3837     reverse_bytes(&event[6], bd_addr, 6);
3838 }
3839 
3840 
3841 /**
3842  * @brief Get field status from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
3843  * @param event packet
3844  * @return status
3845  * @note: btstack_type 1
3846  */
3847 static inline uint8_t hfp_subevent_audio_connection_established_get_status(const uint8_t * event){
3848     return event[3];
3849 }
3850 /**
3851  * @brief Get field handle from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
3852  * @param event packet
3853  * @return handle
3854  * @note: btstack_type H
3855  */
3856 static inline hci_con_handle_t hfp_subevent_audio_connection_established_get_handle(const uint8_t * event){
3857     return little_endian_read_16(event, 4);
3858 }
3859 /**
3860  * @brief Get field bd_addr from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
3861  * @param event packet
3862  * @param Pointer to storage for bd_addr
3863  * @note: btstack_type B
3864  */
3865 static inline void hfp_subevent_audio_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3866     reverse_bytes(&event[6], bd_addr, 6);
3867 }
3868 /**
3869  * @brief Get field negotiated_codec from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
3870  * @param event packet
3871  * @return negotiated_codec
3872  * @note: btstack_type 1
3873  */
3874 static inline uint8_t hfp_subevent_audio_connection_established_get_negotiated_codec(const uint8_t * event){
3875     return event[12];
3876 }
3877 
3878 
3879 /**
3880  * @brief Get field status from event HFP_SUBEVENT_COMPLETE
3881  * @param event packet
3882  * @return status
3883  * @note: btstack_type 1
3884  */
3885 static inline uint8_t hfp_subevent_complete_get_status(const uint8_t * event){
3886     return event[3];
3887 }
3888 
3889 /**
3890  * @brief Get field indicator_index from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3891  * @param event packet
3892  * @return indicator_index
3893  * @note: btstack_type 1
3894  */
3895 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_index(const uint8_t * event){
3896     return event[3];
3897 }
3898 /**
3899  * @brief Get field indicator_status from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3900  * @param event packet
3901  * @return indicator_status
3902  * @note: btstack_type 1
3903  */
3904 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_status(const uint8_t * event){
3905     return event[4];
3906 }
3907 /**
3908  * @brief Get field indicator_min_range from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3909  * @param event packet
3910  * @return indicator_min_range
3911  * @note: btstack_type 1
3912  */
3913 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_min_range(const uint8_t * event){
3914     return event[5];
3915 }
3916 /**
3917  * @brief Get field indicator_max_range from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3918  * @param event packet
3919  * @return indicator_max_range
3920  * @note: btstack_type 1
3921  */
3922 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_max_range(const uint8_t * event){
3923     return event[6];
3924 }
3925 /**
3926  * @brief Get field indicator_mandatory from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3927  * @param event packet
3928  * @return indicator_mandatory
3929  * @note: btstack_type 1
3930  */
3931 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_mandatory(const uint8_t * event){
3932     return event[7];
3933 }
3934 /**
3935  * @brief Get field indicator_enabled from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3936  * @param event packet
3937  * @return indicator_enabled
3938  * @note: btstack_type 1
3939  */
3940 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_enabled(const uint8_t * event){
3941     return event[8];
3942 }
3943 /**
3944  * @brief Get field indicator_status_changed from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3945  * @param event packet
3946  * @return indicator_status_changed
3947  * @note: btstack_type 1
3948  */
3949 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_status_changed(const uint8_t * event){
3950     return event[9];
3951 }
3952 /**
3953  * @brief Get field indicator_name from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
3954  * @param event packet
3955  * @return indicator_name
3956  * @note: btstack_type T
3957  */
3958 static inline const char * hfp_subevent_ag_indicator_status_changed_get_indicator_name(const uint8_t * event){
3959     return (const char *) &event[10];
3960 }
3961 
3962 /**
3963  * @brief Get field network_operator_mode from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
3964  * @param event packet
3965  * @return network_operator_mode
3966  * @note: btstack_type 1
3967  */
3968 static inline uint8_t hfp_subevent_network_operator_changed_get_network_operator_mode(const uint8_t * event){
3969     return event[3];
3970 }
3971 /**
3972  * @brief Get field network_operator_format from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
3973  * @param event packet
3974  * @return network_operator_format
3975  * @note: btstack_type 1
3976  */
3977 static inline uint8_t hfp_subevent_network_operator_changed_get_network_operator_format(const uint8_t * event){
3978     return event[4];
3979 }
3980 /**
3981  * @brief Get field network_operator_name from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
3982  * @param event packet
3983  * @return network_operator_name
3984  * @note: btstack_type T
3985  */
3986 static inline const char * hfp_subevent_network_operator_changed_get_network_operator_name(const uint8_t * event){
3987     return (const char *) &event[5];
3988 }
3989 
3990 /**
3991  * @brief Get field error from event HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR
3992  * @param event packet
3993  * @return error
3994  * @note: btstack_type 1
3995  */
3996 static inline uint8_t hfp_subevent_extended_audio_gateway_error_get_error(const uint8_t * event){
3997     return event[3];
3998 }
3999 
4000 
4001 
4002 
4003 /**
4004  * @brief Get field number from event HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER
4005  * @param event packet
4006  * @return number
4007  * @note: btstack_type T
4008  */
4009 static inline const char * hfp_subevent_place_call_with_number_get_number(const uint8_t * event){
4010     return (const char *) &event[3];
4011 }
4012 
4013 
4014 /**
4015  * @brief Get field number from event HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG
4016  * @param event packet
4017  * @return number
4018  * @note: btstack_type T
4019  */
4020 static inline const char * hfp_subevent_number_for_voice_tag_get_number(const uint8_t * event){
4021     return (const char *) &event[3];
4022 }
4023 
4024 /**
4025  * @brief Get field dtmf from event HFP_SUBEVENT_TRANSMIT_DTMF_CODES
4026  * @param event packet
4027  * @return dtmf
4028  * @note: btstack_type T
4029  */
4030 static inline const char * hfp_subevent_transmit_dtmf_codes_get_dtmf(const uint8_t * event){
4031     return (const char *) &event[3];
4032 }
4033 
4034 
4035 
4036 
4037 /**
4038  * @brief Get field gain from event HFP_SUBEVENT_SPEAKER_VOLUME
4039  * @param event packet
4040  * @return gain
4041  * @note: btstack_type 1
4042  */
4043 static inline uint8_t hfp_subevent_speaker_volume_get_gain(const uint8_t * event){
4044     return event[3];
4045 }
4046 
4047 /**
4048  * @brief Get field gain from event HFP_SUBEVENT_MICROPHONE_VOLUME
4049  * @param event packet
4050  * @return gain
4051  * @note: btstack_type 1
4052  */
4053 static inline uint8_t hfp_subevent_microphone_volume_get_gain(const uint8_t * event){
4054     return event[3];
4055 }
4056 
4057 /**
4058  * @brief Get field type from event HFP_SUBEVENT_CALL_WAITING_NOTIFICATION
4059  * @param event packet
4060  * @return type
4061  * @note: btstack_type 1
4062  */
4063 static inline uint8_t hfp_subevent_call_waiting_notification_get_type(const uint8_t * event){
4064     return event[3];
4065 }
4066 /**
4067  * @brief Get field number from event HFP_SUBEVENT_CALL_WAITING_NOTIFICATION
4068  * @param event packet
4069  * @return number
4070  * @note: btstack_type T
4071  */
4072 static inline const char * hfp_subevent_call_waiting_notification_get_number(const uint8_t * event){
4073     return (const char *) &event[4];
4074 }
4075 
4076 /**
4077  * @brief Get field type from event HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION
4078  * @param event packet
4079  * @return type
4080  * @note: btstack_type 1
4081  */
4082 static inline uint8_t hfp_subevent_calling_line_identification_notification_get_type(const uint8_t * event){
4083     return event[3];
4084 }
4085 /**
4086  * @brief Get field number from event HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION
4087  * @param event packet
4088  * @return number
4089  * @note: btstack_type T
4090  */
4091 static inline const char * hfp_subevent_calling_line_identification_notification_get_number(const uint8_t * event){
4092     return (const char *) &event[4];
4093 }
4094 
4095 /**
4096  * @brief Get field clcc_idx from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4097  * @param event packet
4098  * @return clcc_idx
4099  * @note: btstack_type 1
4100  */
4101 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_idx(const uint8_t * event){
4102     return event[3];
4103 }
4104 /**
4105  * @brief Get field clcc_dir from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4106  * @param event packet
4107  * @return clcc_dir
4108  * @note: btstack_type 1
4109  */
4110 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_dir(const uint8_t * event){
4111     return event[4];
4112 }
4113 /**
4114  * @brief Get field clcc_status from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4115  * @param event packet
4116  * @return clcc_status
4117  * @note: btstack_type 1
4118  */
4119 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_status(const uint8_t * event){
4120     return event[5];
4121 }
4122 /**
4123  * @brief Get field clcc_mode from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4124  * @param event packet
4125  * @return clcc_mode
4126  * @note: btstack_type 1
4127  */
4128 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_mode(const uint8_t * event){
4129     return event[6];
4130 }
4131 /**
4132  * @brief Get field clcc_mpty from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4133  * @param event packet
4134  * @return clcc_mpty
4135  * @note: btstack_type 1
4136  */
4137 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_mpty(const uint8_t * event){
4138     return event[7];
4139 }
4140 /**
4141  * @brief Get field bnip_type from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4142  * @param event packet
4143  * @return bnip_type
4144  * @note: btstack_type 1
4145  */
4146 static inline uint8_t hfp_subevent_enhanced_call_status_get_bnip_type(const uint8_t * event){
4147     return event[8];
4148 }
4149 /**
4150  * @brief Get field bnip_number from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
4151  * @param event packet
4152  * @return bnip_number
4153  * @note: btstack_type T
4154  */
4155 static inline const char * hfp_subevent_enhanced_call_status_get_bnip_number(const uint8_t * event){
4156     return (const char *) &event[9];
4157 }
4158 
4159 /**
4160  * @brief Get field status from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
4161  * @param event packet
4162  * @return status
4163  * @note: btstack_type 1
4164  */
4165 static inline uint8_t hfp_subevent_subscriber_number_information_get_status(const uint8_t * event){
4166     return event[3];
4167 }
4168 /**
4169  * @brief Get field bnip_type from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
4170  * @param event packet
4171  * @return bnip_type
4172  * @note: btstack_type 1
4173  */
4174 static inline uint8_t hfp_subevent_subscriber_number_information_get_bnip_type(const uint8_t * event){
4175     return event[4];
4176 }
4177 /**
4178  * @brief Get field bnip_number from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
4179  * @param event packet
4180  * @return bnip_number
4181  * @note: btstack_type T
4182  */
4183 static inline const char * hfp_subevent_subscriber_number_information_get_bnip_number(const uint8_t * event){
4184     return (const char *) &event[5];
4185 }
4186 
4187 /**
4188  * @brief Get field value from event HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS
4189  * @param event packet
4190  * @return value
4191  * @note: btstack_type T
4192  */
4193 static inline const char * hfp_subevent_response_and_hold_status_get_value(const uint8_t * event){
4194     return (const char *) &event[3];
4195 }
4196 
4197 #ifdef ENABLE_BLE
4198 /**
4199  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_CONNECTED
4200  * @param event packet
4201  * @return handle
4202  * @note: btstack_type H
4203  */
4204 static inline hci_con_handle_t ancs_subevent_client_connected_get_handle(const uint8_t * event){
4205     return little_endian_read_16(event, 3);
4206 }
4207 #endif
4208 
4209 #ifdef ENABLE_BLE
4210 /**
4211  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
4212  * @param event packet
4213  * @return handle
4214  * @note: btstack_type H
4215  */
4216 static inline hci_con_handle_t ancs_subevent_client_notification_get_handle(const uint8_t * event){
4217     return little_endian_read_16(event, 3);
4218 }
4219 /**
4220  * @brief Get field attribute_id from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
4221  * @param event packet
4222  * @return attribute_id
4223  * @note: btstack_type 2
4224  */
4225 static inline uint16_t ancs_subevent_client_notification_get_attribute_id(const uint8_t * event){
4226     return little_endian_read_16(event, 5);
4227 }
4228 /**
4229  * @brief Get field text from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
4230  * @param event packet
4231  * @return text
4232  * @note: btstack_type T
4233  */
4234 static inline const char * ancs_subevent_client_notification_get_text(const uint8_t * event){
4235     return (const char *) &event[7];
4236 }
4237 #endif
4238 
4239 #ifdef ENABLE_BLE
4240 /**
4241  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_DISCONNECTED
4242  * @param event packet
4243  * @return handle
4244  * @note: btstack_type H
4245  */
4246 static inline hci_con_handle_t ancs_subevent_client_disconnected_get_handle(const uint8_t * event){
4247     return little_endian_read_16(event, 3);
4248 }
4249 #endif
4250 
4251 /**
4252  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
4253  * @param event packet
4254  * @return avdtp_cid
4255  * @note: btstack_type 2
4256  */
4257 static inline uint16_t avdtp_subevent_signaling_accept_get_avdtp_cid(const uint8_t * event){
4258     return little_endian_read_16(event, 3);
4259 }
4260 /**
4261  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
4262  * @param event packet
4263  * @return local_seid
4264  * @note: btstack_type 1
4265  */
4266 static inline uint8_t avdtp_subevent_signaling_accept_get_local_seid(const uint8_t * event){
4267     return event[5];
4268 }
4269 /**
4270  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
4271  * @param event packet
4272  * @return is_initiator
4273  * @note: btstack_type 1
4274  */
4275 static inline uint8_t avdtp_subevent_signaling_accept_get_is_initiator(const uint8_t * event){
4276     return event[6];
4277 }
4278 /**
4279  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
4280  * @param event packet
4281  * @return signal_identifier
4282  * @note: btstack_type 1
4283  */
4284 static inline uint8_t avdtp_subevent_signaling_accept_get_signal_identifier(const uint8_t * event){
4285     return event[7];
4286 }
4287 
4288 /**
4289  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_REJECT
4290  * @param event packet
4291  * @return avdtp_cid
4292  * @note: btstack_type 2
4293  */
4294 static inline uint16_t avdtp_subevent_signaling_reject_get_avdtp_cid(const uint8_t * event){
4295     return little_endian_read_16(event, 3);
4296 }
4297 /**
4298  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_REJECT
4299  * @param event packet
4300  * @return local_seid
4301  * @note: btstack_type 1
4302  */
4303 static inline uint8_t avdtp_subevent_signaling_reject_get_local_seid(const uint8_t * event){
4304     return event[5];
4305 }
4306 /**
4307  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_REJECT
4308  * @param event packet
4309  * @return is_initiator
4310  * @note: btstack_type 1
4311  */
4312 static inline uint8_t avdtp_subevent_signaling_reject_get_is_initiator(const uint8_t * event){
4313     return event[6];
4314 }
4315 /**
4316  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_REJECT
4317  * @param event packet
4318  * @return signal_identifier
4319  * @note: btstack_type 1
4320  */
4321 static inline uint8_t avdtp_subevent_signaling_reject_get_signal_identifier(const uint8_t * event){
4322     return event[7];
4323 }
4324 
4325 /**
4326  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
4327  * @param event packet
4328  * @return avdtp_cid
4329  * @note: btstack_type 2
4330  */
4331 static inline uint16_t avdtp_subevent_signaling_general_reject_get_avdtp_cid(const uint8_t * event){
4332     return little_endian_read_16(event, 3);
4333 }
4334 /**
4335  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
4336  * @param event packet
4337  * @return local_seid
4338  * @note: btstack_type 1
4339  */
4340 static inline uint8_t avdtp_subevent_signaling_general_reject_get_local_seid(const uint8_t * event){
4341     return event[5];
4342 }
4343 /**
4344  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
4345  * @param event packet
4346  * @return is_initiator
4347  * @note: btstack_type 1
4348  */
4349 static inline uint8_t avdtp_subevent_signaling_general_reject_get_is_initiator(const uint8_t * event){
4350     return event[6];
4351 }
4352 /**
4353  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
4354  * @param event packet
4355  * @return signal_identifier
4356  * @note: btstack_type 1
4357  */
4358 static inline uint8_t avdtp_subevent_signaling_general_reject_get_signal_identifier(const uint8_t * event){
4359     return event[7];
4360 }
4361 
4362 /**
4363  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
4364  * @param event packet
4365  * @return avdtp_cid
4366  * @note: btstack_type 2
4367  */
4368 static inline uint16_t avdtp_subevent_signaling_connection_established_get_avdtp_cid(const uint8_t * event){
4369     return little_endian_read_16(event, 3);
4370 }
4371 /**
4372  * @brief Get field bd_addr from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
4373  * @param event packet
4374  * @param Pointer to storage for bd_addr
4375  * @note: btstack_type B
4376  */
4377 static inline void avdtp_subevent_signaling_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
4378     reverse_bytes(&event[5], bd_addr, 6);
4379 }
4380 /**
4381  * @brief Get field status from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
4382  * @param event packet
4383  * @return status
4384  * @note: btstack_type 1
4385  */
4386 static inline uint8_t avdtp_subevent_signaling_connection_established_get_status(const uint8_t * event){
4387     return event[11];
4388 }
4389 
4390 /**
4391  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED
4392  * @param event packet
4393  * @return avdtp_cid
4394  * @note: btstack_type 2
4395  */
4396 static inline uint16_t avdtp_subevent_signaling_connection_released_get_avdtp_cid(const uint8_t * event){
4397     return little_endian_read_16(event, 3);
4398 }
4399 
4400 /**
4401  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
4402  * @param event packet
4403  * @return avdtp_cid
4404  * @note: btstack_type 2
4405  */
4406 static inline uint16_t avdtp_subevent_signaling_sep_found_get_avdtp_cid(const uint8_t * event){
4407     return little_endian_read_16(event, 3);
4408 }
4409 /**
4410  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
4411  * @param event packet
4412  * @return remote_seid
4413  * @note: btstack_type 1
4414  */
4415 static inline uint8_t avdtp_subevent_signaling_sep_found_get_remote_seid(const uint8_t * event){
4416     return event[5];
4417 }
4418 /**
4419  * @brief Get field in_use from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
4420  * @param event packet
4421  * @return in_use
4422  * @note: btstack_type 1
4423  */
4424 static inline uint8_t avdtp_subevent_signaling_sep_found_get_in_use(const uint8_t * event){
4425     return event[6];
4426 }
4427 /**
4428  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
4429  * @param event packet
4430  * @return media_type
4431  * @note: btstack_type 1
4432  */
4433 static inline uint8_t avdtp_subevent_signaling_sep_found_get_media_type(const uint8_t * event){
4434     return event[7];
4435 }
4436 /**
4437  * @brief Get field sep_type from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
4438  * @param event packet
4439  * @return sep_type
4440  * @note: btstack_type 1
4441  */
4442 static inline uint8_t avdtp_subevent_signaling_sep_found_get_sep_type(const uint8_t * event){
4443     return event[8];
4444 }
4445 
4446 /**
4447  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4448  * @param event packet
4449  * @return avdtp_cid
4450  * @note: btstack_type 2
4451  */
4452 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_capability_get_avdtp_cid(const uint8_t * event){
4453     return little_endian_read_16(event, 3);
4454 }
4455 /**
4456  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4457  * @param event packet
4458  * @return local_seid
4459  * @note: btstack_type 1
4460  */
4461 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_local_seid(const uint8_t * event){
4462     return event[5];
4463 }
4464 /**
4465  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4466  * @param event packet
4467  * @return remote_seid
4468  * @note: btstack_type 1
4469  */
4470 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_remote_seid(const uint8_t * event){
4471     return event[6];
4472 }
4473 /**
4474  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4475  * @param event packet
4476  * @return media_type
4477  * @note: btstack_type 1
4478  */
4479 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_media_type(const uint8_t * event){
4480     return event[7];
4481 }
4482 /**
4483  * @brief Get field sampling_frequency_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4484  * @param event packet
4485  * @return sampling_frequency_bitmap
4486  * @note: btstack_type 1
4487  */
4488 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_sampling_frequency_bitmap(const uint8_t * event){
4489     return event[8];
4490 }
4491 /**
4492  * @brief Get field channel_mode_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4493  * @param event packet
4494  * @return channel_mode_bitmap
4495  * @note: btstack_type 1
4496  */
4497 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_channel_mode_bitmap(const uint8_t * event){
4498     return event[9];
4499 }
4500 /**
4501  * @brief Get field block_length_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4502  * @param event packet
4503  * @return block_length_bitmap
4504  * @note: btstack_type 1
4505  */
4506 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_block_length_bitmap(const uint8_t * event){
4507     return event[10];
4508 }
4509 /**
4510  * @brief Get field subbands_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4511  * @param event packet
4512  * @return subbands_bitmap
4513  * @note: btstack_type 1
4514  */
4515 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_subbands_bitmap(const uint8_t * event){
4516     return event[11];
4517 }
4518 /**
4519  * @brief Get field allocation_method_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4520  * @param event packet
4521  * @return allocation_method_bitmap
4522  * @note: btstack_type 1
4523  */
4524 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_allocation_method_bitmap(const uint8_t * event){
4525     return event[12];
4526 }
4527 /**
4528  * @brief Get field min_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4529  * @param event packet
4530  * @return min_bitpool_value
4531  * @note: btstack_type 1
4532  */
4533 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_min_bitpool_value(const uint8_t * event){
4534     return event[13];
4535 }
4536 /**
4537  * @brief Get field max_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
4538  * @param event packet
4539  * @return max_bitpool_value
4540  * @note: btstack_type 1
4541  */
4542 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_max_bitpool_value(const uint8_t * event){
4543     return event[14];
4544 }
4545 
4546 /**
4547  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4548  * @param event packet
4549  * @return avdtp_cid
4550  * @note: btstack_type 2
4551  */
4552 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_avdtp_cid(const uint8_t * event){
4553     return little_endian_read_16(event, 3);
4554 }
4555 /**
4556  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4557  * @param event packet
4558  * @return local_seid
4559  * @note: btstack_type 1
4560  */
4561 static inline uint8_t avdtp_subevent_signaling_media_codec_other_capability_get_local_seid(const uint8_t * event){
4562     return event[5];
4563 }
4564 /**
4565  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4566  * @param event packet
4567  * @return remote_seid
4568  * @note: btstack_type 1
4569  */
4570 static inline uint8_t avdtp_subevent_signaling_media_codec_other_capability_get_remote_seid(const uint8_t * event){
4571     return event[6];
4572 }
4573 /**
4574  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4575  * @param event packet
4576  * @return media_type
4577  * @note: btstack_type 1
4578  */
4579 static inline uint8_t avdtp_subevent_signaling_media_codec_other_capability_get_media_type(const uint8_t * event){
4580     return event[7];
4581 }
4582 /**
4583  * @brief Get field media_codec_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4584  * @param event packet
4585  * @return media_codec_type
4586  * @note: btstack_type 2
4587  */
4588 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_type(const uint8_t * event){
4589     return little_endian_read_16(event, 8);
4590 }
4591 /**
4592  * @brief Get field media_codec_information_len from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4593  * @param event packet
4594  * @return media_codec_information_len
4595  * @note: btstack_type L
4596  */
4597 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_information_len(const uint8_t * event){
4598     return little_endian_read_16(event, 10);
4599 }
4600 /**
4601  * @brief Get field media_codec_information from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
4602  * @param event packet
4603  * @return media_codec_information
4604  * @note: btstack_type V
4605  */
4606 static inline const uint8_t * avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_information(const uint8_t * event){
4607     return &event[12];
4608 }
4609 
4610 /**
4611  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY
4612  * @param event packet
4613  * @return avdtp_cid
4614  * @note: btstack_type 2
4615  */
4616 static inline uint16_t avdtp_subevent_signaling_media_transport_capability_get_avdtp_cid(const uint8_t * event){
4617     return little_endian_read_16(event, 3);
4618 }
4619 /**
4620  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY
4621  * @param event packet
4622  * @return local_seid
4623  * @note: btstack_type 1
4624  */
4625 static inline uint8_t avdtp_subevent_signaling_media_transport_capability_get_local_seid(const uint8_t * event){
4626     return event[5];
4627 }
4628 /**
4629  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY
4630  * @param event packet
4631  * @return remote_seid
4632  * @note: btstack_type 1
4633  */
4634 static inline uint8_t avdtp_subevent_signaling_media_transport_capability_get_remote_seid(const uint8_t * event){
4635     return event[6];
4636 }
4637 
4638 /**
4639  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY
4640  * @param event packet
4641  * @return avdtp_cid
4642  * @note: btstack_type 2
4643  */
4644 static inline uint16_t avdtp_subevent_signaling_reporting_capability_get_avdtp_cid(const uint8_t * event){
4645     return little_endian_read_16(event, 3);
4646 }
4647 /**
4648  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY
4649  * @param event packet
4650  * @return local_seid
4651  * @note: btstack_type 1
4652  */
4653 static inline uint8_t avdtp_subevent_signaling_reporting_capability_get_local_seid(const uint8_t * event){
4654     return event[5];
4655 }
4656 /**
4657  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY
4658  * @param event packet
4659  * @return remote_seid
4660  * @note: btstack_type 1
4661  */
4662 static inline uint8_t avdtp_subevent_signaling_reporting_capability_get_remote_seid(const uint8_t * event){
4663     return event[6];
4664 }
4665 
4666 /**
4667  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4668  * @param event packet
4669  * @return avdtp_cid
4670  * @note: btstack_type 2
4671  */
4672 static inline uint16_t avdtp_subevent_signaling_recovery_capability_get_avdtp_cid(const uint8_t * event){
4673     return little_endian_read_16(event, 3);
4674 }
4675 /**
4676  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4677  * @param event packet
4678  * @return local_seid
4679  * @note: btstack_type 1
4680  */
4681 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_local_seid(const uint8_t * event){
4682     return event[5];
4683 }
4684 /**
4685  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4686  * @param event packet
4687  * @return remote_seid
4688  * @note: btstack_type 1
4689  */
4690 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_remote_seid(const uint8_t * event){
4691     return event[6];
4692 }
4693 /**
4694  * @brief Get field recovery_type from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4695  * @param event packet
4696  * @return recovery_type
4697  * @note: btstack_type 1
4698  */
4699 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_recovery_type(const uint8_t * event){
4700     return event[7];
4701 }
4702 /**
4703  * @brief Get field maximum_recovery_window_size from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4704  * @param event packet
4705  * @return maximum_recovery_window_size
4706  * @note: btstack_type 1
4707  */
4708 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_maximum_recovery_window_size(const uint8_t * event){
4709     return event[8];
4710 }
4711 /**
4712  * @brief Get field maximum_number_media_packets from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
4713  * @param event packet
4714  * @return maximum_number_media_packets
4715  * @note: btstack_type 1
4716  */
4717 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_maximum_number_media_packets(const uint8_t * event){
4718     return event[9];
4719 }
4720 
4721 /**
4722  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4723  * @param event packet
4724  * @return avdtp_cid
4725  * @note: btstack_type 2
4726  */
4727 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_avdtp_cid(const uint8_t * event){
4728     return little_endian_read_16(event, 3);
4729 }
4730 /**
4731  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4732  * @param event packet
4733  * @return local_seid
4734  * @note: btstack_type 1
4735  */
4736 static inline uint8_t avdtp_subevent_signaling_content_protection_capability_get_local_seid(const uint8_t * event){
4737     return event[5];
4738 }
4739 /**
4740  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4741  * @param event packet
4742  * @return remote_seid
4743  * @note: btstack_type 1
4744  */
4745 static inline uint8_t avdtp_subevent_signaling_content_protection_capability_get_remote_seid(const uint8_t * event){
4746     return event[6];
4747 }
4748 /**
4749  * @brief Get field cp_type from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4750  * @param event packet
4751  * @return cp_type
4752  * @note: btstack_type 2
4753  */
4754 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_cp_type(const uint8_t * event){
4755     return little_endian_read_16(event, 7);
4756 }
4757 /**
4758  * @brief Get field cp_type_value_len from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4759  * @param event packet
4760  * @return cp_type_value_len
4761  * @note: btstack_type L
4762  */
4763 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_cp_type_value_len(const uint8_t * event){
4764     return little_endian_read_16(event, 9);
4765 }
4766 /**
4767  * @brief Get field cp_type_value from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
4768  * @param event packet
4769  * @return cp_type_value
4770  * @note: btstack_type V
4771  */
4772 static inline const uint8_t * avdtp_subevent_signaling_content_protection_capability_get_cp_type_value(const uint8_t * event){
4773     return &event[11];
4774 }
4775 
4776 /**
4777  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4778  * @param event packet
4779  * @return avdtp_cid
4780  * @note: btstack_type 2
4781  */
4782 static inline uint16_t avdtp_subevent_signaling_multiplexing_capability_get_avdtp_cid(const uint8_t * event){
4783     return little_endian_read_16(event, 3);
4784 }
4785 /**
4786  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4787  * @param event packet
4788  * @return local_seid
4789  * @note: btstack_type 1
4790  */
4791 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_local_seid(const uint8_t * event){
4792     return event[5];
4793 }
4794 /**
4795  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4796  * @param event packet
4797  * @return remote_seid
4798  * @note: btstack_type 1
4799  */
4800 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_remote_seid(const uint8_t * event){
4801     return event[6];
4802 }
4803 /**
4804  * @brief Get field fragmentation from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4805  * @param event packet
4806  * @return fragmentation
4807  * @note: btstack_type 1
4808  */
4809 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_fragmentation(const uint8_t * event){
4810     return event[7];
4811 }
4812 /**
4813  * @brief Get field transport_identifiers_num from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4814  * @param event packet
4815  * @return transport_identifiers_num
4816  * @note: btstack_type 1
4817  */
4818 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_identifiers_num(const uint8_t * event){
4819     return event[8];
4820 }
4821 /**
4822  * @brief Get field transport_session_identifier_1 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4823  * @param event packet
4824  * @return transport_session_identifier_1
4825  * @note: btstack_type 1
4826  */
4827 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_1(const uint8_t * event){
4828     return event[9];
4829 }
4830 /**
4831  * @brief Get field transport_session_identifier_2 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4832  * @param event packet
4833  * @return transport_session_identifier_2
4834  * @note: btstack_type 1
4835  */
4836 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_2(const uint8_t * event){
4837     return event[10];
4838 }
4839 /**
4840  * @brief Get field transport_session_identifier_3 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4841  * @param event packet
4842  * @return transport_session_identifier_3
4843  * @note: btstack_type 1
4844  */
4845 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_3(const uint8_t * event){
4846     return event[11];
4847 }
4848 /**
4849  * @brief Get field tcid_1 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4850  * @param event packet
4851  * @return tcid_1
4852  * @note: btstack_type 1
4853  */
4854 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_1(const uint8_t * event){
4855     return event[12];
4856 }
4857 /**
4858  * @brief Get field tcid_2 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4859  * @param event packet
4860  * @return tcid_2
4861  * @note: btstack_type 1
4862  */
4863 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_2(const uint8_t * event){
4864     return event[13];
4865 }
4866 /**
4867  * @brief Get field tcid_3 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
4868  * @param event packet
4869  * @return tcid_3
4870  * @note: btstack_type 1
4871  */
4872 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_3(const uint8_t * event){
4873     return event[14];
4874 }
4875 
4876 /**
4877  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
4878  * @param event packet
4879  * @return avdtp_cid
4880  * @note: btstack_type 2
4881  */
4882 static inline uint16_t avdtp_subevent_signaling_delay_reporting_capability_get_avdtp_cid(const uint8_t * event){
4883     return little_endian_read_16(event, 3);
4884 }
4885 /**
4886  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
4887  * @param event packet
4888  * @return local_seid
4889  * @note: btstack_type 1
4890  */
4891 static inline uint8_t avdtp_subevent_signaling_delay_reporting_capability_get_local_seid(const uint8_t * event){
4892     return event[5];
4893 }
4894 /**
4895  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
4896  * @param event packet
4897  * @return remote_seid
4898  * @note: btstack_type 1
4899  */
4900 static inline uint8_t avdtp_subevent_signaling_delay_reporting_capability_get_remote_seid(const uint8_t * event){
4901     return event[6];
4902 }
4903 
4904 /**
4905  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4906  * @param event packet
4907  * @return avdtp_cid
4908  * @note: btstack_type 2
4909  */
4910 static inline uint16_t avdtp_subevent_signaling_header_compression_capability_get_avdtp_cid(const uint8_t * event){
4911     return little_endian_read_16(event, 3);
4912 }
4913 /**
4914  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4915  * @param event packet
4916  * @return local_seid
4917  * @note: btstack_type 1
4918  */
4919 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_local_seid(const uint8_t * event){
4920     return event[5];
4921 }
4922 /**
4923  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4924  * @param event packet
4925  * @return remote_seid
4926  * @note: btstack_type 1
4927  */
4928 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_remote_seid(const uint8_t * event){
4929     return event[6];
4930 }
4931 /**
4932  * @brief Get field back_ch from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4933  * @param event packet
4934  * @return back_ch
4935  * @note: btstack_type 1
4936  */
4937 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_back_ch(const uint8_t * event){
4938     return event[7];
4939 }
4940 /**
4941  * @brief Get field media from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4942  * @param event packet
4943  * @return media
4944  * @note: btstack_type 1
4945  */
4946 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_media(const uint8_t * event){
4947     return event[8];
4948 }
4949 /**
4950  * @brief Get field recovery from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
4951  * @param event packet
4952  * @return recovery
4953  * @note: btstack_type 1
4954  */
4955 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_recovery(const uint8_t * event){
4956     return event[9];
4957 }
4958 
4959 /**
4960  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
4961  * @param event packet
4962  * @return avdtp_cid
4963  * @note: btstack_type 2
4964  */
4965 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_avdtp_cid(const uint8_t * event){
4966     return little_endian_read_16(event, 3);
4967 }
4968 /**
4969  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
4970  * @param event packet
4971  * @return local_seid
4972  * @note: btstack_type 1
4973  */
4974 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_local_seid(const uint8_t * event){
4975     return event[5];
4976 }
4977 /**
4978  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
4979  * @param event packet
4980  * @return remote_seid
4981  * @note: btstack_type 1
4982  */
4983 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_remote_seid(const uint8_t * event){
4984     return event[6];
4985 }
4986 /**
4987  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
4988  * @param event packet
4989  * @return reconfigure
4990  * @note: btstack_type 1
4991  */
4992 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_reconfigure(const uint8_t * event){
4993     return event[7];
4994 }
4995 /**
4996  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
4997  * @param event packet
4998  * @return media_type
4999  * @note: btstack_type 1
5000  */
5001 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_media_type(const uint8_t * event){
5002     return event[8];
5003 }
5004 /**
5005  * @brief Get field sampling_frequency from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5006  * @param event packet
5007  * @return sampling_frequency
5008  * @note: btstack_type 2
5009  */
5010 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_sampling_frequency(const uint8_t * event){
5011     return little_endian_read_16(event, 9);
5012 }
5013 /**
5014  * @brief Get field channel_mode from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5015  * @param event packet
5016  * @return channel_mode
5017  * @note: btstack_type 1
5018  */
5019 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_channel_mode(const uint8_t * event){
5020     return event[11];
5021 }
5022 /**
5023  * @brief Get field num_channels from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5024  * @param event packet
5025  * @return num_channels
5026  * @note: btstack_type 1
5027  */
5028 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_num_channels(const uint8_t * event){
5029     return event[12];
5030 }
5031 /**
5032  * @brief Get field block_length from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5033  * @param event packet
5034  * @return block_length
5035  * @note: btstack_type 1
5036  */
5037 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_block_length(const uint8_t * event){
5038     return event[13];
5039 }
5040 /**
5041  * @brief Get field subbands from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5042  * @param event packet
5043  * @return subbands
5044  * @note: btstack_type 1
5045  */
5046 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_subbands(const uint8_t * event){
5047     return event[14];
5048 }
5049 /**
5050  * @brief Get field allocation_method from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5051  * @param event packet
5052  * @return allocation_method
5053  * @note: btstack_type 1
5054  */
5055 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_allocation_method(const uint8_t * event){
5056     return event[15];
5057 }
5058 /**
5059  * @brief Get field min_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5060  * @param event packet
5061  * @return min_bitpool_value
5062  * @note: btstack_type 1
5063  */
5064 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_min_bitpool_value(const uint8_t * event){
5065     return event[16];
5066 }
5067 /**
5068  * @brief Get field max_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5069  * @param event packet
5070  * @return max_bitpool_value
5071  * @note: btstack_type 1
5072  */
5073 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_max_bitpool_value(const uint8_t * event){
5074     return event[17];
5075 }
5076 
5077 /**
5078  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5079  * @param event packet
5080  * @return avdtp_cid
5081  * @note: btstack_type 2
5082  */
5083 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_avdtp_cid(const uint8_t * event){
5084     return little_endian_read_16(event, 3);
5085 }
5086 /**
5087  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5088  * @param event packet
5089  * @return local_seid
5090  * @note: btstack_type 1
5091  */
5092 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_local_seid(const uint8_t * event){
5093     return event[5];
5094 }
5095 /**
5096  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5097  * @param event packet
5098  * @return remote_seid
5099  * @note: btstack_type 1
5100  */
5101 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_remote_seid(const uint8_t * event){
5102     return event[6];
5103 }
5104 /**
5105  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5106  * @param event packet
5107  * @return reconfigure
5108  * @note: btstack_type 1
5109  */
5110 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_reconfigure(const uint8_t * event){
5111     return event[7];
5112 }
5113 /**
5114  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5115  * @param event packet
5116  * @return media_type
5117  * @note: btstack_type 1
5118  */
5119 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_type(const uint8_t * event){
5120     return event[8];
5121 }
5122 /**
5123  * @brief Get field media_codec_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5124  * @param event packet
5125  * @return media_codec_type
5126  * @note: btstack_type 2
5127  */
5128 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_type(const uint8_t * event){
5129     return little_endian_read_16(event, 9);
5130 }
5131 /**
5132  * @brief Get field media_codec_information_len from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5133  * @param event packet
5134  * @return media_codec_information_len
5135  * @note: btstack_type L
5136  */
5137 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_information_len(const uint8_t * event){
5138     return little_endian_read_16(event, 11);
5139 }
5140 /**
5141  * @brief Get field media_codec_information from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5142  * @param event packet
5143  * @return media_codec_information
5144  * @note: btstack_type V
5145  */
5146 static inline const uint8_t * avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_information(const uint8_t * event){
5147     return &event[13];
5148 }
5149 
5150 /**
5151  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
5152  * @param event packet
5153  * @return avdtp_cid
5154  * @note: btstack_type 2
5155  */
5156 static inline uint16_t avdtp_subevent_streaming_connection_established_get_avdtp_cid(const uint8_t * event){
5157     return little_endian_read_16(event, 3);
5158 }
5159 /**
5160  * @brief Get field bd_addr from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
5161  * @param event packet
5162  * @param Pointer to storage for bd_addr
5163  * @note: btstack_type B
5164  */
5165 static inline void avdtp_subevent_streaming_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5166     reverse_bytes(&event[5], bd_addr, 6);
5167 }
5168 /**
5169  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
5170  * @param event packet
5171  * @return local_seid
5172  * @note: btstack_type 1
5173  */
5174 static inline uint8_t avdtp_subevent_streaming_connection_established_get_local_seid(const uint8_t * event){
5175     return event[11];
5176 }
5177 /**
5178  * @brief Get field remote_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
5179  * @param event packet
5180  * @return remote_seid
5181  * @note: btstack_type 1
5182  */
5183 static inline uint8_t avdtp_subevent_streaming_connection_established_get_remote_seid(const uint8_t * event){
5184     return event[12];
5185 }
5186 /**
5187  * @brief Get field status from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
5188  * @param event packet
5189  * @return status
5190  * @note: btstack_type 1
5191  */
5192 static inline uint8_t avdtp_subevent_streaming_connection_established_get_status(const uint8_t * event){
5193     return event[13];
5194 }
5195 
5196 /**
5197  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED
5198  * @param event packet
5199  * @return avdtp_cid
5200  * @note: btstack_type 2
5201  */
5202 static inline uint16_t avdtp_subevent_streaming_connection_released_get_avdtp_cid(const uint8_t * event){
5203     return little_endian_read_16(event, 3);
5204 }
5205 /**
5206  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED
5207  * @param event packet
5208  * @return local_seid
5209  * @note: btstack_type 1
5210  */
5211 static inline uint8_t avdtp_subevent_streaming_connection_released_get_local_seid(const uint8_t * event){
5212     return event[5];
5213 }
5214 
5215 /**
5216  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
5217  * @param event packet
5218  * @return avdtp_cid
5219  * @note: btstack_type 2
5220  */
5221 static inline uint16_t avdtp_subevent_streaming_can_send_media_packet_now_get_avdtp_cid(const uint8_t * event){
5222     return little_endian_read_16(event, 3);
5223 }
5224 /**
5225  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
5226  * @param event packet
5227  * @return local_seid
5228  * @note: btstack_type 1
5229  */
5230 static inline uint8_t avdtp_subevent_streaming_can_send_media_packet_now_get_local_seid(const uint8_t * event){
5231     return event[5];
5232 }
5233 /**
5234  * @brief Get field sequence_number from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
5235  * @param event packet
5236  * @return sequence_number
5237  * @note: btstack_type 2
5238  */
5239 static inline uint16_t avdtp_subevent_streaming_can_send_media_packet_now_get_sequence_number(const uint8_t * event){
5240     return little_endian_read_16(event, 6);
5241 }
5242 
5243 /**
5244  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5245  * @param event packet
5246  * @return avdtp_cid
5247  * @note: btstack_type 2
5248  */
5249 static inline uint16_t avdtp_subevent_signaling_capabilities_done_get_avdtp_cid(const uint8_t * event){
5250     return little_endian_read_16(event, 3);
5251 }
5252 /**
5253  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5254  * @param event packet
5255  * @return local_seid
5256  * @note: btstack_type 1
5257  */
5258 static inline uint8_t avdtp_subevent_signaling_capabilities_done_get_local_seid(const uint8_t * event){
5259     return event[5];
5260 }
5261 /**
5262  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5263  * @param event packet
5264  * @return remote_seid
5265  * @note: btstack_type 1
5266  */
5267 static inline uint8_t avdtp_subevent_signaling_capabilities_done_get_remote_seid(const uint8_t * event){
5268     return event[6];
5269 }
5270 
5271 /**
5272  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE
5273  * @param event packet
5274  * @return avdtp_cid
5275  * @note: btstack_type 2
5276  */
5277 static inline uint16_t avdtp_subevent_signaling_sep_dicovery_done_get_avdtp_cid(const uint8_t * event){
5278     return little_endian_read_16(event, 3);
5279 }
5280 
5281 /**
5282  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
5283  * @param event packet
5284  * @return avdtp_cid
5285  * @note: btstack_type 2
5286  */
5287 static inline uint16_t avdtp_subevent_signaling_delay_report_get_avdtp_cid(const uint8_t * event){
5288     return little_endian_read_16(event, 3);
5289 }
5290 /**
5291  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
5292  * @param event packet
5293  * @return local_seid
5294  * @note: btstack_type 1
5295  */
5296 static inline uint8_t avdtp_subevent_signaling_delay_report_get_local_seid(const uint8_t * event){
5297     return event[5];
5298 }
5299 /**
5300  * @brief Get field delay_100us from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
5301  * @param event packet
5302  * @return delay_100us
5303  * @note: btstack_type 2
5304  */
5305 static inline uint16_t avdtp_subevent_signaling_delay_report_get_delay_100us(const uint8_t * event){
5306     return little_endian_read_16(event, 6);
5307 }
5308 
5309 /**
5310  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
5311  * @param event packet
5312  * @return a2dp_cid
5313  * @note: btstack_type 2
5314  */
5315 static inline uint16_t a2dp_subevent_streaming_can_send_media_packet_now_get_a2dp_cid(const uint8_t * event){
5316     return little_endian_read_16(event, 3);
5317 }
5318 /**
5319  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
5320  * @param event packet
5321  * @return local_seid
5322  * @note: btstack_type 1
5323  */
5324 static inline uint8_t a2dp_subevent_streaming_can_send_media_packet_now_get_local_seid(const uint8_t * event){
5325     return event[5];
5326 }
5327 
5328 /**
5329  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5330  * @param event packet
5331  * @return a2dp_cid
5332  * @note: btstack_type 2
5333  */
5334 static inline uint16_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_a2dp_cid(const uint8_t * event){
5335     return little_endian_read_16(event, 3);
5336 }
5337 /**
5338  * @brief Get field int_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5339  * @param event packet
5340  * @return int_seid
5341  * @note: btstack_type 1
5342  */
5343 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_int_seid(const uint8_t * event){
5344     return event[5];
5345 }
5346 /**
5347  * @brief Get field acp_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5348  * @param event packet
5349  * @return acp_seid
5350  * @note: btstack_type 1
5351  */
5352 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_acp_seid(const uint8_t * event){
5353     return event[6];
5354 }
5355 /**
5356  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5357  * @param event packet
5358  * @return reconfigure
5359  * @note: btstack_type 1
5360  */
5361 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_reconfigure(const uint8_t * event){
5362     return event[7];
5363 }
5364 /**
5365  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5366  * @param event packet
5367  * @return media_type
5368  * @note: btstack_type 1
5369  */
5370 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_media_type(const uint8_t * event){
5371     return event[8];
5372 }
5373 /**
5374  * @brief Get field sampling_frequency from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5375  * @param event packet
5376  * @return sampling_frequency
5377  * @note: btstack_type 2
5378  */
5379 static inline uint16_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_sampling_frequency(const uint8_t * event){
5380     return little_endian_read_16(event, 9);
5381 }
5382 /**
5383  * @brief Get field channel_mode from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5384  * @param event packet
5385  * @return channel_mode
5386  * @note: btstack_type 1
5387  */
5388 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_channel_mode(const uint8_t * event){
5389     return event[11];
5390 }
5391 /**
5392  * @brief Get field num_channels from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5393  * @param event packet
5394  * @return num_channels
5395  * @note: btstack_type 1
5396  */
5397 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_num_channels(const uint8_t * event){
5398     return event[12];
5399 }
5400 /**
5401  * @brief Get field block_length from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5402  * @param event packet
5403  * @return block_length
5404  * @note: btstack_type 1
5405  */
5406 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_block_length(const uint8_t * event){
5407     return event[13];
5408 }
5409 /**
5410  * @brief Get field subbands from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5411  * @param event packet
5412  * @return subbands
5413  * @note: btstack_type 1
5414  */
5415 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_subbands(const uint8_t * event){
5416     return event[14];
5417 }
5418 /**
5419  * @brief Get field allocation_method from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5420  * @param event packet
5421  * @return allocation_method
5422  * @note: btstack_type 1
5423  */
5424 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_allocation_method(const uint8_t * event){
5425     return event[15];
5426 }
5427 /**
5428  * @brief Get field min_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5429  * @param event packet
5430  * @return min_bitpool_value
5431  * @note: btstack_type 1
5432  */
5433 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_min_bitpool_value(const uint8_t * event){
5434     return event[16];
5435 }
5436 /**
5437  * @brief Get field max_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
5438  * @param event packet
5439  * @return max_bitpool_value
5440  * @note: btstack_type 1
5441  */
5442 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_max_bitpool_value(const uint8_t * event){
5443     return event[17];
5444 }
5445 
5446 /**
5447  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5448  * @param event packet
5449  * @return a2dp_cid
5450  * @note: btstack_type 2
5451  */
5452 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_a2dp_cid(const uint8_t * event){
5453     return little_endian_read_16(event, 3);
5454 }
5455 /**
5456  * @brief Get field int_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5457  * @param event packet
5458  * @return int_seid
5459  * @note: btstack_type 1
5460  */
5461 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_int_seid(const uint8_t * event){
5462     return event[5];
5463 }
5464 /**
5465  * @brief Get field acp_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5466  * @param event packet
5467  * @return acp_seid
5468  * @note: btstack_type 1
5469  */
5470 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_acp_seid(const uint8_t * event){
5471     return event[6];
5472 }
5473 /**
5474  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5475  * @param event packet
5476  * @return reconfigure
5477  * @note: btstack_type 1
5478  */
5479 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_reconfigure(const uint8_t * event){
5480     return event[7];
5481 }
5482 /**
5483  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5484  * @param event packet
5485  * @return media_type
5486  * @note: btstack_type 1
5487  */
5488 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_type(const uint8_t * event){
5489     return event[8];
5490 }
5491 /**
5492  * @brief Get field media_codec_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5493  * @param event packet
5494  * @return media_codec_type
5495  * @note: btstack_type 2
5496  */
5497 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_type(const uint8_t * event){
5498     return little_endian_read_16(event, 9);
5499 }
5500 /**
5501  * @brief Get field media_codec_information_len from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5502  * @param event packet
5503  * @return media_codec_information_len
5504  * @note: btstack_type L
5505  */
5506 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_information_len(const uint8_t * event){
5507     return little_endian_read_16(event, 11);
5508 }
5509 /**
5510  * @brief Get field media_codec_information from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
5511  * @param event packet
5512  * @return media_codec_information
5513  * @note: btstack_type V
5514  */
5515 static inline const uint8_t * a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_information(const uint8_t * event){
5516     return &event[13];
5517 }
5518 
5519 /**
5520  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
5521  * @param event packet
5522  * @return a2dp_cid
5523  * @note: btstack_type 2
5524  */
5525 static inline uint16_t a2dp_subevent_stream_established_get_a2dp_cid(const uint8_t * event){
5526     return little_endian_read_16(event, 3);
5527 }
5528 /**
5529  * @brief Get field bd_addr from event A2DP_SUBEVENT_STREAM_ESTABLISHED
5530  * @param event packet
5531  * @param Pointer to storage for bd_addr
5532  * @note: btstack_type B
5533  */
5534 static inline void a2dp_subevent_stream_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5535     reverse_bytes(&event[5], bd_addr, 6);
5536 }
5537 /**
5538  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
5539  * @param event packet
5540  * @return local_seid
5541  * @note: btstack_type 1
5542  */
5543 static inline uint8_t a2dp_subevent_stream_established_get_local_seid(const uint8_t * event){
5544     return event[11];
5545 }
5546 /**
5547  * @brief Get field remote_seid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
5548  * @param event packet
5549  * @return remote_seid
5550  * @note: btstack_type 1
5551  */
5552 static inline uint8_t a2dp_subevent_stream_established_get_remote_seid(const uint8_t * event){
5553     return event[12];
5554 }
5555 /**
5556  * @brief Get field status from event A2DP_SUBEVENT_STREAM_ESTABLISHED
5557  * @param event packet
5558  * @return status
5559  * @note: btstack_type 1
5560  */
5561 static inline uint8_t a2dp_subevent_stream_established_get_status(const uint8_t * event){
5562     return event[13];
5563 }
5564 
5565 /**
5566  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_STARTED
5567  * @param event packet
5568  * @return a2dp_cid
5569  * @note: btstack_type 2
5570  */
5571 static inline uint16_t a2dp_subevent_stream_started_get_a2dp_cid(const uint8_t * event){
5572     return little_endian_read_16(event, 3);
5573 }
5574 /**
5575  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_STARTED
5576  * @param event packet
5577  * @return local_seid
5578  * @note: btstack_type 1
5579  */
5580 static inline uint8_t a2dp_subevent_stream_started_get_local_seid(const uint8_t * event){
5581     return event[5];
5582 }
5583 
5584 /**
5585  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_SUSPENDED
5586  * @param event packet
5587  * @return a2dp_cid
5588  * @note: btstack_type 2
5589  */
5590 static inline uint16_t a2dp_subevent_stream_suspended_get_a2dp_cid(const uint8_t * event){
5591     return little_endian_read_16(event, 3);
5592 }
5593 /**
5594  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_SUSPENDED
5595  * @param event packet
5596  * @return local_seid
5597  * @note: btstack_type 1
5598  */
5599 static inline uint8_t a2dp_subevent_stream_suspended_get_local_seid(const uint8_t * event){
5600     return event[5];
5601 }
5602 
5603 /**
5604  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_STOPPED
5605  * @param event packet
5606  * @return a2dp_cid
5607  * @note: btstack_type 2
5608  */
5609 static inline uint16_t a2dp_subevent_stream_stopped_get_a2dp_cid(const uint8_t * event){
5610     return little_endian_read_16(event, 3);
5611 }
5612 /**
5613  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_STOPPED
5614  * @param event packet
5615  * @return local_seid
5616  * @note: btstack_type 1
5617  */
5618 static inline uint8_t a2dp_subevent_stream_stopped_get_local_seid(const uint8_t * event){
5619     return event[5];
5620 }
5621 
5622 /**
5623  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_RELEASED
5624  * @param event packet
5625  * @return a2dp_cid
5626  * @note: btstack_type 2
5627  */
5628 static inline uint16_t a2dp_subevent_stream_released_get_a2dp_cid(const uint8_t * event){
5629     return little_endian_read_16(event, 3);
5630 }
5631 /**
5632  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_RELEASED
5633  * @param event packet
5634  * @return local_seid
5635  * @note: btstack_type 1
5636  */
5637 static inline uint8_t a2dp_subevent_stream_released_get_local_seid(const uint8_t * event){
5638     return event[5];
5639 }
5640 
5641 /**
5642  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_COMMAND_ACCEPTED
5643  * @param event packet
5644  * @return a2dp_cid
5645  * @note: btstack_type 2
5646  */
5647 static inline uint16_t a2dp_subevent_command_accepted_get_a2dp_cid(const uint8_t * event){
5648     return little_endian_read_16(event, 3);
5649 }
5650 /**
5651  * @brief Get field local_seid from event A2DP_SUBEVENT_COMMAND_ACCEPTED
5652  * @param event packet
5653  * @return local_seid
5654  * @note: btstack_type 1
5655  */
5656 static inline uint8_t a2dp_subevent_command_accepted_get_local_seid(const uint8_t * event){
5657     return event[5];
5658 }
5659 /**
5660  * @brief Get field signal_identifier from event A2DP_SUBEVENT_COMMAND_ACCEPTED
5661  * @param event packet
5662  * @return signal_identifier
5663  * @note: btstack_type 1
5664  */
5665 static inline uint8_t a2dp_subevent_command_accepted_get_signal_identifier(const uint8_t * event){
5666     return event[6];
5667 }
5668 
5669 /**
5670  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_COMMAND_REJECTED
5671  * @param event packet
5672  * @return a2dp_cid
5673  * @note: btstack_type 2
5674  */
5675 static inline uint16_t a2dp_subevent_command_rejected_get_a2dp_cid(const uint8_t * event){
5676     return little_endian_read_16(event, 3);
5677 }
5678 /**
5679  * @brief Get field local_seid from event A2DP_SUBEVENT_COMMAND_REJECTED
5680  * @param event packet
5681  * @return local_seid
5682  * @note: btstack_type 1
5683  */
5684 static inline uint8_t a2dp_subevent_command_rejected_get_local_seid(const uint8_t * event){
5685     return event[5];
5686 }
5687 /**
5688  * @brief Get field signal_identifier from event A2DP_SUBEVENT_COMMAND_REJECTED
5689  * @param event packet
5690  * @return signal_identifier
5691  * @note: btstack_type 1
5692  */
5693 static inline uint8_t a2dp_subevent_command_rejected_get_signal_identifier(const uint8_t * event){
5694     return event[6];
5695 }
5696 
5697 /**
5698  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
5699  * @param event packet
5700  * @return a2dp_cid
5701  * @note: btstack_type 2
5702  */
5703 static inline uint16_t a2dp_subevent_signaling_connection_established_get_a2dp_cid(const uint8_t * event){
5704     return little_endian_read_16(event, 3);
5705 }
5706 /**
5707  * @brief Get field bd_addr from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
5708  * @param event packet
5709  * @param Pointer to storage for bd_addr
5710  * @note: btstack_type B
5711  */
5712 static inline void a2dp_subevent_signaling_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5713     reverse_bytes(&event[5], bd_addr, 6);
5714 }
5715 /**
5716  * @brief Get field status from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
5717  * @param event packet
5718  * @return status
5719  * @note: btstack_type 1
5720  */
5721 static inline uint8_t a2dp_subevent_signaling_connection_established_get_status(const uint8_t * event){
5722     return event[11];
5723 }
5724 
5725 /**
5726  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED
5727  * @param event packet
5728  * @return a2dp_cid
5729  * @note: btstack_type 2
5730  */
5731 static inline uint16_t a2dp_subevent_signaling_connection_released_get_a2dp_cid(const uint8_t * event){
5732     return little_endian_read_16(event, 3);
5733 }
5734 
5735 /**
5736  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_RECONFIGURED
5737  * @param event packet
5738  * @return a2dp_cid
5739  * @note: btstack_type 2
5740  */
5741 static inline uint16_t a2dp_subevent_stream_reconfigured_get_a2dp_cid(const uint8_t * event){
5742     return little_endian_read_16(event, 3);
5743 }
5744 /**
5745  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_RECONFIGURED
5746  * @param event packet
5747  * @return local_seid
5748  * @note: btstack_type 1
5749  */
5750 static inline uint8_t a2dp_subevent_stream_reconfigured_get_local_seid(const uint8_t * event){
5751     return event[5];
5752 }
5753 /**
5754  * @brief Get field status from event A2DP_SUBEVENT_STREAM_RECONFIGURED
5755  * @param event packet
5756  * @return status
5757  * @note: btstack_type 1
5758  */
5759 static inline uint8_t a2dp_subevent_stream_reconfigured_get_status(const uint8_t * event){
5760     return event[6];
5761 }
5762 
5763 /**
5764  * @brief Get field avdtp_cid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
5765  * @param event packet
5766  * @return avdtp_cid
5767  * @note: btstack_type 2
5768  */
5769 static inline uint16_t a2dp_subevent_signaling_delay_reporting_capability_get_avdtp_cid(const uint8_t * event){
5770     return little_endian_read_16(event, 3);
5771 }
5772 /**
5773  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
5774  * @param event packet
5775  * @return local_seid
5776  * @note: btstack_type 1
5777  */
5778 static inline uint8_t a2dp_subevent_signaling_delay_reporting_capability_get_local_seid(const uint8_t * event){
5779     return event[5];
5780 }
5781 /**
5782  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
5783  * @param event packet
5784  * @return remote_seid
5785  * @note: btstack_type 1
5786  */
5787 static inline uint8_t a2dp_subevent_signaling_delay_reporting_capability_get_remote_seid(const uint8_t * event){
5788     return event[6];
5789 }
5790 
5791 /**
5792  * @brief Get field avdtp_cid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
5793  * @param event packet
5794  * @return avdtp_cid
5795  * @note: btstack_type 2
5796  */
5797 static inline uint16_t a2dp_subevent_signaling_delay_report_get_avdtp_cid(const uint8_t * event){
5798     return little_endian_read_16(event, 3);
5799 }
5800 /**
5801  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
5802  * @param event packet
5803  * @return local_seid
5804  * @note: btstack_type 1
5805  */
5806 static inline uint8_t a2dp_subevent_signaling_delay_report_get_local_seid(const uint8_t * event){
5807     return event[5];
5808 }
5809 /**
5810  * @brief Get field delay_100us from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
5811  * @param event packet
5812  * @return delay_100us
5813  * @note: btstack_type 2
5814  */
5815 static inline uint16_t a2dp_subevent_signaling_delay_report_get_delay_100us(const uint8_t * event){
5816     return little_endian_read_16(event, 6);
5817 }
5818 
5819 /**
5820  * @brief Get field avdtp_cid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5821  * @param event packet
5822  * @return avdtp_cid
5823  * @note: btstack_type 2
5824  */
5825 static inline uint16_t a2dp_subevent_signaling_capabilities_done_get_avdtp_cid(const uint8_t * event){
5826     return little_endian_read_16(event, 3);
5827 }
5828 /**
5829  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5830  * @param event packet
5831  * @return local_seid
5832  * @note: btstack_type 1
5833  */
5834 static inline uint8_t a2dp_subevent_signaling_capabilities_done_get_local_seid(const uint8_t * event){
5835     return event[5];
5836 }
5837 /**
5838  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
5839  * @param event packet
5840  * @return remote_seid
5841  * @note: btstack_type 1
5842  */
5843 static inline uint8_t a2dp_subevent_signaling_capabilities_done_get_remote_seid(const uint8_t * event){
5844     return event[6];
5845 }
5846 
5847 /**
5848  * @brief Get field status from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
5849  * @param event packet
5850  * @return status
5851  * @note: btstack_type 1
5852  */
5853 static inline uint8_t avrcp_subevent_connection_established_get_status(const uint8_t * event){
5854     return event[3];
5855 }
5856 /**
5857  * @brief Get field bd_addr from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
5858  * @param event packet
5859  * @param Pointer to storage for bd_addr
5860  * @note: btstack_type B
5861  */
5862 static inline void avrcp_subevent_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5863     reverse_bytes(&event[4], bd_addr, 6);
5864 }
5865 /**
5866  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
5867  * @param event packet
5868  * @return avrcp_cid
5869  * @note: btstack_type 2
5870  */
5871 static inline uint16_t avrcp_subevent_connection_established_get_avrcp_cid(const uint8_t * event){
5872     return little_endian_read_16(event, 10);
5873 }
5874 
5875 /**
5876  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_CONNECTION_RELEASED
5877  * @param event packet
5878  * @return avrcp_cid
5879  * @note: btstack_type 2
5880  */
5881 static inline uint16_t avrcp_subevent_connection_released_get_avrcp_cid(const uint8_t * event){
5882     return little_endian_read_16(event, 3);
5883 }
5884 
5885 /**
5886  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
5887  * @param event packet
5888  * @return avrcp_cid
5889  * @note: btstack_type 2
5890  */
5891 static inline uint16_t avrcp_subevent_shuffle_and_repeat_mode_get_avrcp_cid(const uint8_t * event){
5892     return little_endian_read_16(event, 3);
5893 }
5894 /**
5895  * @brief Get field command_type from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
5896  * @param event packet
5897  * @return command_type
5898  * @note: btstack_type 1
5899  */
5900 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_command_type(const uint8_t * event){
5901     return event[5];
5902 }
5903 /**
5904  * @brief Get field repeat_mode from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
5905  * @param event packet
5906  * @return repeat_mode
5907  * @note: btstack_type 1
5908  */
5909 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_repeat_mode(const uint8_t * event){
5910     return event[6];
5911 }
5912 /**
5913  * @brief Get field shuffle_mode from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
5914  * @param event packet
5915  * @return shuffle_mode
5916  * @note: btstack_type 1
5917  */
5918 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_shuffle_mode(const uint8_t * event){
5919     return event[7];
5920 }
5921 
5922 /**
5923  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAY_STATUS
5924  * @param event packet
5925  * @return avrcp_cid
5926  * @note: btstack_type 2
5927  */
5928 static inline uint16_t avrcp_subevent_play_status_get_avrcp_cid(const uint8_t * event){
5929     return little_endian_read_16(event, 3);
5930 }
5931 /**
5932  * @brief Get field command_type from event AVRCP_SUBEVENT_PLAY_STATUS
5933  * @param event packet
5934  * @return command_type
5935  * @note: btstack_type 1
5936  */
5937 static inline uint8_t avrcp_subevent_play_status_get_command_type(const uint8_t * event){
5938     return event[5];
5939 }
5940 /**
5941  * @brief Get field song_length from event AVRCP_SUBEVENT_PLAY_STATUS
5942  * @param event packet
5943  * @return song_length
5944  * @note: btstack_type 4
5945  */
5946 static inline uint32_t avrcp_subevent_play_status_get_song_length(const uint8_t * event){
5947     return little_endian_read_32(event, 6);
5948 }
5949 /**
5950  * @brief Get field song_position from event AVRCP_SUBEVENT_PLAY_STATUS
5951  * @param event packet
5952  * @return song_position
5953  * @note: btstack_type 4
5954  */
5955 static inline uint32_t avrcp_subevent_play_status_get_song_position(const uint8_t * event){
5956     return little_endian_read_32(event, 10);
5957 }
5958 /**
5959  * @brief Get field play_status from event AVRCP_SUBEVENT_PLAY_STATUS
5960  * @param event packet
5961  * @return play_status
5962  * @note: btstack_type 1
5963  */
5964 static inline uint8_t avrcp_subevent_play_status_get_play_status(const uint8_t * event){
5965     return event[14];
5966 }
5967 
5968 /**
5969  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
5970  * @param event packet
5971  * @return avrcp_cid
5972  * @note: btstack_type 2
5973  */
5974 static inline uint16_t avrcp_subevent_notification_playback_status_changed_get_avrcp_cid(const uint8_t * event){
5975     return little_endian_read_16(event, 3);
5976 }
5977 /**
5978  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
5979  * @param event packet
5980  * @return command_type
5981  * @note: btstack_type 1
5982  */
5983 static inline uint8_t avrcp_subevent_notification_playback_status_changed_get_command_type(const uint8_t * event){
5984     return event[5];
5985 }
5986 /**
5987  * @brief Get field play_status from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
5988  * @param event packet
5989  * @return play_status
5990  * @note: btstack_type 1
5991  */
5992 static inline uint8_t avrcp_subevent_notification_playback_status_changed_get_play_status(const uint8_t * event){
5993     return event[6];
5994 }
5995 
5996 /**
5997  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED
5998  * @param event packet
5999  * @return avrcp_cid
6000  * @note: btstack_type 2
6001  */
6002 static inline uint16_t avrcp_subevent_notification_track_changed_get_avrcp_cid(const uint8_t * event){
6003     return little_endian_read_16(event, 3);
6004 }
6005 /**
6006  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED
6007  * @param event packet
6008  * @return command_type
6009  * @note: btstack_type 1
6010  */
6011 static inline uint8_t avrcp_subevent_notification_track_changed_get_command_type(const uint8_t * event){
6012     return event[5];
6013 }
6014 
6015 /**
6016  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED
6017  * @param event packet
6018  * @return avrcp_cid
6019  * @note: btstack_type 2
6020  */
6021 static inline uint16_t avrcp_subevent_notification_now_playing_content_changed_get_avrcp_cid(const uint8_t * event){
6022     return little_endian_read_16(event, 3);
6023 }
6024 /**
6025  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED
6026  * @param event packet
6027  * @return command_type
6028  * @note: btstack_type 1
6029  */
6030 static inline uint8_t avrcp_subevent_notification_now_playing_content_changed_get_command_type(const uint8_t * event){
6031     return event[5];
6032 }
6033 
6034 /**
6035  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED
6036  * @param event packet
6037  * @return avrcp_cid
6038  * @note: btstack_type 2
6039  */
6040 static inline uint16_t avrcp_subevent_notification_available_players_changed_get_avrcp_cid(const uint8_t * event){
6041     return little_endian_read_16(event, 3);
6042 }
6043 /**
6044  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED
6045  * @param event packet
6046  * @return command_type
6047  * @note: btstack_type 1
6048  */
6049 static inline uint8_t avrcp_subevent_notification_available_players_changed_get_command_type(const uint8_t * event){
6050     return event[5];
6051 }
6052 
6053 /**
6054  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
6055  * @param event packet
6056  * @return avrcp_cid
6057  * @note: btstack_type 2
6058  */
6059 static inline uint16_t avrcp_subevent_notification_volume_changed_get_avrcp_cid(const uint8_t * event){
6060     return little_endian_read_16(event, 3);
6061 }
6062 /**
6063  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
6064  * @param event packet
6065  * @return command_type
6066  * @note: btstack_type 1
6067  */
6068 static inline uint8_t avrcp_subevent_notification_volume_changed_get_command_type(const uint8_t * event){
6069     return event[5];
6070 }
6071 /**
6072  * @brief Get field absolute_volume from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
6073  * @param event packet
6074  * @return absolute_volume
6075  * @note: btstack_type 1
6076  */
6077 static inline uint8_t avrcp_subevent_notification_volume_changed_get_absolute_volume(const uint8_t * event){
6078     return event[6];
6079 }
6080 
6081 /**
6082  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
6083  * @param event packet
6084  * @return avrcp_cid
6085  * @note: btstack_type 2
6086  */
6087 static inline uint16_t avrcp_subevent_set_absolute_volume_response_get_avrcp_cid(const uint8_t * event){
6088     return little_endian_read_16(event, 3);
6089 }
6090 /**
6091  * @brief Get field command_type from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
6092  * @param event packet
6093  * @return command_type
6094  * @note: btstack_type 1
6095  */
6096 static inline uint8_t avrcp_subevent_set_absolute_volume_response_get_command_type(const uint8_t * event){
6097     return event[5];
6098 }
6099 /**
6100  * @brief Get field absolute_volume from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
6101  * @param event packet
6102  * @return absolute_volume
6103  * @note: btstack_type 1
6104  */
6105 static inline uint8_t avrcp_subevent_set_absolute_volume_response_get_absolute_volume(const uint8_t * event){
6106     return event[6];
6107 }
6108 
6109 /**
6110  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE
6111  * @param event packet
6112  * @return avrcp_cid
6113  * @note: btstack_type 2
6114  */
6115 static inline uint16_t avrcp_subevent_enable_notification_complete_get_avrcp_cid(const uint8_t * event){
6116     return little_endian_read_16(event, 3);
6117 }
6118 /**
6119  * @brief Get field command_type from event AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE
6120  * @param event packet
6121  * @return command_type
6122  * @note: btstack_type 1
6123  */
6124 static inline uint8_t avrcp_subevent_enable_notification_complete_get_command_type(const uint8_t * event){
6125     return event[5];
6126 }
6127 /**
6128  * @brief Get field notification_id from event AVRCP_SUBEVENT_ENABLE_NOTIFICATION_COMPLETE
6129  * @param event packet
6130  * @return notification_id
6131  * @note: btstack_type 1
6132  */
6133 static inline uint8_t avrcp_subevent_enable_notification_complete_get_notification_id(const uint8_t * event){
6134     return event[6];
6135 }
6136 
6137 /**
6138  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION_START
6139  * @param event packet
6140  * @return avrcp_cid
6141  * @note: btstack_type 2
6142  */
6143 static inline uint16_t avrcp_subevent_operation_start_get_avrcp_cid(const uint8_t * event){
6144     return little_endian_read_16(event, 3);
6145 }
6146 /**
6147  * @brief Get field command_type from event AVRCP_SUBEVENT_OPERATION_START
6148  * @param event packet
6149  * @return command_type
6150  * @note: btstack_type 1
6151  */
6152 static inline uint8_t avrcp_subevent_operation_start_get_command_type(const uint8_t * event){
6153     return event[5];
6154 }
6155 /**
6156  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION_START
6157  * @param event packet
6158  * @return operation_id
6159  * @note: btstack_type 1
6160  */
6161 static inline uint8_t avrcp_subevent_operation_start_get_operation_id(const uint8_t * event){
6162     return event[6];
6163 }
6164 
6165 /**
6166  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION_COMPLETE
6167  * @param event packet
6168  * @return avrcp_cid
6169  * @note: btstack_type 2
6170  */
6171 static inline uint16_t avrcp_subevent_operation_complete_get_avrcp_cid(const uint8_t * event){
6172     return little_endian_read_16(event, 3);
6173 }
6174 /**
6175  * @brief Get field command_type from event AVRCP_SUBEVENT_OPERATION_COMPLETE
6176  * @param event packet
6177  * @return command_type
6178  * @note: btstack_type 1
6179  */
6180 static inline uint8_t avrcp_subevent_operation_complete_get_command_type(const uint8_t * event){
6181     return event[5];
6182 }
6183 /**
6184  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION_COMPLETE
6185  * @param event packet
6186  * @return operation_id
6187  * @note: btstack_type 1
6188  */
6189 static inline uint8_t avrcp_subevent_operation_complete_get_operation_id(const uint8_t * event){
6190     return event[6];
6191 }
6192 
6193 /**
6194  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE
6195  * @param event packet
6196  * @return avrcp_cid
6197  * @note: btstack_type 2
6198  */
6199 static inline uint16_t avrcp_subevent_player_application_value_response_get_avrcp_cid(const uint8_t * event){
6200     return little_endian_read_16(event, 3);
6201 }
6202 /**
6203  * @brief Get field command_type from event AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE
6204  * @param event packet
6205  * @return command_type
6206  * @note: btstack_type 1
6207  */
6208 static inline uint8_t avrcp_subevent_player_application_value_response_get_command_type(const uint8_t * event){
6209     return event[5];
6210 }
6211 
6212 /**
6213  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_COMPANY_IDS_QUERY
6214  * @param event packet
6215  * @return avrcp_cid
6216  * @note: btstack_type 2
6217  */
6218 static inline uint16_t avrcp_subevent_company_ids_query_get_avrcp_cid(const uint8_t * event){
6219     return little_endian_read_16(event, 3);
6220 }
6221 
6222 /**
6223  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_EVENT_IDS_QUERY
6224  * @param event packet
6225  * @return avrcp_cid
6226  * @note: btstack_type 2
6227  */
6228 static inline uint16_t avrcp_subevent_event_ids_query_get_avrcp_cid(const uint8_t * event){
6229     return little_endian_read_16(event, 3);
6230 }
6231 
6232 /**
6233  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAY_STATUS_QUERY
6234  * @param event packet
6235  * @return avrcp_cid
6236  * @note: btstack_type 2
6237  */
6238 static inline uint16_t avrcp_subevent_play_status_query_get_avrcp_cid(const uint8_t * event){
6239     return little_endian_read_16(event, 3);
6240 }
6241 
6242 /**
6243  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION
6244  * @param event packet
6245  * @return avrcp_cid
6246  * @note: btstack_type 2
6247  */
6248 static inline uint16_t avrcp_subevent_operation_get_avrcp_cid(const uint8_t * event){
6249     return little_endian_read_16(event, 3);
6250 }
6251 /**
6252  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION
6253  * @param event packet
6254  * @return operation_id
6255  * @note: btstack_type 1
6256  */
6257 static inline uint8_t avrcp_subevent_operation_get_operation_id(const uint8_t * event){
6258     return event[5];
6259 }
6260 /**
6261  * @brief Get field operands_length from event AVRCP_SUBEVENT_OPERATION
6262  * @param event packet
6263  * @return operands_length
6264  * @note: btstack_type 1
6265  */
6266 static inline uint8_t avrcp_subevent_operation_get_operands_length(const uint8_t * event){
6267     return event[6];
6268 }
6269 /**
6270  * @brief Get field operand from event AVRCP_SUBEVENT_OPERATION
6271  * @param event packet
6272  * @return operand
6273  * @note: btstack_type 1
6274  */
6275 static inline uint8_t avrcp_subevent_operation_get_operand(const uint8_t * event){
6276     return event[7];
6277 }
6278 
6279 /**
6280  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
6281  * @param event packet
6282  * @return avrcp_cid
6283  * @note: btstack_type 2
6284  */
6285 static inline uint16_t avrcp_subevent_now_playing_track_info_get_avrcp_cid(const uint8_t * event){
6286     return little_endian_read_16(event, 3);
6287 }
6288 /**
6289  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
6290  * @param event packet
6291  * @return command_type
6292  * @note: btstack_type 1
6293  */
6294 static inline uint8_t avrcp_subevent_now_playing_track_info_get_command_type(const uint8_t * event){
6295     return event[5];
6296 }
6297 /**
6298  * @brief Get field track from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
6299  * @param event packet
6300  * @return track
6301  * @note: btstack_type 1
6302  */
6303 static inline uint8_t avrcp_subevent_now_playing_track_info_get_track(const uint8_t * event){
6304     return event[6];
6305 }
6306 
6307 /**
6308  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
6309  * @param event packet
6310  * @return avrcp_cid
6311  * @note: btstack_type 2
6312  */
6313 static inline uint16_t avrcp_subevent_now_playing_total_tracks_info_get_avrcp_cid(const uint8_t * event){
6314     return little_endian_read_16(event, 3);
6315 }
6316 /**
6317  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
6318  * @param event packet
6319  * @return command_type
6320  * @note: btstack_type 1
6321  */
6322 static inline uint8_t avrcp_subevent_now_playing_total_tracks_info_get_command_type(const uint8_t * event){
6323     return event[5];
6324 }
6325 /**
6326  * @brief Get field total_tracks from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
6327  * @param event packet
6328  * @return total_tracks
6329  * @note: btstack_type 1
6330  */
6331 static inline uint8_t avrcp_subevent_now_playing_total_tracks_info_get_total_tracks(const uint8_t * event){
6332     return event[6];
6333 }
6334 
6335 /**
6336  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
6337  * @param event packet
6338  * @return avrcp_cid
6339  * @note: btstack_type 2
6340  */
6341 static inline uint16_t avrcp_subevent_now_playing_song_length_ms_info_get_avrcp_cid(const uint8_t * event){
6342     return little_endian_read_16(event, 3);
6343 }
6344 /**
6345  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
6346  * @param event packet
6347  * @return command_type
6348  * @note: btstack_type 1
6349  */
6350 static inline uint8_t avrcp_subevent_now_playing_song_length_ms_info_get_command_type(const uint8_t * event){
6351     return event[5];
6352 }
6353 /**
6354  * @brief Get field song_length from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
6355  * @param event packet
6356  * @return song_length
6357  * @note: btstack_type 4
6358  */
6359 static inline uint32_t avrcp_subevent_now_playing_song_length_ms_info_get_song_length(const uint8_t * event){
6360     return little_endian_read_32(event, 6);
6361 }
6362 
6363 /**
6364  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
6365  * @param event packet
6366  * @return avrcp_cid
6367  * @note: btstack_type 2
6368  */
6369 static inline uint16_t avrcp_subevent_now_playing_title_info_get_avrcp_cid(const uint8_t * event){
6370     return little_endian_read_16(event, 3);
6371 }
6372 /**
6373  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
6374  * @param event packet
6375  * @return command_type
6376  * @note: btstack_type 1
6377  */
6378 static inline uint8_t avrcp_subevent_now_playing_title_info_get_command_type(const uint8_t * event){
6379     return event[5];
6380 }
6381 /**
6382  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
6383  * @param event packet
6384  * @return value_len
6385  * @note: btstack_type J
6386  */
6387 static inline uint8_t avrcp_subevent_now_playing_title_info_get_value_len(const uint8_t * event){
6388     return event[6];
6389 }
6390 /**
6391  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
6392  * @param event packet
6393  * @return value
6394  * @note: btstack_type V
6395  */
6396 static inline const uint8_t * avrcp_subevent_now_playing_title_info_get_value(const uint8_t * event){
6397     return &event[7];
6398 }
6399 
6400 /**
6401  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
6402  * @param event packet
6403  * @return avrcp_cid
6404  * @note: btstack_type 2
6405  */
6406 static inline uint16_t avrcp_subevent_now_playing_artist_info_get_avrcp_cid(const uint8_t * event){
6407     return little_endian_read_16(event, 3);
6408 }
6409 /**
6410  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
6411  * @param event packet
6412  * @return command_type
6413  * @note: btstack_type 1
6414  */
6415 static inline uint8_t avrcp_subevent_now_playing_artist_info_get_command_type(const uint8_t * event){
6416     return event[5];
6417 }
6418 /**
6419  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
6420  * @param event packet
6421  * @return value_len
6422  * @note: btstack_type J
6423  */
6424 static inline uint8_t avrcp_subevent_now_playing_artist_info_get_value_len(const uint8_t * event){
6425     return event[6];
6426 }
6427 /**
6428  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
6429  * @param event packet
6430  * @return value
6431  * @note: btstack_type V
6432  */
6433 static inline const uint8_t * avrcp_subevent_now_playing_artist_info_get_value(const uint8_t * event){
6434     return &event[7];
6435 }
6436 
6437 /**
6438  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
6439  * @param event packet
6440  * @return avrcp_cid
6441  * @note: btstack_type 2
6442  */
6443 static inline uint16_t avrcp_subevent_now_playing_album_info_get_avrcp_cid(const uint8_t * event){
6444     return little_endian_read_16(event, 3);
6445 }
6446 /**
6447  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
6448  * @param event packet
6449  * @return command_type
6450  * @note: btstack_type 1
6451  */
6452 static inline uint8_t avrcp_subevent_now_playing_album_info_get_command_type(const uint8_t * event){
6453     return event[5];
6454 }
6455 /**
6456  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
6457  * @param event packet
6458  * @return value_len
6459  * @note: btstack_type J
6460  */
6461 static inline uint8_t avrcp_subevent_now_playing_album_info_get_value_len(const uint8_t * event){
6462     return event[6];
6463 }
6464 /**
6465  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
6466  * @param event packet
6467  * @return value
6468  * @note: btstack_type V
6469  */
6470 static inline const uint8_t * avrcp_subevent_now_playing_album_info_get_value(const uint8_t * event){
6471     return &event[7];
6472 }
6473 
6474 /**
6475  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
6476  * @param event packet
6477  * @return avrcp_cid
6478  * @note: btstack_type 2
6479  */
6480 static inline uint16_t avrcp_subevent_now_playing_genre_info_get_avrcp_cid(const uint8_t * event){
6481     return little_endian_read_16(event, 3);
6482 }
6483 /**
6484  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
6485  * @param event packet
6486  * @return command_type
6487  * @note: btstack_type 1
6488  */
6489 static inline uint8_t avrcp_subevent_now_playing_genre_info_get_command_type(const uint8_t * event){
6490     return event[5];
6491 }
6492 /**
6493  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
6494  * @param event packet
6495  * @return value_len
6496  * @note: btstack_type J
6497  */
6498 static inline uint8_t avrcp_subevent_now_playing_genre_info_get_value_len(const uint8_t * event){
6499     return event[6];
6500 }
6501 /**
6502  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
6503  * @param event packet
6504  * @return value
6505  * @note: btstack_type V
6506  */
6507 static inline const uint8_t * avrcp_subevent_now_playing_genre_info_get_value(const uint8_t * event){
6508     return &event[7];
6509 }
6510 
6511 /**
6512  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
6513  * @param event packet
6514  * @return avrcp_cid
6515  * @note: btstack_type 2
6516  */
6517 static inline uint16_t avrcp_subevent_now_playing_info_done_get_avrcp_cid(const uint8_t * event){
6518     return little_endian_read_16(event, 3);
6519 }
6520 /**
6521  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
6522  * @param event packet
6523  * @return command_type
6524  * @note: btstack_type 1
6525  */
6526 static inline uint8_t avrcp_subevent_now_playing_info_done_get_command_type(const uint8_t * event){
6527     return event[5];
6528 }
6529 /**
6530  * @brief Get field status from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
6531  * @param event packet
6532  * @return status
6533  * @note: btstack_type 1
6534  */
6535 static inline uint8_t avrcp_subevent_now_playing_info_done_get_status(const uint8_t * event){
6536     return event[6];
6537 }
6538 
6539 /**
6540  * @brief Get field bd_addr from event AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION
6541  * @param event packet
6542  * @param Pointer to storage for bd_addr
6543  * @note: btstack_type B
6544  */
6545 static inline void avrcp_subevent_incoming_browsing_connection_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6546     reverse_bytes(&event[3], bd_addr, 6);
6547 }
6548 /**
6549  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION
6550  * @param event packet
6551  * @return browsing_cid
6552  * @note: btstack_type 2
6553  */
6554 static inline uint16_t avrcp_subevent_incoming_browsing_connection_get_browsing_cid(const uint8_t * event){
6555     return little_endian_read_16(event, 9);
6556 }
6557 
6558 /**
6559  * @brief Get field status from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
6560  * @param event packet
6561  * @return status
6562  * @note: btstack_type 1
6563  */
6564 static inline uint8_t avrcp_subevent_browsing_connection_established_get_status(const uint8_t * event){
6565     return event[3];
6566 }
6567 /**
6568  * @brief Get field bd_addr from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
6569  * @param event packet
6570  * @param Pointer to storage for bd_addr
6571  * @note: btstack_type B
6572  */
6573 static inline void avrcp_subevent_browsing_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6574     reverse_bytes(&event[4], bd_addr, 6);
6575 }
6576 /**
6577  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
6578  * @param event packet
6579  * @return browsing_cid
6580  * @note: btstack_type 2
6581  */
6582 static inline uint16_t avrcp_subevent_browsing_connection_established_get_browsing_cid(const uint8_t * event){
6583     return little_endian_read_16(event, 10);
6584 }
6585 
6586 /**
6587  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED
6588  * @param event packet
6589  * @return browsing_cid
6590  * @note: btstack_type 2
6591  */
6592 static inline uint16_t avrcp_subevent_browsing_connection_released_get_browsing_cid(const uint8_t * event){
6593     return little_endian_read_16(event, 3);
6594 }
6595 
6596 /**
6597  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_DONE
6598  * @param event packet
6599  * @return browsing_cid
6600  * @note: btstack_type 2
6601  */
6602 static inline uint16_t avrcp_subevent_browsing_done_get_browsing_cid(const uint8_t * event){
6603     return little_endian_read_16(event, 3);
6604 }
6605 /**
6606  * @brief Get field uid_counter from event AVRCP_SUBEVENT_BROWSING_DONE
6607  * @param event packet
6608  * @return uid_counter
6609  * @note: btstack_type 2
6610  */
6611 static inline uint16_t avrcp_subevent_browsing_done_get_uid_counter(const uint8_t * event){
6612     return little_endian_read_16(event, 5);
6613 }
6614 /**
6615  * @brief Get field browsing_status from event AVRCP_SUBEVENT_BROWSING_DONE
6616  * @param event packet
6617  * @return browsing_status
6618  * @note: btstack_type 1
6619  */
6620 static inline uint8_t avrcp_subevent_browsing_done_get_browsing_status(const uint8_t * event){
6621     return event[7];
6622 }
6623 /**
6624  * @brief Get field bluetooth_status from event AVRCP_SUBEVENT_BROWSING_DONE
6625  * @param event packet
6626  * @return bluetooth_status
6627  * @note: btstack_type 1
6628  */
6629 static inline uint8_t avrcp_subevent_browsing_done_get_bluetooth_status(const uint8_t * event){
6630     return event[8];
6631 }
6632 
6633 /**
6634  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
6635  * @param event packet
6636  * @return browsing_cid
6637  * @note: btstack_type 2
6638  */
6639 static inline uint16_t avrcp_subevent_browsing_get_folder_items_get_browsing_cid(const uint8_t * event){
6640     return little_endian_read_16(event, 3);
6641 }
6642 /**
6643  * @brief Get field scope from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
6644  * @param event packet
6645  * @return scope
6646  * @note: btstack_type 1
6647  */
6648 static inline uint8_t avrcp_subevent_browsing_get_folder_items_get_scope(const uint8_t * event){
6649     return event[5];
6650 }
6651 /**
6652  * @brief Get field attr_bitmap from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
6653  * @param event packet
6654  * @return attr_bitmap
6655  * @note: btstack_type 4
6656  */
6657 static inline uint32_t avrcp_subevent_browsing_get_folder_items_get_attr_bitmap(const uint8_t * event){
6658     return little_endian_read_32(event, 6);
6659 }
6660 
6661 /**
6662  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS
6663  * @param event packet
6664  * @return browsing_cid
6665  * @note: btstack_type 2
6666  */
6667 static inline uint16_t avrcp_subevent_browsing_get_total_num_items_get_browsing_cid(const uint8_t * event){
6668     return little_endian_read_16(event, 3);
6669 }
6670 /**
6671  * @brief Get field scope from event AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS
6672  * @param event packet
6673  * @return scope
6674  * @note: btstack_type 1
6675  */
6676 static inline uint8_t avrcp_subevent_browsing_get_total_num_items_get_scope(const uint8_t * event){
6677     return event[5];
6678 }
6679 
6680 /**
6681  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
6682  * @param event packet
6683  * @return avrcp_cid
6684  * @note: btstack_type 2
6685  */
6686 static inline uint16_t avrcp_subevent_notification_playback_pos_changed_get_avrcp_cid(const uint8_t * event){
6687     return little_endian_read_16(event, 3);
6688 }
6689 /**
6690  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
6691  * @param event packet
6692  * @return command_type
6693  * @note: btstack_type 1
6694  */
6695 static inline uint8_t avrcp_subevent_notification_playback_pos_changed_get_command_type(const uint8_t * event){
6696     return event[5];
6697 }
6698 /**
6699  * @brief Get field playback_position_ms from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
6700  * @param event packet
6701  * @return playback_position_ms
6702  * @note: btstack_type 4
6703  */
6704 static inline uint32_t avrcp_subevent_notification_playback_pos_changed_get_playback_position_ms(const uint8_t * event){
6705     return little_endian_read_32(event, 6);
6706 }
6707 
6708 /**
6709  * @brief Get field goep_cid from event GOEP_SUBEVENT_CONNECTION_OPENED
6710  * @param event packet
6711  * @return goep_cid
6712  * @note: btstack_type 2
6713  */
6714 static inline uint16_t goep_subevent_connection_opened_get_goep_cid(const uint8_t * event){
6715     return little_endian_read_16(event, 3);
6716 }
6717 /**
6718  * @brief Get field status from event GOEP_SUBEVENT_CONNECTION_OPENED
6719  * @param event packet
6720  * @return status
6721  * @note: btstack_type 1
6722  */
6723 static inline uint8_t goep_subevent_connection_opened_get_status(const uint8_t * event){
6724     return event[5];
6725 }
6726 /**
6727  * @brief Get field bd_addr from event GOEP_SUBEVENT_CONNECTION_OPENED
6728  * @param event packet
6729  * @param Pointer to storage for bd_addr
6730  * @note: btstack_type B
6731  */
6732 static inline void goep_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6733     reverse_bytes(&event[6], bd_addr, 6);
6734 }
6735 /**
6736  * @brief Get field con_handle from event GOEP_SUBEVENT_CONNECTION_OPENED
6737  * @param event packet
6738  * @return con_handle
6739  * @note: btstack_type H
6740  */
6741 static inline hci_con_handle_t goep_subevent_connection_opened_get_con_handle(const uint8_t * event){
6742     return little_endian_read_16(event, 12);
6743 }
6744 /**
6745  * @brief Get field incoming from event GOEP_SUBEVENT_CONNECTION_OPENED
6746  * @param event packet
6747  * @return incoming
6748  * @note: btstack_type 1
6749  */
6750 static inline uint8_t goep_subevent_connection_opened_get_incoming(const uint8_t * event){
6751     return event[14];
6752 }
6753 
6754 /**
6755  * @brief Get field goep_cid from event GOEP_SUBEVENT_CONNECTION_CLOSED
6756  * @param event packet
6757  * @return goep_cid
6758  * @note: btstack_type 2
6759  */
6760 static inline uint16_t goep_subevent_connection_closed_get_goep_cid(const uint8_t * event){
6761     return little_endian_read_16(event, 3);
6762 }
6763 
6764 /**
6765  * @brief Get field goep_cid from event GOEP_SUBEVENT_CAN_SEND_NOW
6766  * @param event packet
6767  * @return goep_cid
6768  * @note: btstack_type 2
6769  */
6770 static inline uint16_t goep_subevent_can_send_now_get_goep_cid(const uint8_t * event){
6771     return little_endian_read_16(event, 3);
6772 }
6773 
6774 /**
6775  * @brief Get field pbap_cid from event PBAP_SUBEVENT_CONNECTION_OPENED
6776  * @param event packet
6777  * @return pbap_cid
6778  * @note: btstack_type 2
6779  */
6780 static inline uint16_t pbap_subevent_connection_opened_get_pbap_cid(const uint8_t * event){
6781     return little_endian_read_16(event, 3);
6782 }
6783 /**
6784  * @brief Get field status from event PBAP_SUBEVENT_CONNECTION_OPENED
6785  * @param event packet
6786  * @return status
6787  * @note: btstack_type 1
6788  */
6789 static inline uint8_t pbap_subevent_connection_opened_get_status(const uint8_t * event){
6790     return event[5];
6791 }
6792 /**
6793  * @brief Get field bd_addr from event PBAP_SUBEVENT_CONNECTION_OPENED
6794  * @param event packet
6795  * @param Pointer to storage for bd_addr
6796  * @note: btstack_type B
6797  */
6798 static inline void pbap_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6799     reverse_bytes(&event[6], bd_addr, 6);
6800 }
6801 /**
6802  * @brief Get field con_handle from event PBAP_SUBEVENT_CONNECTION_OPENED
6803  * @param event packet
6804  * @return con_handle
6805  * @note: btstack_type H
6806  */
6807 static inline hci_con_handle_t pbap_subevent_connection_opened_get_con_handle(const uint8_t * event){
6808     return little_endian_read_16(event, 12);
6809 }
6810 /**
6811  * @brief Get field incoming from event PBAP_SUBEVENT_CONNECTION_OPENED
6812  * @param event packet
6813  * @return incoming
6814  * @note: btstack_type 1
6815  */
6816 static inline uint8_t pbap_subevent_connection_opened_get_incoming(const uint8_t * event){
6817     return event[14];
6818 }
6819 
6820 /**
6821  * @brief Get field goep_cid from event PBAP_SUBEVENT_CONNECTION_CLOSED
6822  * @param event packet
6823  * @return goep_cid
6824  * @note: btstack_type 2
6825  */
6826 static inline uint16_t pbap_subevent_connection_closed_get_goep_cid(const uint8_t * event){
6827     return little_endian_read_16(event, 3);
6828 }
6829 
6830 /**
6831  * @brief Get field goep_cid from event PBAP_SUBEVENT_OPERATION_COMPLETED
6832  * @param event packet
6833  * @return goep_cid
6834  * @note: btstack_type 2
6835  */
6836 static inline uint16_t pbap_subevent_operation_completed_get_goep_cid(const uint8_t * event){
6837     return little_endian_read_16(event, 3);
6838 }
6839 /**
6840  * @brief Get field status from event PBAP_SUBEVENT_OPERATION_COMPLETED
6841  * @param event packet
6842  * @return status
6843  * @note: btstack_type 1
6844  */
6845 static inline uint8_t pbap_subevent_operation_completed_get_status(const uint8_t * event){
6846     return event[5];
6847 }
6848 
6849 /**
6850  * @brief Get field goep_cid from event PBAP_SUBEVENT_PHONEBOOK_SIZE
6851  * @param event packet
6852  * @return goep_cid
6853  * @note: btstack_type 2
6854  */
6855 static inline uint16_t pbap_subevent_phonebook_size_get_goep_cid(const uint8_t * event){
6856     return little_endian_read_16(event, 3);
6857 }
6858 /**
6859  * @brief Get field status from event PBAP_SUBEVENT_PHONEBOOK_SIZE
6860  * @param event packet
6861  * @return status
6862  * @note: btstack_type 1
6863  */
6864 static inline uint8_t pbap_subevent_phonebook_size_get_status(const uint8_t * event){
6865     return event[5];
6866 }
6867 /**
6868  * @brief Get field phoneboook_size from event PBAP_SUBEVENT_PHONEBOOK_SIZE
6869  * @param event packet
6870  * @return phoneboook_size
6871  * @note: btstack_type 2
6872  */
6873 static inline uint16_t pbap_subevent_phonebook_size_get_phoneboook_size(const uint8_t * event){
6874     return little_endian_read_16(event, 6);
6875 }
6876 
6877 /**
6878  * @brief Get field goep_cid from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
6879  * @param event packet
6880  * @return goep_cid
6881  * @note: btstack_type 2
6882  */
6883 static inline uint16_t pbap_subevent_authentication_request_get_goep_cid(const uint8_t * event){
6884     return little_endian_read_16(event, 3);
6885 }
6886 /**
6887  * @brief Get field user_id_required from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
6888  * @param event packet
6889  * @return user_id_required
6890  * @note: btstack_type 1
6891  */
6892 static inline uint8_t pbap_subevent_authentication_request_get_user_id_required(const uint8_t * event){
6893     return event[5];
6894 }
6895 /**
6896  * @brief Get field full_access from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
6897  * @param event packet
6898  * @return full_access
6899  * @note: btstack_type 1
6900  */
6901 static inline uint8_t pbap_subevent_authentication_request_get_full_access(const uint8_t * event){
6902     return event[6];
6903 }
6904 
6905 /**
6906  * @brief Get field goep_cid from event PBAP_SUBEVENT_CARD_RESULT
6907  * @param event packet
6908  * @return goep_cid
6909  * @note: btstack_type 2
6910  */
6911 static inline uint16_t pbap_subevent_card_result_get_goep_cid(const uint8_t * event){
6912     return little_endian_read_16(event, 3);
6913 }
6914 /**
6915  * @brief Get field name_len from event PBAP_SUBEVENT_CARD_RESULT
6916  * @param event packet
6917  * @return name_len
6918  * @note: btstack_type J
6919  */
6920 static inline uint8_t pbap_subevent_card_result_get_name_len(const uint8_t * event){
6921     return event[5];
6922 }
6923 /**
6924  * @brief Get field name from event PBAP_SUBEVENT_CARD_RESULT
6925  * @param event packet
6926  * @return name
6927  * @note: btstack_type V
6928  */
6929 static inline const uint8_t * pbap_subevent_card_result_get_name(const uint8_t * event){
6930     return &event[6];
6931 }
6932 /**
6933  * @brief Get field handle_len from event PBAP_SUBEVENT_CARD_RESULT
6934  * @param event packet
6935  * @return handle_len
6936  * @note: btstack_type J
6937  */
6938 static inline uint8_t pbap_subevent_card_result_get_handle_len(const uint8_t * event){
6939     return event[6 + event[5]];
6940 }
6941 /**
6942  * @brief Get field handle from event PBAP_SUBEVENT_CARD_RESULT
6943  * @param event packet
6944  * @return handle
6945  * @note: btstack_type V
6946  */
6947 static inline const uint8_t * pbap_subevent_card_result_get_handle(const uint8_t * event){
6948     return &event[6 + event[5] + 1];
6949 }
6950 
6951 /**
6952  * @brief Get field hid_cid from event HID_SUBEVENT_CONNECTION_OPENED
6953  * @param event packet
6954  * @return hid_cid
6955  * @note: btstack_type 2
6956  */
6957 static inline uint16_t hid_subevent_connection_opened_get_hid_cid(const uint8_t * event){
6958     return little_endian_read_16(event, 3);
6959 }
6960 /**
6961  * @brief Get field status from event HID_SUBEVENT_CONNECTION_OPENED
6962  * @param event packet
6963  * @return status
6964  * @note: btstack_type 1
6965  */
6966 static inline uint8_t hid_subevent_connection_opened_get_status(const uint8_t * event){
6967     return event[5];
6968 }
6969 /**
6970  * @brief Get field bd_addr from event HID_SUBEVENT_CONNECTION_OPENED
6971  * @param event packet
6972  * @param Pointer to storage for bd_addr
6973  * @note: btstack_type B
6974  */
6975 static inline void hid_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6976     reverse_bytes(&event[6], bd_addr, 6);
6977 }
6978 /**
6979  * @brief Get field con_handle from event HID_SUBEVENT_CONNECTION_OPENED
6980  * @param event packet
6981  * @return con_handle
6982  * @note: btstack_type H
6983  */
6984 static inline hci_con_handle_t hid_subevent_connection_opened_get_con_handle(const uint8_t * event){
6985     return little_endian_read_16(event, 12);
6986 }
6987 /**
6988  * @brief Get field incoming from event HID_SUBEVENT_CONNECTION_OPENED
6989  * @param event packet
6990  * @return incoming
6991  * @note: btstack_type 1
6992  */
6993 static inline uint8_t hid_subevent_connection_opened_get_incoming(const uint8_t * event){
6994     return event[14];
6995 }
6996 
6997 /**
6998  * @brief Get field hid_cid from event HID_SUBEVENT_CONNECTION_CLOSED
6999  * @param event packet
7000  * @return hid_cid
7001  * @note: btstack_type 2
7002  */
7003 static inline uint16_t hid_subevent_connection_closed_get_hid_cid(const uint8_t * event){
7004     return little_endian_read_16(event, 3);
7005 }
7006 
7007 /**
7008  * @brief Get field hid_cid from event HID_SUBEVENT_CAN_SEND_NOW
7009  * @param event packet
7010  * @return hid_cid
7011  * @note: btstack_type 2
7012  */
7013 static inline uint16_t hid_subevent_can_send_now_get_hid_cid(const uint8_t * event){
7014     return little_endian_read_16(event, 3);
7015 }
7016 
7017 /**
7018  * @brief Get field con_handle from event HID_SUBEVENT_SUSPEND
7019  * @param event packet
7020  * @return con_handle
7021  * @note: btstack_type 2
7022  */
7023 static inline uint16_t hid_subevent_suspend_get_con_handle(const uint8_t * event){
7024     return little_endian_read_16(event, 3);
7025 }
7026 
7027 /**
7028  * @brief Get field con_handle from event HID_SUBEVENT_EXIT_SUSPEND
7029  * @param event packet
7030  * @return con_handle
7031  * @note: btstack_type 2
7032  */
7033 static inline uint16_t hid_subevent_exit_suspend_get_con_handle(const uint8_t * event){
7034     return little_endian_read_16(event, 3);
7035 }
7036 
7037 /**
7038  * @brief Get field con_handle from event HIDS_SUBEVENT_CAN_SEND_NOW
7039  * @param event packet
7040  * @return con_handle
7041  * @note: btstack_type 2
7042  */
7043 static inline uint16_t hids_subevent_can_send_now_get_con_handle(const uint8_t * event){
7044     return little_endian_read_16(event, 3);
7045 }
7046 
7047 /**
7048  * @brief Get field con_handle from event HIDS_SUBEVENT_PROTOCOL_MODE
7049  * @param event packet
7050  * @return con_handle
7051  * @note: btstack_type 2
7052  */
7053 static inline uint16_t hids_subevent_protocol_mode_get_con_handle(const uint8_t * event){
7054     return little_endian_read_16(event, 3);
7055 }
7056 /**
7057  * @brief Get field protocol_mode from event HIDS_SUBEVENT_PROTOCOL_MODE
7058  * @param event packet
7059  * @return protocol_mode
7060  * @note: btstack_type 1
7061  */
7062 static inline uint8_t hids_subevent_protocol_mode_get_protocol_mode(const uint8_t * event){
7063     return event[5];
7064 }
7065 
7066 /**
7067  * @brief Get field con_handle from event HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE
7068  * @param event packet
7069  * @return con_handle
7070  * @note: btstack_type 2
7071  */
7072 static inline uint16_t hids_subevent_boot_mouse_input_report_enable_get_con_handle(const uint8_t * event){
7073     return little_endian_read_16(event, 3);
7074 }
7075 /**
7076  * @brief Get field enable from event HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE
7077  * @param event packet
7078  * @return enable
7079  * @note: btstack_type 1
7080  */
7081 static inline uint8_t hids_subevent_boot_mouse_input_report_enable_get_enable(const uint8_t * event){
7082     return event[5];
7083 }
7084 
7085 /**
7086  * @brief Get field con_handle from event HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE
7087  * @param event packet
7088  * @return con_handle
7089  * @note: btstack_type 2
7090  */
7091 static inline uint16_t hids_subevent_boot_keyboard_input_report_enable_get_con_handle(const uint8_t * event){
7092     return little_endian_read_16(event, 3);
7093 }
7094 /**
7095  * @brief Get field enable from event HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE
7096  * @param event packet
7097  * @return enable
7098  * @note: btstack_type 1
7099  */
7100 static inline uint8_t hids_subevent_boot_keyboard_input_report_enable_get_enable(const uint8_t * event){
7101     return event[5];
7102 }
7103 
7104 /**
7105  * @brief Get field con_handle from event HIDS_SUBEVENT_INPUT_REPORT_ENABLE
7106  * @param event packet
7107  * @return con_handle
7108  * @note: btstack_type 2
7109  */
7110 static inline uint16_t hids_subevent_input_report_enable_get_con_handle(const uint8_t * event){
7111     return little_endian_read_16(event, 3);
7112 }
7113 /**
7114  * @brief Get field enable from event HIDS_SUBEVENT_INPUT_REPORT_ENABLE
7115  * @param event packet
7116  * @return enable
7117  * @note: btstack_type 1
7118  */
7119 static inline uint8_t hids_subevent_input_report_enable_get_enable(const uint8_t * event){
7120     return event[5];
7121 }
7122 
7123 /**
7124  * @brief Get field con_handle from event HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE
7125  * @param event packet
7126  * @return con_handle
7127  * @note: btstack_type 2
7128  */
7129 static inline uint16_t hids_subevent_output_report_enable_get_con_handle(const uint8_t * event){
7130     return little_endian_read_16(event, 3);
7131 }
7132 /**
7133  * @brief Get field enable from event HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE
7134  * @param event packet
7135  * @return enable
7136  * @note: btstack_type 1
7137  */
7138 static inline uint8_t hids_subevent_output_report_enable_get_enable(const uint8_t * event){
7139     return event[5];
7140 }
7141 
7142 /**
7143  * @brief Get field con_handle from event HIDS_SUBEVENT_FEATURE_REPORT_ENABLE
7144  * @param event packet
7145  * @return con_handle
7146  * @note: btstack_type 2
7147  */
7148 static inline uint16_t hids_subevent_feature_report_enable_get_con_handle(const uint8_t * event){
7149     return little_endian_read_16(event, 3);
7150 }
7151 /**
7152  * @brief Get field enable from event HIDS_SUBEVENT_FEATURE_REPORT_ENABLE
7153  * @param event packet
7154  * @return enable
7155  * @note: btstack_type 1
7156  */
7157 static inline uint8_t hids_subevent_feature_report_enable_get_enable(const uint8_t * event){
7158     return event[5];
7159 }
7160 
7161 /**
7162  * @brief Get field con_handle from event HIDS_SUBEVENT_SUSPEND
7163  * @param event packet
7164  * @return con_handle
7165  * @note: btstack_type 2
7166  */
7167 static inline uint16_t hids_subevent_suspend_get_con_handle(const uint8_t * event){
7168     return little_endian_read_16(event, 3);
7169 }
7170 
7171 /**
7172  * @brief Get field con_handle from event HIDS_SUBEVENT_EXIT_SUSPEND
7173  * @param event packet
7174  * @return con_handle
7175  * @note: btstack_type 2
7176  */
7177 static inline uint16_t hids_subevent_exit_suspend_get_con_handle(const uint8_t * event){
7178     return little_endian_read_16(event, 3);
7179 }
7180 
7181 /**
7182  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
7183  * @param event packet
7184  * @return con_handle
7185  * @note: btstack_type 2
7186  */
7187 static inline uint16_t gattservice_subevent_cycling_power_start_calibration_get_con_handle(const uint8_t * event){
7188     return little_endian_read_16(event, 3);
7189 }
7190 /**
7191  * @brief Get field measurement_type from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
7192  * @param event packet
7193  * @return measurement_type
7194  * @note: btstack_type 1
7195  */
7196 static inline uint8_t gattservice_subevent_cycling_power_start_calibration_get_measurement_type(const uint8_t * event){
7197     return event[5];
7198 }
7199 /**
7200  * @brief Get field is_enhanced from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
7201  * @param event packet
7202  * @return is_enhanced
7203  * @note: btstack_type 1
7204  */
7205 static inline uint8_t gattservice_subevent_cycling_power_start_calibration_get_is_enhanced(const uint8_t * event){
7206     return event[6];
7207 }
7208 
7209 /**
7210  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START
7211  * @param event packet
7212  * @return con_handle
7213  * @note: btstack_type 2
7214  */
7215 static inline uint16_t gattservice_subevent_cycling_power_broadcast_start_get_con_handle(const uint8_t * event){
7216     return little_endian_read_16(event, 3);
7217 }
7218 
7219 /**
7220  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP
7221  * @param event packet
7222  * @return con_handle
7223  * @note: btstack_type 2
7224  */
7225 static inline uint16_t gattservice_subevent_cycling_power_broadcast_stop_get_con_handle(const uint8_t * event){
7226     return little_endian_read_16(event, 3);
7227 }
7228 
7229 /**
7230  * @brief Get field map_cid from event MAP_SUBEVENT_CONNECTION_OPENED
7231  * @param event packet
7232  * @return map_cid
7233  * @note: btstack_type 2
7234  */
7235 static inline uint16_t map_subevent_connection_opened_get_map_cid(const uint8_t * event){
7236     return little_endian_read_16(event, 3);
7237 }
7238 /**
7239  * @brief Get field status from event MAP_SUBEVENT_CONNECTION_OPENED
7240  * @param event packet
7241  * @return status
7242  * @note: btstack_type 1
7243  */
7244 static inline uint8_t map_subevent_connection_opened_get_status(const uint8_t * event){
7245     return event[5];
7246 }
7247 /**
7248  * @brief Get field bd_addr from event MAP_SUBEVENT_CONNECTION_OPENED
7249  * @param event packet
7250  * @param Pointer to storage for bd_addr
7251  * @note: btstack_type B
7252  */
7253 static inline void map_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
7254     reverse_bytes(&event[6], bd_addr, 6);
7255 }
7256 /**
7257  * @brief Get field con_handle from event MAP_SUBEVENT_CONNECTION_OPENED
7258  * @param event packet
7259  * @return con_handle
7260  * @note: btstack_type H
7261  */
7262 static inline hci_con_handle_t map_subevent_connection_opened_get_con_handle(const uint8_t * event){
7263     return little_endian_read_16(event, 12);
7264 }
7265 /**
7266  * @brief Get field incoming from event MAP_SUBEVENT_CONNECTION_OPENED
7267  * @param event packet
7268  * @return incoming
7269  * @note: btstack_type 1
7270  */
7271 static inline uint8_t map_subevent_connection_opened_get_incoming(const uint8_t * event){
7272     return event[14];
7273 }
7274 
7275 /**
7276  * @brief Get field map_cid from event MAP_SUBEVENT_CONNECTION_CLOSED
7277  * @param event packet
7278  * @return map_cid
7279  * @note: btstack_type 2
7280  */
7281 static inline uint16_t map_subevent_connection_closed_get_map_cid(const uint8_t * event){
7282     return little_endian_read_16(event, 3);
7283 }
7284 
7285 /**
7286  * @brief Get field map_cid from event MAP_SUBEVENT_OPERATION_COMPLETED
7287  * @param event packet
7288  * @return map_cid
7289  * @note: btstack_type 2
7290  */
7291 static inline uint16_t map_subevent_operation_completed_get_map_cid(const uint8_t * event){
7292     return little_endian_read_16(event, 3);
7293 }
7294 /**
7295  * @brief Get field status from event MAP_SUBEVENT_OPERATION_COMPLETED
7296  * @param event packet
7297  * @return status
7298  * @note: btstack_type 1
7299  */
7300 static inline uint8_t map_subevent_operation_completed_get_status(const uint8_t * event){
7301     return event[5];
7302 }
7303 
7304 /**
7305  * @brief Get field map_cid from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
7306  * @param event packet
7307  * @return map_cid
7308  * @note: btstack_type 2
7309  */
7310 static inline uint16_t map_subevent_folder_listing_item_get_map_cid(const uint8_t * event){
7311     return little_endian_read_16(event, 3);
7312 }
7313 /**
7314  * @brief Get field name_len from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
7315  * @param event packet
7316  * @return name_len
7317  * @note: btstack_type L
7318  */
7319 static inline uint16_t map_subevent_folder_listing_item_get_name_len(const uint8_t * event){
7320     return little_endian_read_16(event, 5);
7321 }
7322 /**
7323  * @brief Get field name from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
7324  * @param event packet
7325  * @return name
7326  * @note: btstack_type V
7327  */
7328 static inline const uint8_t * map_subevent_folder_listing_item_get_name(const uint8_t * event){
7329     return &event[7];
7330 }
7331 
7332 /**
7333  * @brief Get field map_cid from event MAP_SUBEVENT_MESSAGE_LISTING_ITEM
7334  * @param event packet
7335  * @return map_cid
7336  * @note: btstack_type 2
7337  */
7338 static inline uint16_t map_subevent_message_listing_item_get_map_cid(const uint8_t * event){
7339     return little_endian_read_16(event, 3);
7340 }
7341 /**
7342  * @brief Get field handle from event MAP_SUBEVENT_MESSAGE_LISTING_ITEM
7343  * @param event packet
7344  * @return handle
7345  * @note: btstack_type D
7346  */
7347 static inline const uint8_t * map_subevent_message_listing_item_get_handle(const uint8_t * event){
7348     return (const uint8_t *) &event[5];
7349 }
7350 
7351 /**
7352  * @brief Get field map_cid from event MAP_SUBEVENT_PARSING_DONE
7353  * @param event packet
7354  * @return map_cid
7355  * @note: btstack_type 2
7356  */
7357 static inline uint16_t map_subevent_parsing_done_get_map_cid(const uint8_t * event){
7358     return little_endian_read_16(event, 3);
7359 }
7360 
7361 
7362 /**
7363  * @brief Get field status from event MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT
7364  * @param event packet
7365  * @return status
7366  * @note: btstack_type 1
7367  */
7368 static inline uint8_t mesh_subevent_pb_transport_pdu_sent_get_status(const uint8_t * event){
7369     return event[3];
7370 }
7371 
7372 /**
7373  * @brief Get field status from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
7374  * @param event packet
7375  * @return status
7376  * @note: btstack_type 1
7377  */
7378 static inline uint8_t mesh_subevent_pb_transport_link_open_get_status(const uint8_t * event){
7379     return event[3];
7380 }
7381 /**
7382  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
7383  * @param event packet
7384  * @return pb_transport_cid
7385  * @note: btstack_type 2
7386  */
7387 static inline uint16_t mesh_subevent_pb_transport_link_open_get_pb_transport_cid(const uint8_t * event){
7388     return little_endian_read_16(event, 4);
7389 }
7390 /**
7391  * @brief Get field pb_type from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
7392  * @param event packet
7393  * @return pb_type
7394  * @note: btstack_type 1
7395  */
7396 static inline uint8_t mesh_subevent_pb_transport_link_open_get_pb_type(const uint8_t * event){
7397     return event[6];
7398 }
7399 
7400 /**
7401  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED
7402  * @param event packet
7403  * @return pb_transport_cid
7404  * @note: btstack_type 1
7405  */
7406 static inline uint8_t mesh_subevent_pb_transport_link_closed_get_pb_transport_cid(const uint8_t * event){
7407     return event[3];
7408 }
7409 /**
7410  * @brief Get field reason from event MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED
7411  * @param event packet
7412  * @return reason
7413  * @note: btstack_type 2
7414  */
7415 static inline uint16_t mesh_subevent_pb_transport_link_closed_get_reason(const uint8_t * event){
7416     return little_endian_read_16(event, 4);
7417 }
7418 
7419 /**
7420  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER
7421  * @param event packet
7422  * @return pb_transport_cid
7423  * @note: btstack_type 2
7424  */
7425 static inline uint16_t mesh_subevent_pb_prov_attention_timer_get_pb_transport_cid(const uint8_t * event){
7426     return little_endian_read_16(event, 3);
7427 }
7428 /**
7429  * @brief Get field attention_time from event MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER
7430  * @param event packet
7431  * @return attention_time
7432  * @note: btstack_type 1
7433  */
7434 static inline uint8_t mesh_subevent_pb_prov_attention_timer_get_attention_time(const uint8_t * event){
7435     return event[5];
7436 }
7437 
7438 /**
7439  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB
7440  * @param event packet
7441  * @return pb_transport_cid
7442  * @note: btstack_type 2
7443  */
7444 static inline uint16_t mesh_subevent_pb_prov_start_emit_public_key_oob_get_pb_transport_cid(const uint8_t * event){
7445     return little_endian_read_16(event, 3);
7446 }
7447 
7448 /**
7449  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB
7450  * @param event packet
7451  * @return pb_transport_cid
7452  * @note: btstack_type 2
7453  */
7454 static inline uint16_t mesh_subevent_pb_prov_stop_emit_public_key_oob_get_pb_transport_cid(const uint8_t * event){
7455     return little_endian_read_16(event, 3);
7456 }
7457 
7458 /**
7459  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST
7460  * @param event packet
7461  * @return pb_transport_cid
7462  * @note: btstack_type 2
7463  */
7464 static inline uint16_t mesh_subevent_pb_prov_input_oob_request_get_pb_transport_cid(const uint8_t * event){
7465     return little_endian_read_16(event, 3);
7466 }
7467 
7468 /**
7469  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB
7470  * @param event packet
7471  * @return pb_transport_cid
7472  * @note: btstack_type 2
7473  */
7474 static inline uint16_t mesh_subevent_pb_prov_start_emit_output_oob_get_pb_transport_cid(const uint8_t * event){
7475     return little_endian_read_16(event, 3);
7476 }
7477 /**
7478  * @brief Get field output_oob from event MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB
7479  * @param event packet
7480  * @return output_oob
7481  * @note: btstack_type 4
7482  */
7483 static inline uint32_t mesh_subevent_pb_prov_start_emit_output_oob_get_output_oob(const uint8_t * event){
7484     return little_endian_read_32(event, 5);
7485 }
7486 
7487 /**
7488  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB
7489  * @param event packet
7490  * @return pb_transport_cid
7491  * @note: btstack_type 2
7492  */
7493 static inline uint16_t mesh_subevent_pb_prov_stop_emit_output_oob_get_pb_transport_cid(const uint8_t * event){
7494     return little_endian_read_16(event, 3);
7495 }
7496 
7497 /**
7498  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB
7499  * @param event packet
7500  * @return pb_transport_cid
7501  * @note: btstack_type 2
7502  */
7503 static inline uint16_t mesh_subevent_pb_prov_start_receive_public_key_oob_get_pb_transport_cid(const uint8_t * event){
7504     return little_endian_read_16(event, 3);
7505 }
7506 
7507 /**
7508  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB
7509  * @param event packet
7510  * @return pb_transport_cid
7511  * @note: btstack_type 2
7512  */
7513 static inline uint16_t mesh_subevent_pb_prov_stop_receive_public_key_oob_get_pb_transport_cid(const uint8_t * event){
7514     return little_endian_read_16(event, 3);
7515 }
7516 
7517 /**
7518  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST
7519  * @param event packet
7520  * @return pb_transport_cid
7521  * @note: btstack_type 2
7522  */
7523 static inline uint16_t mesh_subevent_pb_prov_output_oob_request_get_pb_transport_cid(const uint8_t * event){
7524     return little_endian_read_16(event, 3);
7525 }
7526 
7527 /**
7528  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB
7529  * @param event packet
7530  * @return pb_transport_cid
7531  * @note: btstack_type 2
7532  */
7533 static inline uint16_t mesh_subevent_pb_prov_start_emit_input_oob_get_pb_transport_cid(const uint8_t * event){
7534     return little_endian_read_16(event, 3);
7535 }
7536 /**
7537  * @brief Get field output_oob from event MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB
7538  * @param event packet
7539  * @return output_oob
7540  * @note: btstack_type 4
7541  */
7542 static inline uint32_t mesh_subevent_pb_prov_start_emit_input_oob_get_output_oob(const uint8_t * event){
7543     return little_endian_read_32(event, 5);
7544 }
7545 
7546 /**
7547  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB
7548  * @param event packet
7549  * @return pb_transport_cid
7550  * @note: btstack_type 2
7551  */
7552 static inline uint16_t mesh_subevent_pb_prov_stop_emit_input_oob_get_pb_transport_cid(const uint8_t * event){
7553     return little_endian_read_16(event, 3);
7554 }
7555 
7556 /**
7557  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7558  * @param event packet
7559  * @return pb_transport_cid
7560  * @note: btstack_type 2
7561  */
7562 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_pb_transport_cid(const uint8_t * event){
7563     return little_endian_read_16(event, 3);
7564 }
7565 /**
7566  * @brief Get field num_elements from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7567  * @param event packet
7568  * @return num_elements
7569  * @note: btstack_type 1
7570  */
7571 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_num_elements(const uint8_t * event){
7572     return event[5];
7573 }
7574 /**
7575  * @brief Get field algorithms from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7576  * @param event packet
7577  * @return algorithms
7578  * @note: btstack_type 2
7579  */
7580 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_algorithms(const uint8_t * event){
7581     return little_endian_read_16(event, 6);
7582 }
7583 /**
7584  * @brief Get field public_key from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7585  * @param event packet
7586  * @return public_key
7587  * @note: btstack_type 1
7588  */
7589 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_public_key(const uint8_t * event){
7590     return event[8];
7591 }
7592 /**
7593  * @brief Get field static_oob_type from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7594  * @param event packet
7595  * @return static_oob_type
7596  * @note: btstack_type 1
7597  */
7598 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_static_oob_type(const uint8_t * event){
7599     return event[9];
7600 }
7601 /**
7602  * @brief Get field output_oob_size from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7603  * @param event packet
7604  * @return output_oob_size
7605  * @note: btstack_type 1
7606  */
7607 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_output_oob_size(const uint8_t * event){
7608     return event[10];
7609 }
7610 /**
7611  * @brief Get field output_oob_action from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7612  * @param event packet
7613  * @return output_oob_action
7614  * @note: btstack_type 2
7615  */
7616 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_output_oob_action(const uint8_t * event){
7617     return little_endian_read_16(event, 11);
7618 }
7619 /**
7620  * @brief Get field input_oob_size from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7621  * @param event packet
7622  * @return input_oob_size
7623  * @note: btstack_type 1
7624  */
7625 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_input_oob_size(const uint8_t * event){
7626     return event[13];
7627 }
7628 /**
7629  * @brief Get field input_oob_action from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
7630  * @param event packet
7631  * @return input_oob_action
7632  * @note: btstack_type 2
7633  */
7634 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_input_oob_action(const uint8_t * event){
7635     return little_endian_read_16(event, 14);
7636 }
7637 
7638 /**
7639  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_COMPLETE
7640  * @param event packet
7641  * @return pb_transport_cid
7642  * @note: btstack_type 2
7643  */
7644 static inline uint16_t mesh_subevent_pb_prov_complete_get_pb_transport_cid(const uint8_t * event){
7645     return little_endian_read_16(event, 3);
7646 }
7647 
7648 /**
7649  * @brief Get field attention_time from event MESH_SUBEVENT_ATTENTION_TIMER
7650  * @param event packet
7651  * @return attention_time
7652  * @note: btstack_type 1
7653  */
7654 static inline uint8_t mesh_subevent_attention_timer_get_attention_time(const uint8_t * event){
7655     return event[3];
7656 }
7657 
7658 /**
7659  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_CONNECTED
7660  * @param event packet
7661  * @return con_handle
7662  * @note: btstack_type H
7663  */
7664 static inline hci_con_handle_t mesh_subevent_proxy_connected_get_con_handle(const uint8_t * event){
7665     return little_endian_read_16(event, 3);
7666 }
7667 
7668 /**
7669  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_PDU_SENT
7670  * @param event packet
7671  * @return con_handle
7672  * @note: btstack_type H
7673  */
7674 static inline hci_con_handle_t mesh_subevent_proxy_pdu_sent_get_con_handle(const uint8_t * event){
7675     return little_endian_read_16(event, 3);
7676 }
7677 
7678 /**
7679  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_DISCONNECTED
7680  * @param event packet
7681  * @return con_handle
7682  * @note: btstack_type H
7683  */
7684 static inline hci_con_handle_t mesh_subevent_proxy_disconnected_get_con_handle(const uint8_t * event){
7685     return little_endian_read_16(event, 3);
7686 }
7687 
7688 /**
7689  * @brief Get field con_handle from event MESH_SUBEVENT_MESSAGE_SENT
7690  * @param event packet
7691  * @return con_handle
7692  * @note: btstack_type H
7693  */
7694 static inline hci_con_handle_t mesh_subevent_message_sent_get_con_handle(const uint8_t * event){
7695     return little_endian_read_16(event, 3);
7696 }
7697 
7698 /**
7699  * @brief Get field element_index from event MESH_SUBEVENT_STATE_UPDATE_BOOL
7700  * @param event packet
7701  * @return element_index
7702  * @note: btstack_type 1
7703  */
7704 static inline uint8_t mesh_subevent_state_update_bool_get_element_index(const uint8_t * event){
7705     return event[3];
7706 }
7707 /**
7708  * @brief Get field model_identifier from event MESH_SUBEVENT_STATE_UPDATE_BOOL
7709  * @param event packet
7710  * @return model_identifier
7711  * @note: btstack_type 4
7712  */
7713 static inline uint32_t mesh_subevent_state_update_bool_get_model_identifier(const uint8_t * event){
7714     return little_endian_read_32(event, 4);
7715 }
7716 /**
7717  * @brief Get field state_identifier from event MESH_SUBEVENT_STATE_UPDATE_BOOL
7718  * @param event packet
7719  * @return state_identifier
7720  * @note: btstack_type 4
7721  */
7722 static inline uint32_t mesh_subevent_state_update_bool_get_state_identifier(const uint8_t * event){
7723     return little_endian_read_32(event, 8);
7724 }
7725 /**
7726  * @brief Get field reason from event MESH_SUBEVENT_STATE_UPDATE_BOOL
7727  * @param event packet
7728  * @return reason
7729  * @note: btstack_type 1
7730  */
7731 static inline uint8_t mesh_subevent_state_update_bool_get_reason(const uint8_t * event){
7732     return event[12];
7733 }
7734 /**
7735  * @brief Get field value from event MESH_SUBEVENT_STATE_UPDATE_BOOL
7736  * @param event packet
7737  * @return value
7738  * @note: btstack_type 1
7739  */
7740 static inline uint8_t mesh_subevent_state_update_bool_get_value(const uint8_t * event){
7741     return event[13];
7742 }
7743 
7744 /**
7745  * @brief Get field element_index from event MESH_SUBEVENT_STATE_UPDATE_INT16
7746  * @param event packet
7747  * @return element_index
7748  * @note: btstack_type 1
7749  */
7750 static inline uint8_t mesh_subevent_state_update_int16_get_element_index(const uint8_t * event){
7751     return event[3];
7752 }
7753 /**
7754  * @brief Get field model_identifier from event MESH_SUBEVENT_STATE_UPDATE_INT16
7755  * @param event packet
7756  * @return model_identifier
7757  * @note: btstack_type 4
7758  */
7759 static inline uint32_t mesh_subevent_state_update_int16_get_model_identifier(const uint8_t * event){
7760     return little_endian_read_32(event, 4);
7761 }
7762 /**
7763  * @brief Get field state_identifier from event MESH_SUBEVENT_STATE_UPDATE_INT16
7764  * @param event packet
7765  * @return state_identifier
7766  * @note: btstack_type 4
7767  */
7768 static inline uint32_t mesh_subevent_state_update_int16_get_state_identifier(const uint8_t * event){
7769     return little_endian_read_32(event, 8);
7770 }
7771 /**
7772  * @brief Get field reason from event MESH_SUBEVENT_STATE_UPDATE_INT16
7773  * @param event packet
7774  * @return reason
7775  * @note: btstack_type 1
7776  */
7777 static inline uint8_t mesh_subevent_state_update_int16_get_reason(const uint8_t * event){
7778     return event[12];
7779 }
7780 /**
7781  * @brief Get field value from event MESH_SUBEVENT_STATE_UPDATE_INT16
7782  * @param event packet
7783  * @return value
7784  * @note: btstack_type 2
7785  */
7786 static inline uint16_t mesh_subevent_state_update_int16_get_value(const uint8_t * event){
7787     return little_endian_read_16(event, 13);
7788 }
7789 
7790 /**
7791  * @brief Get field element_index from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
7792  * @param event packet
7793  * @return element_index
7794  * @note: btstack_type 1
7795  */
7796 static inline uint8_t mesh_subevent_message_not_acknowledged_get_element_index(const uint8_t * event){
7797     return event[3];
7798 }
7799 /**
7800  * @brief Get field model_identifier from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
7801  * @param event packet
7802  * @return model_identifier
7803  * @note: btstack_type 4
7804  */
7805 static inline uint32_t mesh_subevent_message_not_acknowledged_get_model_identifier(const uint8_t * event){
7806     return little_endian_read_32(event, 4);
7807 }
7808 /**
7809  * @brief Get field opcode from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
7810  * @param event packet
7811  * @return opcode
7812  * @note: btstack_type 4
7813  */
7814 static inline uint32_t mesh_subevent_message_not_acknowledged_get_opcode(const uint8_t * event){
7815     return little_endian_read_32(event, 8);
7816 }
7817 /**
7818  * @brief Get field dest from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
7819  * @param event packet
7820  * @return dest
7821  * @note: btstack_type 2
7822  */
7823 static inline uint16_t mesh_subevent_message_not_acknowledged_get_dest(const uint8_t * event){
7824     return little_endian_read_16(event, 12);
7825 }
7826 
7827 /**
7828  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_ON_OFF
7829  * @param event packet
7830  * @return dest
7831  * @note: btstack_type 2
7832  */
7833 static inline uint16_t mesh_subevent_generic_on_off_get_dest(const uint8_t * event){
7834     return little_endian_read_16(event, 3);
7835 }
7836 /**
7837  * @brief Get field status from event MESH_SUBEVENT_GENERIC_ON_OFF
7838  * @param event packet
7839  * @return status
7840  * @note: btstack_type 1
7841  */
7842 static inline uint8_t mesh_subevent_generic_on_off_get_status(const uint8_t * event){
7843     return event[5];
7844 }
7845 /**
7846  * @brief Get field present_value from event MESH_SUBEVENT_GENERIC_ON_OFF
7847  * @param event packet
7848  * @return present_value
7849  * @note: btstack_type 1
7850  */
7851 static inline uint8_t mesh_subevent_generic_on_off_get_present_value(const uint8_t * event){
7852     return event[6];
7853 }
7854 /**
7855  * @brief Get field target_value from event MESH_SUBEVENT_GENERIC_ON_OFF
7856  * @param event packet
7857  * @return target_value
7858  * @note: btstack_type 1
7859  */
7860 static inline uint8_t mesh_subevent_generic_on_off_get_target_value(const uint8_t * event){
7861     return event[7];
7862 }
7863 /**
7864  * @brief Get field remaining_time_ms from event MESH_SUBEVENT_GENERIC_ON_OFF
7865  * @param event packet
7866  * @return remaining_time_ms
7867  * @note: btstack_type 4
7868  */
7869 static inline uint32_t mesh_subevent_generic_on_off_get_remaining_time_ms(const uint8_t * event){
7870     return little_endian_read_32(event, 8);
7871 }
7872 
7873 /**
7874  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_LEVEL
7875  * @param event packet
7876  * @return dest
7877  * @note: btstack_type 2
7878  */
7879 static inline uint16_t mesh_subevent_generic_level_get_dest(const uint8_t * event){
7880     return little_endian_read_16(event, 3);
7881 }
7882 /**
7883  * @brief Get field status from event MESH_SUBEVENT_GENERIC_LEVEL
7884  * @param event packet
7885  * @return status
7886  * @note: btstack_type 1
7887  */
7888 static inline uint8_t mesh_subevent_generic_level_get_status(const uint8_t * event){
7889     return event[5];
7890 }
7891 /**
7892  * @brief Get field present_value from event MESH_SUBEVENT_GENERIC_LEVEL
7893  * @param event packet
7894  * @return present_value
7895  * @note: btstack_type 2
7896  */
7897 static inline uint16_t mesh_subevent_generic_level_get_present_value(const uint8_t * event){
7898     return little_endian_read_16(event, 6);
7899 }
7900 /**
7901  * @brief Get field target_value from event MESH_SUBEVENT_GENERIC_LEVEL
7902  * @param event packet
7903  * @return target_value
7904  * @note: btstack_type 2
7905  */
7906 static inline uint16_t mesh_subevent_generic_level_get_target_value(const uint8_t * event){
7907     return little_endian_read_16(event, 8);
7908 }
7909 /**
7910  * @brief Get field remaining_time_ms from event MESH_SUBEVENT_GENERIC_LEVEL
7911  * @param event packet
7912  * @return remaining_time_ms
7913  * @note: btstack_type 4
7914  */
7915 static inline uint32_t mesh_subevent_generic_level_get_remaining_time_ms(const uint8_t * event){
7916     return little_endian_read_32(event, 10);
7917 }
7918 
7919 /**
7920  * @brief Get field dest from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7921  * @param event packet
7922  * @return dest
7923  * @note: btstack_type 2
7924  */
7925 static inline uint16_t mesh_subevent_health_perform_test_get_dest(const uint8_t * event){
7926     return little_endian_read_16(event, 3);
7927 }
7928 /**
7929  * @brief Get field netkey_index from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7930  * @param event packet
7931  * @return netkey_index
7932  * @note: btstack_type 2
7933  */
7934 static inline uint16_t mesh_subevent_health_perform_test_get_netkey_index(const uint8_t * event){
7935     return little_endian_read_16(event, 5);
7936 }
7937 /**
7938  * @brief Get field appkey_index from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7939  * @param event packet
7940  * @return appkey_index
7941  * @note: btstack_type 2
7942  */
7943 static inline uint16_t mesh_subevent_health_perform_test_get_appkey_index(const uint8_t * event){
7944     return little_endian_read_16(event, 7);
7945 }
7946 /**
7947  * @brief Get field company_id from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7948  * @param event packet
7949  * @return company_id
7950  * @note: btstack_type 2
7951  */
7952 static inline uint16_t mesh_subevent_health_perform_test_get_company_id(const uint8_t * event){
7953     return little_endian_read_16(event, 9);
7954 }
7955 /**
7956  * @brief Get field test_id from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7957  * @param event packet
7958  * @return test_id
7959  * @note: btstack_type 1
7960  */
7961 static inline uint8_t mesh_subevent_health_perform_test_get_test_id(const uint8_t * event){
7962     return event[11];
7963 }
7964 /**
7965  * @brief Get field acknowledged from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
7966  * @param event packet
7967  * @return acknowledged
7968  * @note: btstack_type 1
7969  */
7970 static inline uint8_t mesh_subevent_health_perform_test_get_acknowledged(const uint8_t * event){
7971     return event[12];
7972 }
7973 
7974 /**
7975  * @brief Get field element_index from event MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED
7976  * @param event packet
7977  * @return element_index
7978  * @note: btstack_type 1
7979  */
7980 static inline uint8_t mesh_subevent_health_attention_timer_changed_get_element_index(const uint8_t * event){
7981     return event[3];
7982 }
7983 
7984 /**
7985  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
7986  * @param event packet
7987  * @return dest
7988  * @note: btstack_type 2
7989  */
7990 static inline uint16_t mesh_subevent_generic_default_transition_time_get_dest(const uint8_t * event){
7991     return little_endian_read_16(event, 3);
7992 }
7993 /**
7994  * @brief Get field status from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
7995  * @param event packet
7996  * @return status
7997  * @note: btstack_type 1
7998  */
7999 static inline uint8_t mesh_subevent_generic_default_transition_time_get_status(const uint8_t * event){
8000     return event[5];
8001 }
8002 /**
8003  * @brief Get field transition_time_gdtt from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
8004  * @param event packet
8005  * @return transition_time_gdtt
8006  * @note: btstack_type 1
8007  */
8008 static inline uint8_t mesh_subevent_generic_default_transition_time_get_transition_time_gdtt(const uint8_t * event){
8009     return event[6];
8010 }
8011 
8012 /**
8013  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_BEACON
8014  * @param event packet
8015  * @return dest
8016  * @note: btstack_type 2
8017  */
8018 static inline uint16_t mesh_subevent_configuration_beacon_get_dest(const uint8_t * event){
8019     return little_endian_read_16(event, 3);
8020 }
8021 /**
8022  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_BEACON
8023  * @param event packet
8024  * @return foundation_status
8025  * @note: btstack_type 1
8026  */
8027 static inline uint8_t mesh_subevent_configuration_beacon_get_foundation_status(const uint8_t * event){
8028     return event[5];
8029 }
8030 /**
8031  * @brief Get field secure_network_beacon_state from event MESH_SUBEVENT_CONFIGURATION_BEACON
8032  * @param event packet
8033  * @return secure_network_beacon_state
8034  * @note: btstack_type 1
8035  */
8036 static inline uint8_t mesh_subevent_configuration_beacon_get_secure_network_beacon_state(const uint8_t * event){
8037     return event[6];
8038 }
8039 
8040 /**
8041  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
8042  * @param event packet
8043  * @return dest
8044  * @note: btstack_type 2
8045  */
8046 static inline uint16_t mesh_subevent_configuration_default_ttl_get_dest(const uint8_t * event){
8047     return little_endian_read_16(event, 3);
8048 }
8049 /**
8050  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
8051  * @param event packet
8052  * @return foundation_status
8053  * @note: btstack_type 1
8054  */
8055 static inline uint8_t mesh_subevent_configuration_default_ttl_get_foundation_status(const uint8_t * event){
8056     return event[5];
8057 }
8058 /**
8059  * @brief Get field default_ttl from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
8060  * @param event packet
8061  * @return default_ttl
8062  * @note: btstack_type 1
8063  */
8064 static inline uint8_t mesh_subevent_configuration_default_ttl_get_default_ttl(const uint8_t * event){
8065     return event[6];
8066 }
8067 
8068 /**
8069  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
8070  * @param event packet
8071  * @return dest
8072  * @note: btstack_type 2
8073  */
8074 static inline uint16_t mesh_subevent_configuration_gatt_proxy_get_dest(const uint8_t * event){
8075     return little_endian_read_16(event, 3);
8076 }
8077 /**
8078  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
8079  * @param event packet
8080  * @return foundation_status
8081  * @note: btstack_type 1
8082  */
8083 static inline uint8_t mesh_subevent_configuration_gatt_proxy_get_foundation_status(const uint8_t * event){
8084     return event[5];
8085 }
8086 /**
8087  * @brief Get field gatt_proxy_state from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
8088  * @param event packet
8089  * @return gatt_proxy_state
8090  * @note: btstack_type 1
8091  */
8092 static inline uint8_t mesh_subevent_configuration_gatt_proxy_get_gatt_proxy_state(const uint8_t * event){
8093     return event[6];
8094 }
8095 
8096 /**
8097  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_RELAY
8098  * @param event packet
8099  * @return dest
8100  * @note: btstack_type 2
8101  */
8102 static inline uint16_t mesh_subevent_configuration_relay_get_dest(const uint8_t * event){
8103     return little_endian_read_16(event, 3);
8104 }
8105 /**
8106  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_RELAY
8107  * @param event packet
8108  * @return foundation_status
8109  * @note: btstack_type 1
8110  */
8111 static inline uint8_t mesh_subevent_configuration_relay_get_foundation_status(const uint8_t * event){
8112     return event[5];
8113 }
8114 /**
8115  * @brief Get field relay from event MESH_SUBEVENT_CONFIGURATION_RELAY
8116  * @param event packet
8117  * @return relay
8118  * @note: btstack_type 1
8119  */
8120 static inline uint8_t mesh_subevent_configuration_relay_get_relay(const uint8_t * event){
8121     return event[6];
8122 }
8123 /**
8124  * @brief Get field retransmit_count from event MESH_SUBEVENT_CONFIGURATION_RELAY
8125  * @param event packet
8126  * @return retransmit_count
8127  * @note: btstack_type 1
8128  */
8129 static inline uint8_t mesh_subevent_configuration_relay_get_retransmit_count(const uint8_t * event){
8130     return event[7];
8131 }
8132 /**
8133  * @brief Get field retransmit_interval_ms from event MESH_SUBEVENT_CONFIGURATION_RELAY
8134  * @param event packet
8135  * @return retransmit_interval_ms
8136  * @note: btstack_type 1
8137  */
8138 static inline uint8_t mesh_subevent_configuration_relay_get_retransmit_interval_ms(const uint8_t * event){
8139     return event[8];
8140 }
8141 
8142 /**
8143  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8144  * @param event packet
8145  * @return dest
8146  * @note: btstack_type 2
8147  */
8148 static inline uint16_t mesh_subevent_configuration_model_publication_get_dest(const uint8_t * event){
8149     return little_endian_read_16(event, 3);
8150 }
8151 /**
8152  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8153  * @param event packet
8154  * @return foundation_status
8155  * @note: btstack_type 1
8156  */
8157 static inline uint8_t mesh_subevent_configuration_model_publication_get_foundation_status(const uint8_t * event){
8158     return event[5];
8159 }
8160 /**
8161  * @brief Get field publish_address from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8162  * @param event packet
8163  * @return publish_address
8164  * @note: btstack_type 2
8165  */
8166 static inline uint16_t mesh_subevent_configuration_model_publication_get_publish_address(const uint8_t * event){
8167     return little_endian_read_16(event, 6);
8168 }
8169 /**
8170  * @brief Get field appkey_index from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8171  * @param event packet
8172  * @return appkey_index
8173  * @note: btstack_type 2
8174  */
8175 static inline uint16_t mesh_subevent_configuration_model_publication_get_appkey_index(const uint8_t * event){
8176     return little_endian_read_16(event, 8);
8177 }
8178 /**
8179  * @brief Get field credential_flag from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8180  * @param event packet
8181  * @return credential_flag
8182  * @note: btstack_type 1
8183  */
8184 static inline uint8_t mesh_subevent_configuration_model_publication_get_credential_flag(const uint8_t * event){
8185     return event[10];
8186 }
8187 /**
8188  * @brief Get field publish_ttl from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8189  * @param event packet
8190  * @return publish_ttl
8191  * @note: btstack_type 1
8192  */
8193 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_ttl(const uint8_t * event){
8194     return event[11];
8195 }
8196 /**
8197  * @brief Get field publish_period from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8198  * @param event packet
8199  * @return publish_period
8200  * @note: btstack_type 1
8201  */
8202 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_period(const uint8_t * event){
8203     return event[12];
8204 }
8205 /**
8206  * @brief Get field publish_retransmit_count from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8207  * @param event packet
8208  * @return publish_retransmit_count
8209  * @note: btstack_type 1
8210  */
8211 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_retransmit_count(const uint8_t * event){
8212     return event[13];
8213 }
8214 /**
8215  * @brief Get field publish_retransmit_interval_steps from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8216  * @param event packet
8217  * @return publish_retransmit_interval_steps
8218  * @note: btstack_type 1
8219  */
8220 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_retransmit_interval_steps(const uint8_t * event){
8221     return event[14];
8222 }
8223 /**
8224  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
8225  * @param event packet
8226  * @return model_identifier
8227  * @note: btstack_type 4
8228  */
8229 static inline uint32_t mesh_subevent_configuration_model_publication_get_model_identifier(const uint8_t * event){
8230     return little_endian_read_32(event, 15);
8231 }
8232 
8233 /**
8234  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
8235  * @param event packet
8236  * @return dest
8237  * @note: btstack_type 2
8238  */
8239 static inline uint16_t mesh_subevent_configuration_model_subscription_get_dest(const uint8_t * event){
8240     return little_endian_read_16(event, 3);
8241 }
8242 /**
8243  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
8244  * @param event packet
8245  * @return foundation_status
8246  * @note: btstack_type 1
8247  */
8248 static inline uint8_t mesh_subevent_configuration_model_subscription_get_foundation_status(const uint8_t * event){
8249     return event[5];
8250 }
8251 /**
8252  * @brief Get field address from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
8253  * @param event packet
8254  * @return address
8255  * @note: btstack_type 2
8256  */
8257 static inline uint16_t mesh_subevent_configuration_model_subscription_get_address(const uint8_t * event){
8258     return little_endian_read_16(event, 6);
8259 }
8260 /**
8261  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
8262  * @param event packet
8263  * @return model_identifier
8264  * @note: btstack_type 4
8265  */
8266 static inline uint32_t mesh_subevent_configuration_model_subscription_get_model_identifier(const uint8_t * event){
8267     return little_endian_read_32(event, 8);
8268 }
8269 
8270 /**
8271  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8272  * @param event packet
8273  * @return dest
8274  * @note: btstack_type 2
8275  */
8276 static inline uint16_t mesh_subevent_configuration_model_subscription_list_item_get_dest(const uint8_t * event){
8277     return little_endian_read_16(event, 3);
8278 }
8279 /**
8280  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8281  * @param event packet
8282  * @return foundation_status
8283  * @note: btstack_type 1
8284  */
8285 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_foundation_status(const uint8_t * event){
8286     return event[5];
8287 }
8288 /**
8289  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8290  * @param event packet
8291  * @return model_identifier
8292  * @note: btstack_type 4
8293  */
8294 static inline uint32_t mesh_subevent_configuration_model_subscription_list_item_get_model_identifier(const uint8_t * event){
8295     return little_endian_read_32(event, 6);
8296 }
8297 /**
8298  * @brief Get field num_subscription_addresses from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8299  * @param event packet
8300  * @return num_subscription_addresses
8301  * @note: btstack_type 1
8302  */
8303 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_num_subscription_addresses(const uint8_t * event){
8304     return event[10];
8305 }
8306 /**
8307  * @brief Get field subscription_address_pos from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8308  * @param event packet
8309  * @return subscription_address_pos
8310  * @note: btstack_type 1
8311  */
8312 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_subscription_address_pos(const uint8_t * event){
8313     return event[11];
8314 }
8315 /**
8316  * @brief Get field subscription_address_item from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
8317  * @param event packet
8318  * @return subscription_address_item
8319  * @note: btstack_type 2
8320  */
8321 static inline uint16_t mesh_subevent_configuration_model_subscription_list_item_get_subscription_address_item(const uint8_t * event){
8322     return little_endian_read_16(event, 12);
8323 }
8324 
8325 /**
8326  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX
8327  * @param event packet
8328  * @return dest
8329  * @note: btstack_type 2
8330  */
8331 static inline uint16_t mesh_subevent_configuration_netkey_index_get_dest(const uint8_t * event){
8332     return little_endian_read_16(event, 3);
8333 }
8334 /**
8335  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX
8336  * @param event packet
8337  * @return foundation_status
8338  * @note: btstack_type 1
8339  */
8340 static inline uint8_t mesh_subevent_configuration_netkey_index_get_foundation_status(const uint8_t * event){
8341     return event[5];
8342 }
8343 
8344 /**
8345  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
8346  * @param event packet
8347  * @return dest
8348  * @note: btstack_type 2
8349  */
8350 static inline uint16_t mesh_subevent_configuration_netkey_index_list_item_get_dest(const uint8_t * event){
8351     return little_endian_read_16(event, 3);
8352 }
8353 /**
8354  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
8355  * @param event packet
8356  * @return foundation_status
8357  * @note: btstack_type 1
8358  */
8359 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_foundation_status(const uint8_t * event){
8360     return event[5];
8361 }
8362 /**
8363  * @brief Get field num_netkey_indexes from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
8364  * @param event packet
8365  * @return num_netkey_indexes
8366  * @note: btstack_type 1
8367  */
8368 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_num_netkey_indexes(const uint8_t * event){
8369     return event[6];
8370 }
8371 /**
8372  * @brief Get field netkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
8373  * @param event packet
8374  * @return netkey_index_pos
8375  * @note: btstack_type 1
8376  */
8377 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_netkey_index_pos(const uint8_t * event){
8378     return event[7];
8379 }
8380 /**
8381  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
8382  * @param event packet
8383  * @return netkey_index_item
8384  * @note: btstack_type 2
8385  */
8386 static inline uint16_t mesh_subevent_configuration_netkey_index_list_item_get_netkey_index_item(const uint8_t * event){
8387     return little_endian_read_16(event, 8);
8388 }
8389 
8390 /**
8391  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
8392  * @param event packet
8393  * @return dest
8394  * @note: btstack_type 2
8395  */
8396 static inline uint16_t mesh_subevent_configuration_appkey_index_get_dest(const uint8_t * event){
8397     return little_endian_read_16(event, 3);
8398 }
8399 /**
8400  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
8401  * @param event packet
8402  * @return foundation_status
8403  * @note: btstack_type 1
8404  */
8405 static inline uint8_t mesh_subevent_configuration_appkey_index_get_foundation_status(const uint8_t * event){
8406     return event[5];
8407 }
8408 /**
8409  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
8410  * @param event packet
8411  * @return netkey_index_item
8412  * @note: btstack_type 2
8413  */
8414 static inline uint16_t mesh_subevent_configuration_appkey_index_get_netkey_index_item(const uint8_t * event){
8415     return little_endian_read_16(event, 6);
8416 }
8417 /**
8418  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
8419  * @param event packet
8420  * @return appkey_index_item
8421  * @note: btstack_type 2
8422  */
8423 static inline uint16_t mesh_subevent_configuration_appkey_index_get_appkey_index_item(const uint8_t * event){
8424     return little_endian_read_16(event, 8);
8425 }
8426 
8427 /**
8428  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8429  * @param event packet
8430  * @return dest
8431  * @note: btstack_type 2
8432  */
8433 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_dest(const uint8_t * event){
8434     return little_endian_read_16(event, 3);
8435 }
8436 /**
8437  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8438  * @param event packet
8439  * @return foundation_status
8440  * @note: btstack_type 1
8441  */
8442 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_foundation_status(const uint8_t * event){
8443     return event[5];
8444 }
8445 /**
8446  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8447  * @param event packet
8448  * @return netkey_index
8449  * @note: btstack_type 2
8450  */
8451 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_netkey_index(const uint8_t * event){
8452     return little_endian_read_16(event, 6);
8453 }
8454 /**
8455  * @brief Get field num_appkey_indexes from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8456  * @param event packet
8457  * @return num_appkey_indexes
8458  * @note: btstack_type 1
8459  */
8460 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_num_appkey_indexes(const uint8_t * event){
8461     return event[8];
8462 }
8463 /**
8464  * @brief Get field appkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8465  * @param event packet
8466  * @return appkey_index_pos
8467  * @note: btstack_type 1
8468  */
8469 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_appkey_index_pos(const uint8_t * event){
8470     return event[9];
8471 }
8472 /**
8473  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8474  * @param event packet
8475  * @return netkey_index_item
8476  * @note: btstack_type 2
8477  */
8478 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_netkey_index_item(const uint8_t * event){
8479     return little_endian_read_16(event, 10);
8480 }
8481 /**
8482  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
8483  * @param event packet
8484  * @return appkey_index_item
8485  * @note: btstack_type 2
8486  */
8487 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_appkey_index_item(const uint8_t * event){
8488     return little_endian_read_16(event, 12);
8489 }
8490 
8491 /**
8492  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
8493  * @param event packet
8494  * @return dest
8495  * @note: btstack_type 2
8496  */
8497 static inline uint16_t mesh_subevent_configuration_node_identity_get_dest(const uint8_t * event){
8498     return little_endian_read_16(event, 3);
8499 }
8500 /**
8501  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
8502  * @param event packet
8503  * @return foundation_status
8504  * @note: btstack_type 1
8505  */
8506 static inline uint8_t mesh_subevent_configuration_node_identity_get_foundation_status(const uint8_t * event){
8507     return event[5];
8508 }
8509 /**
8510  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
8511  * @param event packet
8512  * @return netkey_index_item
8513  * @note: btstack_type 2
8514  */
8515 static inline uint16_t mesh_subevent_configuration_node_identity_get_netkey_index_item(const uint8_t * event){
8516     return little_endian_read_16(event, 6);
8517 }
8518 /**
8519  * @brief Get field identity_status from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
8520  * @param event packet
8521  * @return identity_status
8522  * @note: btstack_type 1
8523  */
8524 static inline uint8_t mesh_subevent_configuration_node_identity_get_identity_status(const uint8_t * event){
8525     return event[8];
8526 }
8527 
8528 /**
8529  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
8530  * @param event packet
8531  * @return dest
8532  * @note: btstack_type 2
8533  */
8534 static inline uint16_t mesh_subevent_configuration_model_app_get_dest(const uint8_t * event){
8535     return little_endian_read_16(event, 3);
8536 }
8537 /**
8538  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
8539  * @param event packet
8540  * @return foundation_status
8541  * @note: btstack_type 1
8542  */
8543 static inline uint8_t mesh_subevent_configuration_model_app_get_foundation_status(const uint8_t * event){
8544     return event[5];
8545 }
8546 /**
8547  * @brief Get field appkey_index from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
8548  * @param event packet
8549  * @return appkey_index
8550  * @note: btstack_type 2
8551  */
8552 static inline uint16_t mesh_subevent_configuration_model_app_get_appkey_index(const uint8_t * event){
8553     return little_endian_read_16(event, 6);
8554 }
8555 /**
8556  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
8557  * @param event packet
8558  * @return model_identifier
8559  * @note: btstack_type 4
8560  */
8561 static inline uint32_t mesh_subevent_configuration_model_app_get_model_identifier(const uint8_t * event){
8562     return little_endian_read_32(event, 8);
8563 }
8564 
8565 /**
8566  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8567  * @param event packet
8568  * @return dest
8569  * @note: btstack_type 2
8570  */
8571 static inline uint16_t mesh_subevent_configuration_model_app_list_item_get_dest(const uint8_t * event){
8572     return little_endian_read_16(event, 3);
8573 }
8574 /**
8575  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8576  * @param event packet
8577  * @return foundation_status
8578  * @note: btstack_type 1
8579  */
8580 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_foundation_status(const uint8_t * event){
8581     return event[5];
8582 }
8583 /**
8584  * @brief Get field model_id from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8585  * @param event packet
8586  * @return model_id
8587  * @note: btstack_type 4
8588  */
8589 static inline uint32_t mesh_subevent_configuration_model_app_list_item_get_model_id(const uint8_t * event){
8590     return little_endian_read_32(event, 6);
8591 }
8592 /**
8593  * @brief Get field num_appkey_indexes from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8594  * @param event packet
8595  * @return num_appkey_indexes
8596  * @note: btstack_type 1
8597  */
8598 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_num_appkey_indexes(const uint8_t * event){
8599     return event[10];
8600 }
8601 /**
8602  * @brief Get field appkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8603  * @param event packet
8604  * @return appkey_index_pos
8605  * @note: btstack_type 1
8606  */
8607 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_appkey_index_pos(const uint8_t * event){
8608     return event[11];
8609 }
8610 /**
8611  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
8612  * @param event packet
8613  * @return appkey_index_item
8614  * @note: btstack_type 2
8615  */
8616 static inline uint16_t mesh_subevent_configuration_model_app_list_item_get_appkey_index_item(const uint8_t * event){
8617     return little_endian_read_16(event, 12);
8618 }
8619 
8620 /**
8621  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NODE_RESET
8622  * @param event packet
8623  * @return dest
8624  * @note: btstack_type 2
8625  */
8626 static inline uint16_t mesh_subevent_configuration_node_reset_get_dest(const uint8_t * event){
8627     return little_endian_read_16(event, 3);
8628 }
8629 /**
8630  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NODE_RESET
8631  * @param event packet
8632  * @return foundation_status
8633  * @note: btstack_type 1
8634  */
8635 static inline uint8_t mesh_subevent_configuration_node_reset_get_foundation_status(const uint8_t * event){
8636     return event[5];
8637 }
8638 
8639 /**
8640  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_FRIEND
8641  * @param event packet
8642  * @return dest
8643  * @note: btstack_type 2
8644  */
8645 static inline uint16_t mesh_subevent_configuration_friend_get_dest(const uint8_t * event){
8646     return little_endian_read_16(event, 3);
8647 }
8648 /**
8649  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_FRIEND
8650  * @param event packet
8651  * @return foundation_status
8652  * @note: btstack_type 1
8653  */
8654 static inline uint8_t mesh_subevent_configuration_friend_get_foundation_status(const uint8_t * event){
8655     return event[5];
8656 }
8657 /**
8658  * @brief Get field friend_state from event MESH_SUBEVENT_CONFIGURATION_FRIEND
8659  * @param event packet
8660  * @return friend_state
8661  * @note: btstack_type 1
8662  */
8663 static inline uint8_t mesh_subevent_configuration_friend_get_friend_state(const uint8_t * event){
8664     return event[6];
8665 }
8666 
8667 /**
8668  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
8669  * @param event packet
8670  * @return dest
8671  * @note: btstack_type 2
8672  */
8673 static inline uint16_t mesh_subevent_configuration_key_refresh_phase_get_dest(const uint8_t * event){
8674     return little_endian_read_16(event, 3);
8675 }
8676 /**
8677  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
8678  * @param event packet
8679  * @return foundation_status
8680  * @note: btstack_type 1
8681  */
8682 static inline uint8_t mesh_subevent_configuration_key_refresh_phase_get_foundation_status(const uint8_t * event){
8683     return event[5];
8684 }
8685 /**
8686  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
8687  * @param event packet
8688  * @return netkey_index
8689  * @note: btstack_type 2
8690  */
8691 static inline uint16_t mesh_subevent_configuration_key_refresh_phase_get_netkey_index(const uint8_t * event){
8692     return little_endian_read_16(event, 6);
8693 }
8694 /**
8695  * @brief Get field phase from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
8696  * @param event packet
8697  * @return phase
8698  * @note: btstack_type 1
8699  */
8700 static inline uint8_t mesh_subevent_configuration_key_refresh_phase_get_phase(const uint8_t * event){
8701     return event[8];
8702 }
8703 
8704 /**
8705  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8706  * @param event packet
8707  * @return dest
8708  * @note: btstack_type 2
8709  */
8710 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_dest(const uint8_t * event){
8711     return little_endian_read_16(event, 3);
8712 }
8713 /**
8714  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8715  * @param event packet
8716  * @return foundation_status
8717  * @note: btstack_type 1
8718  */
8719 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_foundation_status(const uint8_t * event){
8720     return event[5];
8721 }
8722 /**
8723  * @brief Get field heartbeat_destination from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8724  * @param event packet
8725  * @return heartbeat_destination
8726  * @note: btstack_type 2
8727  */
8728 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_heartbeat_destination(const uint8_t * event){
8729     return little_endian_read_16(event, 6);
8730 }
8731 /**
8732  * @brief Get field count_log from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8733  * @param event packet
8734  * @return count_log
8735  * @note: btstack_type 1
8736  */
8737 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_count_log(const uint8_t * event){
8738     return event[8];
8739 }
8740 /**
8741  * @brief Get field period_log from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8742  * @param event packet
8743  * @return period_log
8744  * @note: btstack_type 1
8745  */
8746 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_period_log(const uint8_t * event){
8747     return event[9];
8748 }
8749 /**
8750  * @brief Get field ttl from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8751  * @param event packet
8752  * @return ttl
8753  * @note: btstack_type 1
8754  */
8755 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_ttl(const uint8_t * event){
8756     return event[10];
8757 }
8758 /**
8759  * @brief Get field features from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8760  * @param event packet
8761  * @return features
8762  * @note: btstack_type 2
8763  */
8764 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_features(const uint8_t * event){
8765     return little_endian_read_16(event, 11);
8766 }
8767 /**
8768  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
8769  * @param event packet
8770  * @return netkey_index
8771  * @note: btstack_type 2
8772  */
8773 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_netkey_index(const uint8_t * event){
8774     return little_endian_read_16(event, 13);
8775 }
8776 
8777 /**
8778  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8779  * @param event packet
8780  * @return dest
8781  * @note: btstack_type 2
8782  */
8783 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_dest(const uint8_t * event){
8784     return little_endian_read_16(event, 3);
8785 }
8786 /**
8787  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8788  * @param event packet
8789  * @return foundation_status
8790  * @note: btstack_type 1
8791  */
8792 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_foundation_status(const uint8_t * event){
8793     return event[5];
8794 }
8795 /**
8796  * @brief Get field heartbeat_destination from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8797  * @param event packet
8798  * @return heartbeat_destination
8799  * @note: btstack_type 2
8800  */
8801 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_heartbeat_destination(const uint8_t * event){
8802     return little_endian_read_16(event, 6);
8803 }
8804 /**
8805  * @brief Get field heartbeat_source from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8806  * @param event packet
8807  * @return heartbeat_source
8808  * @note: btstack_type 2
8809  */
8810 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_heartbeat_source(const uint8_t * event){
8811     return little_endian_read_16(event, 8);
8812 }
8813 /**
8814  * @brief Get field count_log from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8815  * @param event packet
8816  * @return count_log
8817  * @note: btstack_type 1
8818  */
8819 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_count_log(const uint8_t * event){
8820     return event[10];
8821 }
8822 /**
8823  * @brief Get field period_log from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8824  * @param event packet
8825  * @return period_log
8826  * @note: btstack_type 1
8827  */
8828 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_period_log(const uint8_t * event){
8829     return event[11];
8830 }
8831 /**
8832  * @brief Get field min_hops from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8833  * @param event packet
8834  * @return min_hops
8835  * @note: btstack_type 1
8836  */
8837 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_min_hops(const uint8_t * event){
8838     return event[12];
8839 }
8840 /**
8841  * @brief Get field max_hops from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
8842  * @param event packet
8843  * @return max_hops
8844  * @note: btstack_type 1
8845  */
8846 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_max_hops(const uint8_t * event){
8847     return event[13];
8848 }
8849 
8850 /**
8851  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
8852  * @param event packet
8853  * @return dest
8854  * @note: btstack_type 2
8855  */
8856 static inline uint16_t mesh_subevent_configuration_low_power_node_poll_timeout_get_dest(const uint8_t * event){
8857     return little_endian_read_16(event, 3);
8858 }
8859 /**
8860  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
8861  * @param event packet
8862  * @return foundation_status
8863  * @note: btstack_type 1
8864  */
8865 static inline uint8_t mesh_subevent_configuration_low_power_node_poll_timeout_get_foundation_status(const uint8_t * event){
8866     return event[5];
8867 }
8868 /**
8869  * @brief Get field lpn_address from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
8870  * @param event packet
8871  * @return lpn_address
8872  * @note: btstack_type 2
8873  */
8874 static inline uint16_t mesh_subevent_configuration_low_power_node_poll_timeout_get_lpn_address(const uint8_t * event){
8875     return little_endian_read_16(event, 6);
8876 }
8877 /**
8878  * @brief Get field poll_timeout from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
8879  * @param event packet
8880  * @return poll_timeout
8881  * @note: btstack_type 3
8882  */
8883 static inline uint32_t mesh_subevent_configuration_low_power_node_poll_timeout_get_poll_timeout(const uint8_t * event){
8884     return little_endian_read_24(event, 8);
8885 }
8886 
8887 /**
8888  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
8889  * @param event packet
8890  * @return dest
8891  * @note: btstack_type 2
8892  */
8893 static inline uint16_t mesh_subevent_configuration_network_transmit_get_dest(const uint8_t * event){
8894     return little_endian_read_16(event, 3);
8895 }
8896 /**
8897  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
8898  * @param event packet
8899  * @return foundation_status
8900  * @note: btstack_type 1
8901  */
8902 static inline uint8_t mesh_subevent_configuration_network_transmit_get_foundation_status(const uint8_t * event){
8903     return event[5];
8904 }
8905 /**
8906  * @brief Get field transmit_count from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
8907  * @param event packet
8908  * @return transmit_count
8909  * @note: btstack_type 1
8910  */
8911 static inline uint8_t mesh_subevent_configuration_network_transmit_get_transmit_count(const uint8_t * event){
8912     return event[6];
8913 }
8914 /**
8915  * @brief Get field transmit_interval_steps_ms from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
8916  * @param event packet
8917  * @return transmit_interval_steps_ms
8918  * @note: btstack_type 2
8919  */
8920 static inline uint16_t mesh_subevent_configuration_network_transmit_get_transmit_interval_steps_ms(const uint8_t * event){
8921     return little_endian_read_16(event, 7);
8922 }
8923 
8924 
8925 
8926 /* API_END */
8927 
8928 #if defined __cplusplus
8929 }
8930 #endif
8931 
8932 #endif // BTSTACK_EVENT_H
8933