xref: /btstack/src/btstack_event.h (revision 3ad98ca75b8fb8e2311cafba48e9ae2d0861289c)
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 BLUEKITCHEN
24  * GMBH 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  * HCI Event Getter
41  *
42  * Note: Don't edit this file. It is generated by tool/btstack_event_generator.py
43  *
44  */
45 
46 #ifndef BTSTACK_EVENT_H
47 #define BTSTACK_EVENT_H
48 
49 #if defined __cplusplus
50 extern "C" {
51 #endif
52 
53 #include "btstack_util.h"
54 #include <stdint.h>
55 
56 #ifdef ENABLE_BLE
57 #include "ble/gatt_client.h"
58 #endif
59 
60 /* API_START */
61 
62 /**
63  * @brief Get event type
64  * @param event
65  * @return type of event
66  */
67 static inline uint8_t hci_event_packet_get_type(const uint8_t * event){
68     return event[0];
69 }
70 
71 /***
72  * @brief Get subevent code for a2dp event
73  * @param event packet
74  * @return subevent_code
75  */
76 static inline uint8_t hci_event_a2dp_meta_get_subevent_code(const uint8_t * event){
77     return event[2];
78 }
79 /***
80  * @brief Get subevent code for ancs event
81  * @param event packet
82  * @return subevent_code
83  */
84 static inline uint8_t hci_event_ancs_meta_get_subevent_code(const uint8_t * event){
85     return event[2];
86 }
87 /***
88  * @brief Get subevent code for avdtp event
89  * @param event packet
90  * @return subevent_code
91  */
92 static inline uint8_t hci_event_avdtp_meta_get_subevent_code(const uint8_t * event){
93     return event[2];
94 }
95 /***
96  * @brief Get subevent code for avrcp event
97  * @param event packet
98  * @return subevent_code
99  */
100 static inline uint8_t hci_event_avrcp_meta_get_subevent_code(const uint8_t * event){
101     return event[2];
102 }
103 /***
104  * @brief Get subevent code for gap event
105  * @param event packet
106  * @return subevent_code
107  */
108 static inline uint8_t hci_event_gap_meta_get_subevent_code(const uint8_t * event){
109     return event[2];
110 }
111 /***
112  * @brief Get subevent code for gattservice event
113  * @param event packet
114  * @return subevent_code
115  */
116 static inline uint8_t hci_event_gattservice_meta_get_subevent_code(const uint8_t * event){
117     return event[2];
118 }
119 /***
120  * @brief Get subevent code for goep event
121  * @param event packet
122  * @return subevent_code
123  */
124 static inline uint8_t hci_event_goep_meta_get_subevent_code(const uint8_t * event){
125     return event[2];
126 }
127 /***
128  * @brief Get subevent code for hfp event
129  * @param event packet
130  * @return subevent_code
131  */
132 static inline uint8_t hci_event_hfp_meta_get_subevent_code(const uint8_t * event){
133     return event[2];
134 }
135 /***
136  * @brief Get subevent code for hid event
137  * @param event packet
138  * @return subevent_code
139  */
140 static inline uint8_t hci_event_hid_meta_get_subevent_code(const uint8_t * event){
141     return event[2];
142 }
143 /***
144  * @brief Get subevent code for hids event
145  * @param event packet
146  * @return subevent_code
147  */
148 static inline uint8_t hci_event_hids_meta_get_subevent_code(const uint8_t * event){
149     return event[2];
150 }
151 /***
152  * @brief Get subevent code for hsp event
153  * @param event packet
154  * @return subevent_code
155  */
156 static inline uint8_t hci_event_hsp_meta_get_subevent_code(const uint8_t * event){
157     return event[2];
158 }
159 /***
160  * @brief Get subevent code for le event
161  * @param event packet
162  * @return subevent_code
163  */
164 static inline uint8_t hci_event_le_meta_get_subevent_code(const uint8_t * event){
165     return event[2];
166 }
167 /***
168  * @brief Get subevent code for map event
169  * @param event packet
170  * @return subevent_code
171  */
172 static inline uint8_t hci_event_map_meta_get_subevent_code(const uint8_t * event){
173     return event[2];
174 }
175 /***
176  * @brief Get subevent code for mesh event
177  * @param event packet
178  * @return subevent_code
179  */
180 static inline uint8_t hci_event_mesh_meta_get_subevent_code(const uint8_t * event){
181     return event[2];
182 }
183 /***
184  * @brief Get subevent code for pbap event
185  * @param event packet
186  * @return subevent_code
187  */
188 static inline uint8_t hci_event_pbap_meta_get_subevent_code(const uint8_t * event){
189     return event[2];
190 }
191 /**
192  * @brief Get field status from event HCI_EVENT_INQUIRY_COMPLETE
193  * @param event packet
194  * @return status
195  * @note: btstack_type 1
196  */
197 static inline uint8_t hci_event_inquiry_complete_get_status(const uint8_t * event){
198     return event[2];
199 }
200 
201 /**
202  * @brief Get field num_responses from event HCI_EVENT_INQUIRY_RESULT
203  * @param event packet
204  * @return num_responses
205  * @note: btstack_type 1
206  */
207 static inline uint8_t hci_event_inquiry_result_get_num_responses(const uint8_t * event){
208     return event[2];
209 }
210 /**
211  * @brief Get field bd_addr from event HCI_EVENT_INQUIRY_RESULT
212  * @param event packet
213  * @param Pointer to storage for bd_addr
214  * @note: btstack_type B
215  */
216 static inline void hci_event_inquiry_result_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
217     reverse_bytes(&event[3], bd_addr, 6);
218 }
219 /**
220  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_INQUIRY_RESULT
221  * @param event packet
222  * @return page_scan_repetition_mode
223  * @note: btstack_type 1
224  */
225 static inline uint8_t hci_event_inquiry_result_get_page_scan_repetition_mode(const uint8_t * event){
226     return event[9];
227 }
228 /**
229  * @brief Get field reserved1 from event HCI_EVENT_INQUIRY_RESULT
230  * @param event packet
231  * @return reserved1
232  * @note: btstack_type 1
233  */
234 static inline uint8_t hci_event_inquiry_result_get_reserved1(const uint8_t * event){
235     return event[10];
236 }
237 /**
238  * @brief Get field reserved2 from event HCI_EVENT_INQUIRY_RESULT
239  * @param event packet
240  * @return reserved2
241  * @note: btstack_type 1
242  */
243 static inline uint8_t hci_event_inquiry_result_get_reserved2(const uint8_t * event){
244     return event[11];
245 }
246 /**
247  * @brief Get field class_of_device from event HCI_EVENT_INQUIRY_RESULT
248  * @param event packet
249  * @return class_of_device
250  * @note: btstack_type 3
251  */
252 static inline uint32_t hci_event_inquiry_result_get_class_of_device(const uint8_t * event){
253     return little_endian_read_24(event, 12);
254 }
255 /**
256  * @brief Get field clock_offset from event HCI_EVENT_INQUIRY_RESULT
257  * @param event packet
258  * @return clock_offset
259  * @note: btstack_type 2
260  */
261 static inline uint16_t hci_event_inquiry_result_get_clock_offset(const uint8_t * event){
262     return little_endian_read_16(event, 15);
263 }
264 
265 /**
266  * @brief Get field status from event HCI_EVENT_CONNECTION_COMPLETE
267  * @param event packet
268  * @return status
269  * @note: btstack_type 1
270  */
271 static inline uint8_t hci_event_connection_complete_get_status(const uint8_t * event){
272     return event[2];
273 }
274 /**
275  * @brief Get field connection_handle from event HCI_EVENT_CONNECTION_COMPLETE
276  * @param event packet
277  * @return connection_handle
278  * @note: btstack_type 2
279  */
280 static inline uint16_t hci_event_connection_complete_get_connection_handle(const uint8_t * event){
281     return little_endian_read_16(event, 3);
282 }
283 /**
284  * @brief Get field bd_addr from event HCI_EVENT_CONNECTION_COMPLETE
285  * @param event packet
286  * @param Pointer to storage for bd_addr
287  * @note: btstack_type B
288  */
289 static inline void hci_event_connection_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
290     reverse_bytes(&event[5], bd_addr, 6);
291 }
292 /**
293  * @brief Get field link_type from event HCI_EVENT_CONNECTION_COMPLETE
294  * @param event packet
295  * @return link_type
296  * @note: btstack_type 1
297  */
298 static inline uint8_t hci_event_connection_complete_get_link_type(const uint8_t * event){
299     return event[11];
300 }
301 /**
302  * @brief Get field encryption_enabled from event HCI_EVENT_CONNECTION_COMPLETE
303  * @param event packet
304  * @return encryption_enabled
305  * @note: btstack_type 1
306  */
307 static inline uint8_t hci_event_connection_complete_get_encryption_enabled(const uint8_t * event){
308     return event[12];
309 }
310 
311 /**
312  * @brief Get field bd_addr from event HCI_EVENT_CONNECTION_REQUEST
313  * @param event packet
314  * @param Pointer to storage for bd_addr
315  * @note: btstack_type B
316  */
317 static inline void hci_event_connection_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
318     reverse_bytes(&event[2], bd_addr, 6);
319 }
320 /**
321  * @brief Get field class_of_device from event HCI_EVENT_CONNECTION_REQUEST
322  * @param event packet
323  * @return class_of_device
324  * @note: btstack_type 3
325  */
326 static inline uint32_t hci_event_connection_request_get_class_of_device(const uint8_t * event){
327     return little_endian_read_24(event, 8);
328 }
329 /**
330  * @brief Get field link_type from event HCI_EVENT_CONNECTION_REQUEST
331  * @param event packet
332  * @return link_type
333  * @note: btstack_type 1
334  */
335 static inline uint8_t hci_event_connection_request_get_link_type(const uint8_t * event){
336     return event[11];
337 }
338 
339 /**
340  * @brief Get field status from event HCI_EVENT_DISCONNECTION_COMPLETE
341  * @param event packet
342  * @return status
343  * @note: btstack_type 1
344  */
345 static inline uint8_t hci_event_disconnection_complete_get_status(const uint8_t * event){
346     return event[2];
347 }
348 /**
349  * @brief Get field connection_handle from event HCI_EVENT_DISCONNECTION_COMPLETE
350  * @param event packet
351  * @return connection_handle
352  * @note: btstack_type 2
353  */
354 static inline uint16_t hci_event_disconnection_complete_get_connection_handle(const uint8_t * event){
355     return little_endian_read_16(event, 3);
356 }
357 /**
358  * @brief Get field reason from event HCI_EVENT_DISCONNECTION_COMPLETE
359  * @param event packet
360  * @return reason
361  * @note: btstack_type 1
362  */
363 static inline uint8_t hci_event_disconnection_complete_get_reason(const uint8_t * event){
364     return event[5];
365 }
366 
367 /**
368  * @brief Get field status from event HCI_EVENT_AUTHENTICATION_COMPLETE
369  * @param event packet
370  * @return status
371  * @note: btstack_type 1
372  */
373 static inline uint8_t hci_event_authentication_complete_get_status(const uint8_t * event){
374     return event[2];
375 }
376 /**
377  * @brief Get field connection_handle from event HCI_EVENT_AUTHENTICATION_COMPLETE
378  * @param event packet
379  * @return connection_handle
380  * @note: btstack_type 2
381  */
382 static inline uint16_t hci_event_authentication_complete_get_connection_handle(const uint8_t * event){
383     return little_endian_read_16(event, 3);
384 }
385 
386 /**
387  * @brief Get field status from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
388  * @param event packet
389  * @return status
390  * @note: btstack_type 1
391  */
392 static inline uint8_t hci_event_remote_name_request_complete_get_status(const uint8_t * event){
393     return event[2];
394 }
395 /**
396  * @brief Get field bd_addr from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
397  * @param event packet
398  * @param Pointer to storage for bd_addr
399  * @note: btstack_type B
400  */
401 static inline void hci_event_remote_name_request_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
402     reverse_bytes(&event[3], bd_addr, 6);
403 }
404 /**
405  * @brief Get field remote_name from event HCI_EVENT_REMOTE_NAME_REQUEST_COMPLETE
406  * @param event packet
407  * @return remote_name
408  * @note: btstack_type N
409  */
410 static inline const char * hci_event_remote_name_request_complete_get_remote_name(const uint8_t * event){
411     return (const char *) &event[9];
412 }
413 
414 /**
415  * @brief Get field status from event HCI_EVENT_ENCRYPTION_CHANGE
416  * @param event packet
417  * @return status
418  * @note: btstack_type 1
419  */
420 static inline uint8_t hci_event_encryption_change_get_status(const uint8_t * event){
421     return event[2];
422 }
423 /**
424  * @brief Get field connection_handle from event HCI_EVENT_ENCRYPTION_CHANGE
425  * @param event packet
426  * @return connection_handle
427  * @note: btstack_type 2
428  */
429 static inline uint16_t hci_event_encryption_change_get_connection_handle(const uint8_t * event){
430     return little_endian_read_16(event, 3);
431 }
432 /**
433  * @brief Get field encryption_enabled from event HCI_EVENT_ENCRYPTION_CHANGE
434  * @param event packet
435  * @return encryption_enabled
436  * @note: btstack_type 1
437  */
438 static inline uint8_t hci_event_encryption_change_get_encryption_enabled(const uint8_t * event){
439     return event[5];
440 }
441 
442 /**
443  * @brief Get field status from event HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
444  * @param event packet
445  * @return status
446  * @note: btstack_type 1
447  */
448 static inline uint8_t hci_event_change_connection_link_key_complete_get_status(const uint8_t * event){
449     return event[2];
450 }
451 /**
452  * @brief Get field connection_handle from event HCI_EVENT_CHANGE_CONNECTION_LINK_KEY_COMPLETE
453  * @param event packet
454  * @return connection_handle
455  * @note: btstack_type 2
456  */
457 static inline uint16_t hci_event_change_connection_link_key_complete_get_connection_handle(const uint8_t * event){
458     return little_endian_read_16(event, 3);
459 }
460 
461 /**
462  * @brief Get field status from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
463  * @param event packet
464  * @return status
465  * @note: btstack_type 1
466  */
467 static inline uint8_t hci_event_master_link_key_complete_get_status(const uint8_t * event){
468     return event[2];
469 }
470 /**
471  * @brief Get field connection_handle from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
472  * @param event packet
473  * @return connection_handle
474  * @note: btstack_type 2
475  */
476 static inline uint16_t hci_event_master_link_key_complete_get_connection_handle(const uint8_t * event){
477     return little_endian_read_16(event, 3);
478 }
479 /**
480  * @brief Get field key_flag from event HCI_EVENT_MASTER_LINK_KEY_COMPLETE
481  * @param event packet
482  * @return key_flag
483  * @note: btstack_type 1
484  */
485 static inline uint8_t hci_event_master_link_key_complete_get_key_flag(const uint8_t * event){
486     return event[5];
487 }
488 
489 /**
490  * @brief Get field status from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
491  * @param event packet
492  * @return status
493  * @note: btstack_type 1
494  */
495 static inline uint8_t hci_event_read_remote_version_information_complete_get_status(const uint8_t * event){
496     return event[2];
497 }
498 /**
499  * @brief Get field connection_handle from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
500  * @param event packet
501  * @return connection_handle
502  * @note: btstack_type 2
503  */
504 static inline uint16_t hci_event_read_remote_version_information_complete_get_connection_handle(const uint8_t * event){
505     return little_endian_read_16(event, 3);
506 }
507 /**
508  * @brief Get field version from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
509  * @param event packet
510  * @return version
511  * @note: btstack_type 1
512  */
513 static inline uint8_t hci_event_read_remote_version_information_complete_get_version(const uint8_t * event){
514     return event[5];
515 }
516 /**
517  * @brief Get field manufacturer_name from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
518  * @param event packet
519  * @return manufacturer_name
520  * @note: btstack_type 2
521  */
522 static inline uint16_t hci_event_read_remote_version_information_complete_get_manufacturer_name(const uint8_t * event){
523     return little_endian_read_16(event, 6);
524 }
525 /**
526  * @brief Get field subversion from event HCI_EVENT_READ_REMOTE_VERSION_INFORMATION_COMPLETE
527  * @param event packet
528  * @return subversion
529  * @note: btstack_type 2
530  */
531 static inline uint16_t hci_event_read_remote_version_information_complete_get_subversion(const uint8_t * event){
532     return little_endian_read_16(event, 8);
533 }
534 
535 /**
536  * @brief Get field num_hci_command_packets from event HCI_EVENT_COMMAND_COMPLETE
537  * @param event packet
538  * @return num_hci_command_packets
539  * @note: btstack_type 1
540  */
541 static inline uint8_t hci_event_command_complete_get_num_hci_command_packets(const uint8_t * event){
542     return event[2];
543 }
544 /**
545  * @brief Get field command_opcode from event HCI_EVENT_COMMAND_COMPLETE
546  * @param event packet
547  * @return command_opcode
548  * @note: btstack_type 2
549  */
550 static inline uint16_t hci_event_command_complete_get_command_opcode(const uint8_t * event){
551     return little_endian_read_16(event, 3);
552 }
553 /**
554  * @brief Get field return_parameters from event HCI_EVENT_COMMAND_COMPLETE
555  * @param event packet
556  * @return return_parameters
557  * @note: btstack_type R
558  */
559 static inline const uint8_t * hci_event_command_complete_get_return_parameters(const uint8_t * event){
560     return &event[5];
561 }
562 
563 /**
564  * @brief Get field status from event HCI_EVENT_COMMAND_STATUS
565  * @param event packet
566  * @return status
567  * @note: btstack_type 1
568  */
569 static inline uint8_t hci_event_command_status_get_status(const uint8_t * event){
570     return event[2];
571 }
572 /**
573  * @brief Get field num_hci_command_packets from event HCI_EVENT_COMMAND_STATUS
574  * @param event packet
575  * @return num_hci_command_packets
576  * @note: btstack_type 1
577  */
578 static inline uint8_t hci_event_command_status_get_num_hci_command_packets(const uint8_t * event){
579     return event[3];
580 }
581 /**
582  * @brief Get field command_opcode from event HCI_EVENT_COMMAND_STATUS
583  * @param event packet
584  * @return command_opcode
585  * @note: btstack_type 2
586  */
587 static inline uint16_t hci_event_command_status_get_command_opcode(const uint8_t * event){
588     return little_endian_read_16(event, 4);
589 }
590 
591 /**
592  * @brief Get field hardware_code from event HCI_EVENT_HARDWARE_ERROR
593  * @param event packet
594  * @return hardware_code
595  * @note: btstack_type 1
596  */
597 static inline uint8_t hci_event_hardware_error_get_hardware_code(const uint8_t * event){
598     return event[2];
599 }
600 
601 /**
602  * @brief Get field handle from event HCI_EVENT_FLUSH_OCCURRED
603  * @param event packet
604  * @return handle
605  * @note: btstack_type H
606  */
607 static inline hci_con_handle_t hci_event_flush_occurred_get_handle(const uint8_t * event){
608     return little_endian_read_16(event, 2);
609 }
610 
611 /**
612  * @brief Get field status from event HCI_EVENT_ROLE_CHANGE
613  * @param event packet
614  * @return status
615  * @note: btstack_type 1
616  */
617 static inline uint8_t hci_event_role_change_get_status(const uint8_t * event){
618     return event[2];
619 }
620 /**
621  * @brief Get field bd_addr from event HCI_EVENT_ROLE_CHANGE
622  * @param event packet
623  * @param Pointer to storage for bd_addr
624  * @note: btstack_type B
625  */
626 static inline void hci_event_role_change_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
627     reverse_bytes(&event[3], bd_addr, 6);
628 }
629 /**
630  * @brief Get field role from event HCI_EVENT_ROLE_CHANGE
631  * @param event packet
632  * @return role
633  * @note: btstack_type 1
634  */
635 static inline uint8_t hci_event_role_change_get_role(const uint8_t * event){
636     return event[9];
637 }
638 
639 /**
640  * @brief Get field status from event HCI_EVENT_MODE_CHANGE
641  * @param event packet
642  * @return status
643  * @note: btstack_type 1
644  */
645 static inline uint8_t hci_event_mode_change_get_status(const uint8_t * event){
646     return event[2];
647 }
648 /**
649  * @brief Get field handle from event HCI_EVENT_MODE_CHANGE
650  * @param event packet
651  * @return handle
652  * @note: btstack_type H
653  */
654 static inline hci_con_handle_t hci_event_mode_change_get_handle(const uint8_t * event){
655     return little_endian_read_16(event, 3);
656 }
657 /**
658  * @brief Get field mode from event HCI_EVENT_MODE_CHANGE
659  * @param event packet
660  * @return mode
661  * @note: btstack_type 1
662  */
663 static inline uint8_t hci_event_mode_change_get_mode(const uint8_t * event){
664     return event[5];
665 }
666 /**
667  * @brief Get field interval from event HCI_EVENT_MODE_CHANGE
668  * @param event packet
669  * @return interval
670  * @note: btstack_type 2
671  */
672 static inline uint16_t hci_event_mode_change_get_interval(const uint8_t * event){
673     return little_endian_read_16(event, 6);
674 }
675 
676 /**
677  * @brief Get field bd_addr from event HCI_EVENT_PIN_CODE_REQUEST
678  * @param event packet
679  * @param Pointer to storage for bd_addr
680  * @note: btstack_type B
681  */
682 static inline void hci_event_pin_code_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
683     reverse_bytes(&event[2], bd_addr, 6);
684 }
685 
686 /**
687  * @brief Get field bd_addr from event HCI_EVENT_LINK_KEY_REQUEST
688  * @param event packet
689  * @param Pointer to storage for bd_addr
690  * @note: btstack_type B
691  */
692 static inline void hci_event_link_key_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
693     reverse_bytes(&event[2], bd_addr, 6);
694 }
695 
696 /**
697  * @brief Get field link_type from event HCI_EVENT_DATA_BUFFER_OVERFLOW
698  * @param event packet
699  * @return link_type
700  * @note: btstack_type 1
701  */
702 static inline uint8_t hci_event_data_buffer_overflow_get_link_type(const uint8_t * event){
703     return event[2];
704 }
705 
706 /**
707  * @brief Get field handle from event HCI_EVENT_MAX_SLOTS_CHANGED
708  * @param event packet
709  * @return handle
710  * @note: btstack_type H
711  */
712 static inline hci_con_handle_t hci_event_max_slots_changed_get_handle(const uint8_t * event){
713     return little_endian_read_16(event, 2);
714 }
715 /**
716  * @brief Get field lmp_max_slots from event HCI_EVENT_MAX_SLOTS_CHANGED
717  * @param event packet
718  * @return lmp_max_slots
719  * @note: btstack_type 1
720  */
721 static inline uint8_t hci_event_max_slots_changed_get_lmp_max_slots(const uint8_t * event){
722     return event[4];
723 }
724 
725 /**
726  * @brief Get field status from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
727  * @param event packet
728  * @return status
729  * @note: btstack_type 1
730  */
731 static inline uint8_t hci_event_read_clock_offset_complete_get_status(const uint8_t * event){
732     return event[2];
733 }
734 /**
735  * @brief Get field handle from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
736  * @param event packet
737  * @return handle
738  * @note: btstack_type H
739  */
740 static inline hci_con_handle_t hci_event_read_clock_offset_complete_get_handle(const uint8_t * event){
741     return little_endian_read_16(event, 3);
742 }
743 /**
744  * @brief Get field clock_offset from event HCI_EVENT_READ_CLOCK_OFFSET_COMPLETE
745  * @param event packet
746  * @return clock_offset
747  * @note: btstack_type 2
748  */
749 static inline uint16_t hci_event_read_clock_offset_complete_get_clock_offset(const uint8_t * event){
750     return little_endian_read_16(event, 5);
751 }
752 
753 /**
754  * @brief Get field status from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
755  * @param event packet
756  * @return status
757  * @note: btstack_type 1
758  */
759 static inline uint8_t hci_event_connection_packet_type_changed_get_status(const uint8_t * event){
760     return event[2];
761 }
762 /**
763  * @brief Get field handle from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
764  * @param event packet
765  * @return handle
766  * @note: btstack_type H
767  */
768 static inline hci_con_handle_t hci_event_connection_packet_type_changed_get_handle(const uint8_t * event){
769     return little_endian_read_16(event, 3);
770 }
771 /**
772  * @brief Get field packet_types from event HCI_EVENT_CONNECTION_PACKET_TYPE_CHANGED
773  * @param event packet
774  * @return packet_types
775  * @note: btstack_type 2
776  */
777 static inline uint16_t hci_event_connection_packet_type_changed_get_packet_types(const uint8_t * event){
778     return little_endian_read_16(event, 5);
779 }
780 
781 /**
782  * @brief Get field num_responses from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
783  * @param event packet
784  * @return num_responses
785  * @note: btstack_type 1
786  */
787 static inline uint8_t hci_event_inquiry_result_with_rssi_get_num_responses(const uint8_t * event){
788     return event[2];
789 }
790 /**
791  * @brief Get field bd_addr from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
792  * @param event packet
793  * @param Pointer to storage for bd_addr
794  * @note: btstack_type B
795  */
796 static inline void hci_event_inquiry_result_with_rssi_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
797     reverse_bytes(&event[3], bd_addr, 6);
798 }
799 /**
800  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
801  * @param event packet
802  * @return page_scan_repetition_mode
803  * @note: btstack_type 1
804  */
805 static inline uint8_t hci_event_inquiry_result_with_rssi_get_page_scan_repetition_mode(const uint8_t * event){
806     return event[9];
807 }
808 /**
809  * @brief Get field reserved from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
810  * @param event packet
811  * @return reserved
812  * @note: btstack_type 1
813  */
814 static inline uint8_t hci_event_inquiry_result_with_rssi_get_reserved(const uint8_t * event){
815     return event[10];
816 }
817 /**
818  * @brief Get field class_of_device from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
819  * @param event packet
820  * @return class_of_device
821  * @note: btstack_type 3
822  */
823 static inline uint32_t hci_event_inquiry_result_with_rssi_get_class_of_device(const uint8_t * event){
824     return little_endian_read_24(event, 11);
825 }
826 /**
827  * @brief Get field clock_offset from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
828  * @param event packet
829  * @return clock_offset
830  * @note: btstack_type 2
831  */
832 static inline uint16_t hci_event_inquiry_result_with_rssi_get_clock_offset(const uint8_t * event){
833     return little_endian_read_16(event, 14);
834 }
835 /**
836  * @brief Get field rssi from event HCI_EVENT_INQUIRY_RESULT_WITH_RSSI
837  * @param event packet
838  * @return rssi
839  * @note: btstack_type 1
840  */
841 static inline uint8_t hci_event_inquiry_result_with_rssi_get_rssi(const uint8_t * event){
842     return event[16];
843 }
844 
845 /**
846  * @brief Get field status from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
847  * @param event packet
848  * @return status
849  * @note: btstack_type 1
850  */
851 static inline uint8_t hci_event_synchronous_connection_complete_get_status(const uint8_t * event){
852     return event[2];
853 }
854 /**
855  * @brief Get field handle from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
856  * @param event packet
857  * @return handle
858  * @note: btstack_type H
859  */
860 static inline hci_con_handle_t hci_event_synchronous_connection_complete_get_handle(const uint8_t * event){
861     return little_endian_read_16(event, 3);
862 }
863 /**
864  * @brief Get field bd_addr from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
865  * @param event packet
866  * @param Pointer to storage for bd_addr
867  * @note: btstack_type B
868  */
869 static inline void hci_event_synchronous_connection_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
870     reverse_bytes(&event[5], bd_addr, 6);
871 }
872 /**
873  * @brief Get field link_type from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
874  * @param event packet
875  * @return link_type
876  * @note: btstack_type 1
877  */
878 static inline uint8_t hci_event_synchronous_connection_complete_get_link_type(const uint8_t * event){
879     return event[11];
880 }
881 /**
882  * @brief Get field transmission_interval from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
883  * @param event packet
884  * @return transmission_interval
885  * @note: btstack_type 1
886  */
887 static inline uint8_t hci_event_synchronous_connection_complete_get_transmission_interval(const uint8_t * event){
888     return event[12];
889 }
890 /**
891  * @brief Get field retransmission_interval from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
892  * @param event packet
893  * @return retransmission_interval
894  * @note: btstack_type 1
895  */
896 static inline uint8_t hci_event_synchronous_connection_complete_get_retransmission_interval(const uint8_t * event){
897     return event[13];
898 }
899 /**
900  * @brief Get field rx_packet_length from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
901  * @param event packet
902  * @return rx_packet_length
903  * @note: btstack_type 2
904  */
905 static inline uint16_t hci_event_synchronous_connection_complete_get_rx_packet_length(const uint8_t * event){
906     return little_endian_read_16(event, 14);
907 }
908 /**
909  * @brief Get field tx_packet_length from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
910  * @param event packet
911  * @return tx_packet_length
912  * @note: btstack_type 2
913  */
914 static inline uint16_t hci_event_synchronous_connection_complete_get_tx_packet_length(const uint8_t * event){
915     return little_endian_read_16(event, 16);
916 }
917 /**
918  * @brief Get field air_mode from event HCI_EVENT_SYNCHRONOUS_CONNECTION_COMPLETE
919  * @param event packet
920  * @return air_mode
921  * @note: btstack_type 1
922  */
923 static inline uint8_t hci_event_synchronous_connection_complete_get_air_mode(const uint8_t * event){
924     return event[18];
925 }
926 
927 /**
928  * @brief Get field num_responses from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
929  * @param event packet
930  * @return num_responses
931  * @note: btstack_type 1
932  */
933 static inline uint8_t hci_event_extended_inquiry_response_get_num_responses(const uint8_t * event){
934     return event[2];
935 }
936 /**
937  * @brief Get field bd_addr from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
938  * @param event packet
939  * @param Pointer to storage for bd_addr
940  * @note: btstack_type B
941  */
942 static inline void hci_event_extended_inquiry_response_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
943     reverse_bytes(&event[3], bd_addr, 6);
944 }
945 /**
946  * @brief Get field page_scan_repetition_mode from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
947  * @param event packet
948  * @return page_scan_repetition_mode
949  * @note: btstack_type 1
950  */
951 static inline uint8_t hci_event_extended_inquiry_response_get_page_scan_repetition_mode(const uint8_t * event){
952     return event[9];
953 }
954 /**
955  * @brief Get field reserved from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
956  * @param event packet
957  * @return reserved
958  * @note: btstack_type 1
959  */
960 static inline uint8_t hci_event_extended_inquiry_response_get_reserved(const uint8_t * event){
961     return event[10];
962 }
963 /**
964  * @brief Get field class_of_device from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
965  * @param event packet
966  * @return class_of_device
967  * @note: btstack_type 3
968  */
969 static inline uint32_t hci_event_extended_inquiry_response_get_class_of_device(const uint8_t * event){
970     return little_endian_read_24(event, 11);
971 }
972 /**
973  * @brief Get field clock_offset from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
974  * @param event packet
975  * @return clock_offset
976  * @note: btstack_type 2
977  */
978 static inline uint16_t hci_event_extended_inquiry_response_get_clock_offset(const uint8_t * event){
979     return little_endian_read_16(event, 14);
980 }
981 /**
982  * @brief Get field rssi from event HCI_EVENT_EXTENDED_INQUIRY_RESPONSE
983  * @param event packet
984  * @return rssi
985  * @note: btstack_type 1
986  */
987 static inline uint8_t hci_event_extended_inquiry_response_get_rssi(const uint8_t * event){
988     return event[16];
989 }
990 
991 /**
992  * @brief Get field status from event HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE
993  * @param event packet
994  * @return status
995  * @note: btstack_type 1
996  */
997 static inline uint8_t hci_event_encryption_key_refresh_complete_get_status(const uint8_t * event){
998     return event[2];
999 }
1000 /**
1001  * @brief Get field handle from event HCI_EVENT_ENCRYPTION_KEY_REFRESH_COMPLETE
1002  * @param event packet
1003  * @return handle
1004  * @note: btstack_type H
1005  */
1006 static inline hci_con_handle_t hci_event_encryption_key_refresh_complete_get_handle(const uint8_t * event){
1007     return little_endian_read_16(event, 3);
1008 }
1009 
1010 /**
1011  * @brief Get field bd_addr from event HCI_EVENT_IO_CAPABILITY_REQUEST
1012  * @param event packet
1013  * @param Pointer to storage for bd_addr
1014  * @note: btstack_type B
1015  */
1016 static inline void hci_event_io_capability_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1017     reverse_bytes(&event[2], bd_addr, 6);
1018 }
1019 
1020 /**
1021  * @brief Get field bd_addr from event HCI_EVENT_IO_CAPABILITY_RESPONSE
1022  * @param event packet
1023  * @param Pointer to storage for bd_addr
1024  * @note: btstack_type B
1025  */
1026 static inline void hci_event_io_capability_response_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1027     reverse_bytes(&event[2], bd_addr, 6);
1028 }
1029 /**
1030  * @brief Get field io_capability from event HCI_EVENT_IO_CAPABILITY_RESPONSE
1031  * @param event packet
1032  * @return io_capability
1033  * @note: btstack_type 1
1034  */
1035 static inline uint8_t hci_event_io_capability_response_get_io_capability(const uint8_t * event){
1036     return event[8];
1037 }
1038 /**
1039  * @brief Get field oob_data_present from event HCI_EVENT_IO_CAPABILITY_RESPONSE
1040  * @param event packet
1041  * @return oob_data_present
1042  * @note: btstack_type 1
1043  */
1044 static inline uint8_t hci_event_io_capability_response_get_oob_data_present(const uint8_t * event){
1045     return event[9];
1046 }
1047 /**
1048  * @brief Get field authentication_requirements from event HCI_EVENT_IO_CAPABILITY_RESPONSE
1049  * @param event packet
1050  * @return authentication_requirements
1051  * @note: btstack_type 1
1052  */
1053 static inline uint8_t hci_event_io_capability_response_get_authentication_requirements(const uint8_t * event){
1054     return event[10];
1055 }
1056 
1057 /**
1058  * @brief Get field bd_addr from event HCI_EVENT_USER_CONFIRMATION_REQUEST
1059  * @param event packet
1060  * @param Pointer to storage for bd_addr
1061  * @note: btstack_type B
1062  */
1063 static inline void hci_event_user_confirmation_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1064     reverse_bytes(&event[2], bd_addr, 6);
1065 }
1066 /**
1067  * @brief Get field numeric_value from event HCI_EVENT_USER_CONFIRMATION_REQUEST
1068  * @param event packet
1069  * @return numeric_value
1070  * @note: btstack_type 4
1071  */
1072 static inline uint32_t hci_event_user_confirmation_request_get_numeric_value(const uint8_t * event){
1073     return little_endian_read_32(event, 8);
1074 }
1075 
1076 /**
1077  * @brief Get field bd_addr from event HCI_EVENT_USER_PASSKEY_REQUEST
1078  * @param event packet
1079  * @param Pointer to storage for bd_addr
1080  * @note: btstack_type B
1081  */
1082 static inline void hci_event_user_passkey_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1083     reverse_bytes(&event[2], bd_addr, 6);
1084 }
1085 
1086 /**
1087  * @brief Get field bd_addr from event HCI_EVENT_REMOTE_OOB_DATA_REQUEST
1088  * @param event packet
1089  * @param Pointer to storage for bd_addr
1090  * @note: btstack_type B
1091  */
1092 static inline void hci_event_remote_oob_data_request_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1093     reverse_bytes(&event[2], bd_addr, 6);
1094 }
1095 
1096 /**
1097  * @brief Get field status from event HCI_EVENT_SIMPLE_PAIRING_COMPLETE
1098  * @param event packet
1099  * @return status
1100  * @note: btstack_type 1
1101  */
1102 static inline uint8_t hci_event_simple_pairing_complete_get_status(const uint8_t * event){
1103     return event[2];
1104 }
1105 /**
1106  * @brief Get field bd_addr from event HCI_EVENT_SIMPLE_PAIRING_COMPLETE
1107  * @param event packet
1108  * @param Pointer to storage for bd_addr
1109  * @note: btstack_type B
1110  */
1111 static inline void hci_event_simple_pairing_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1112     reverse_bytes(&event[3], bd_addr, 6);
1113 }
1114 
1115 /**
1116  * @brief Get field bd_addr from event HCI_EVENT_USER_PASSKEY_NOTIFICATION
1117  * @param event packet
1118  * @param Pointer to storage for bd_addr
1119  * @note: btstack_type B
1120  */
1121 static inline void hci_event_user_passkey_notification_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1122     reverse_bytes(&event[2], bd_addr, 6);
1123 }
1124 /**
1125  * @brief Get field numeric_value from event HCI_EVENT_USER_PASSKEY_NOTIFICATION
1126  * @param event packet
1127  * @return numeric_value
1128  * @note: btstack_type 4
1129  */
1130 static inline uint32_t hci_event_user_passkey_notification_get_numeric_value(const uint8_t * event){
1131     return little_endian_read_32(event, 8);
1132 }
1133 
1134 /**
1135  * @brief Get field bd_addr from event HCI_EVENT_KEYPRESS_NOTIFICATION
1136  * @param event packet
1137  * @param Pointer to storage for bd_addr
1138  * @note: btstack_type B
1139  */
1140 static inline void hci_event_keypress_notification_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1141     reverse_bytes(&event[2], bd_addr, 6);
1142 }
1143 /**
1144  * @brief Get field notification_type from event HCI_EVENT_KEYPRESS_NOTIFICATION
1145  * @param event packet
1146  * @return notification_type
1147  * @note: btstack_type 1
1148  */
1149 static inline uint8_t hci_event_keypress_notification_get_notification_type(const uint8_t * event){
1150     return event[8];
1151 }
1152 
1153 /**
1154  * @brief Get field state from event BTSTACK_EVENT_STATE
1155  * @param event packet
1156  * @return state
1157  * @note: btstack_type 1
1158  */
1159 static inline uint8_t btstack_event_state_get_state(const uint8_t * event){
1160     return event[2];
1161 }
1162 
1163 /**
1164  * @brief Get field number_connections from event BTSTACK_EVENT_NR_CONNECTIONS_CHANGED
1165  * @param event packet
1166  * @return number_connections
1167  * @note: btstack_type 1
1168  */
1169 static inline uint8_t btstack_event_nr_connections_changed_get_number_connections(const uint8_t * event){
1170     return event[2];
1171 }
1172 
1173 
1174 /**
1175  * @brief Get field discoverable from event BTSTACK_EVENT_DISCOVERABLE_ENABLED
1176  * @param event packet
1177  * @return discoverable
1178  * @note: btstack_type 1
1179  */
1180 static inline uint8_t btstack_event_discoverable_enabled_get_discoverable(const uint8_t * event){
1181     return event[2];
1182 }
1183 
1184 /**
1185  * @brief Get field active from event HCI_EVENT_TRANSPORT_SLEEP_MODE
1186  * @param event packet
1187  * @return active
1188  * @note: btstack_type 1
1189  */
1190 static inline uint8_t hci_event_transport_sleep_mode_get_active(const uint8_t * event){
1191     return event[2];
1192 }
1193 
1194 /**
1195  * @brief Get field handle from event HCI_EVENT_SCO_CAN_SEND_NOW
1196  * @param event packet
1197  * @param Pointer to storage for handle
1198  * @note: btstack_type B
1199  */
1200 static inline void hci_event_sco_can_send_now_get_handle(const uint8_t * event, bd_addr_t handle){
1201     reverse_bytes(&event[2], handle, 6);
1202 }
1203 
1204 /**
1205  * @brief Get field status from event L2CAP_EVENT_CHANNEL_OPENED
1206  * @param event packet
1207  * @return status
1208  * @note: btstack_type 1
1209  */
1210 static inline uint8_t l2cap_event_channel_opened_get_status(const uint8_t * event){
1211     return event[2];
1212 }
1213 /**
1214  * @brief Get field address from event L2CAP_EVENT_CHANNEL_OPENED
1215  * @param event packet
1216  * @param Pointer to storage for address
1217  * @note: btstack_type B
1218  */
1219 static inline void l2cap_event_channel_opened_get_address(const uint8_t * event, bd_addr_t address){
1220     reverse_bytes(&event[3], address, 6);
1221 }
1222 /**
1223  * @brief Get field handle from event L2CAP_EVENT_CHANNEL_OPENED
1224  * @param event packet
1225  * @return handle
1226  * @note: btstack_type H
1227  */
1228 static inline hci_con_handle_t l2cap_event_channel_opened_get_handle(const uint8_t * event){
1229     return little_endian_read_16(event, 9);
1230 }
1231 /**
1232  * @brief Get field psm from event L2CAP_EVENT_CHANNEL_OPENED
1233  * @param event packet
1234  * @return psm
1235  * @note: btstack_type 2
1236  */
1237 static inline uint16_t l2cap_event_channel_opened_get_psm(const uint8_t * event){
1238     return little_endian_read_16(event, 11);
1239 }
1240 /**
1241  * @brief Get field local_cid from event L2CAP_EVENT_CHANNEL_OPENED
1242  * @param event packet
1243  * @return local_cid
1244  * @note: btstack_type 2
1245  */
1246 static inline uint16_t l2cap_event_channel_opened_get_local_cid(const uint8_t * event){
1247     return little_endian_read_16(event, 13);
1248 }
1249 /**
1250  * @brief Get field remote_cid from event L2CAP_EVENT_CHANNEL_OPENED
1251  * @param event packet
1252  * @return remote_cid
1253  * @note: btstack_type 2
1254  */
1255 static inline uint16_t l2cap_event_channel_opened_get_remote_cid(const uint8_t * event){
1256     return little_endian_read_16(event, 15);
1257 }
1258 /**
1259  * @brief Get field local_mtu from event L2CAP_EVENT_CHANNEL_OPENED
1260  * @param event packet
1261  * @return local_mtu
1262  * @note: btstack_type 2
1263  */
1264 static inline uint16_t l2cap_event_channel_opened_get_local_mtu(const uint8_t * event){
1265     return little_endian_read_16(event, 17);
1266 }
1267 /**
1268  * @brief Get field remote_mtu from event L2CAP_EVENT_CHANNEL_OPENED
1269  * @param event packet
1270  * @return remote_mtu
1271  * @note: btstack_type 2
1272  */
1273 static inline uint16_t l2cap_event_channel_opened_get_remote_mtu(const uint8_t * event){
1274     return little_endian_read_16(event, 19);
1275 }
1276 /**
1277  * @brief Get field flush_timeout from event L2CAP_EVENT_CHANNEL_OPENED
1278  * @param event packet
1279  * @return flush_timeout
1280  * @note: btstack_type 2
1281  */
1282 static inline uint16_t l2cap_event_channel_opened_get_flush_timeout(const uint8_t * event){
1283     return little_endian_read_16(event, 21);
1284 }
1285 /**
1286  * @brief Get field incoming from event L2CAP_EVENT_CHANNEL_OPENED
1287  * @param event packet
1288  * @return incoming
1289  * @note: btstack_type 1
1290  */
1291 static inline uint8_t l2cap_event_channel_opened_get_incoming(const uint8_t * event){
1292     return event[23];
1293 }
1294 /**
1295  * @brief Get field mode from event L2CAP_EVENT_CHANNEL_OPENED
1296  * @param event packet
1297  * @return mode
1298  * @note: btstack_type 1
1299  */
1300 static inline uint8_t l2cap_event_channel_opened_get_mode(const uint8_t * event){
1301     return event[24];
1302 }
1303 /**
1304  * @brief Get field fcs from event L2CAP_EVENT_CHANNEL_OPENED
1305  * @param event packet
1306  * @return fcs
1307  * @note: btstack_type 1
1308  */
1309 static inline uint8_t l2cap_event_channel_opened_get_fcs(const uint8_t * event){
1310     return event[25];
1311 }
1312 
1313 /**
1314  * @brief Get field local_cid from event L2CAP_EVENT_CHANNEL_CLOSED
1315  * @param event packet
1316  * @return local_cid
1317  * @note: btstack_type 2
1318  */
1319 static inline uint16_t l2cap_event_channel_closed_get_local_cid(const uint8_t * event){
1320     return little_endian_read_16(event, 2);
1321 }
1322 
1323 /**
1324  * @brief Get field address from event L2CAP_EVENT_INCOMING_CONNECTION
1325  * @param event packet
1326  * @param Pointer to storage for address
1327  * @note: btstack_type B
1328  */
1329 static inline void l2cap_event_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
1330     reverse_bytes(&event[2], address, 6);
1331 }
1332 /**
1333  * @brief Get field handle from event L2CAP_EVENT_INCOMING_CONNECTION
1334  * @param event packet
1335  * @return handle
1336  * @note: btstack_type H
1337  */
1338 static inline hci_con_handle_t l2cap_event_incoming_connection_get_handle(const uint8_t * event){
1339     return little_endian_read_16(event, 8);
1340 }
1341 /**
1342  * @brief Get field psm from event L2CAP_EVENT_INCOMING_CONNECTION
1343  * @param event packet
1344  * @return psm
1345  * @note: btstack_type 2
1346  */
1347 static inline uint16_t l2cap_event_incoming_connection_get_psm(const uint8_t * event){
1348     return little_endian_read_16(event, 10);
1349 }
1350 /**
1351  * @brief Get field local_cid from event L2CAP_EVENT_INCOMING_CONNECTION
1352  * @param event packet
1353  * @return local_cid
1354  * @note: btstack_type 2
1355  */
1356 static inline uint16_t l2cap_event_incoming_connection_get_local_cid(const uint8_t * event){
1357     return little_endian_read_16(event, 12);
1358 }
1359 /**
1360  * @brief Get field remote_cid from event L2CAP_EVENT_INCOMING_CONNECTION
1361  * @param event packet
1362  * @return remote_cid
1363  * @note: btstack_type 2
1364  */
1365 static inline uint16_t l2cap_event_incoming_connection_get_remote_cid(const uint8_t * event){
1366     return little_endian_read_16(event, 14);
1367 }
1368 
1369 /**
1370  * @brief Get field handle from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1371  * @param event packet
1372  * @return handle
1373  * @note: btstack_type H
1374  */
1375 static inline hci_con_handle_t l2cap_event_connection_parameter_update_request_get_handle(const uint8_t * event){
1376     return little_endian_read_16(event, 2);
1377 }
1378 /**
1379  * @brief Get field interval_min from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1380  * @param event packet
1381  * @return interval_min
1382  * @note: btstack_type 2
1383  */
1384 static inline uint16_t l2cap_event_connection_parameter_update_request_get_interval_min(const uint8_t * event){
1385     return little_endian_read_16(event, 4);
1386 }
1387 /**
1388  * @brief Get field interval_max from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1389  * @param event packet
1390  * @return interval_max
1391  * @note: btstack_type 2
1392  */
1393 static inline uint16_t l2cap_event_connection_parameter_update_request_get_interval_max(const uint8_t * event){
1394     return little_endian_read_16(event, 6);
1395 }
1396 /**
1397  * @brief Get field latencey from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1398  * @param event packet
1399  * @return latencey
1400  * @note: btstack_type 2
1401  */
1402 static inline uint16_t l2cap_event_connection_parameter_update_request_get_latencey(const uint8_t * event){
1403     return little_endian_read_16(event, 8);
1404 }
1405 /**
1406  * @brief Get field timeout_multiplier from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_REQUEST
1407  * @param event packet
1408  * @return timeout_multiplier
1409  * @note: btstack_type 2
1410  */
1411 static inline uint16_t l2cap_event_connection_parameter_update_request_get_timeout_multiplier(const uint8_t * event){
1412     return little_endian_read_16(event, 10);
1413 }
1414 
1415 /**
1416  * @brief Get field handle from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE
1417  * @param event packet
1418  * @return handle
1419  * @note: btstack_type H
1420  */
1421 static inline hci_con_handle_t l2cap_event_connection_parameter_update_response_get_handle(const uint8_t * event){
1422     return little_endian_read_16(event, 2);
1423 }
1424 /**
1425  * @brief Get field result from event L2CAP_EVENT_CONNECTION_PARAMETER_UPDATE_RESPONSE
1426  * @param event packet
1427  * @return result
1428  * @note: btstack_type 2
1429  */
1430 static inline uint16_t l2cap_event_connection_parameter_update_response_get_result(const uint8_t * event){
1431     return little_endian_read_16(event, 4);
1432 }
1433 
1434 /**
1435  * @brief Get field con_handle from event L2CAP_EVENT_INFORMATION_RESPONSE
1436  * @param event packet
1437  * @return con_handle
1438  * @note: btstack_type H
1439  */
1440 static inline hci_con_handle_t l2cap_event_information_response_get_con_handle(const uint8_t * event){
1441     return little_endian_read_16(event, 2);
1442 }
1443 /**
1444  * @brief Get field extended_feature_mask from event L2CAP_EVENT_INFORMATION_RESPONSE
1445  * @param event packet
1446  * @return extended_feature_mask
1447  * @note: btstack_type 2
1448  */
1449 static inline uint16_t l2cap_event_information_response_get_extended_feature_mask(const uint8_t * event){
1450     return little_endian_read_16(event, 4);
1451 }
1452 /**
1453  * @brief Get field fixed_channels_supported from event L2CAP_EVENT_INFORMATION_RESPONSE
1454  * @param event packet
1455  * @return fixed_channels_supported
1456  * @note: btstack_type 2
1457  */
1458 static inline uint16_t l2cap_event_information_response_get_fixed_channels_supported(const uint8_t * event){
1459     return little_endian_read_16(event, 6);
1460 }
1461 
1462 /**
1463  * @brief Get field local_cid from event L2CAP_EVENT_CAN_SEND_NOW
1464  * @param event packet
1465  * @return local_cid
1466  * @note: btstack_type 2
1467  */
1468 static inline uint16_t l2cap_event_can_send_now_get_local_cid(const uint8_t * event){
1469     return little_endian_read_16(event, 2);
1470 }
1471 
1472 /**
1473  * @brief Get field local_cid from event L2CAP_EVENT_PACKET_SENT
1474  * @param event packet
1475  * @return local_cid
1476  * @note: btstack_type 2
1477  */
1478 static inline uint16_t l2cap_event_packet_sent_get_local_cid(const uint8_t * event){
1479     return little_endian_read_16(event, 2);
1480 }
1481 
1482 /**
1483  * @brief Get field local_cid from event L2CAP_EVENT_ERTM_BUFFER_RELEASED
1484  * @param event packet
1485  * @return local_cid
1486  * @note: btstack_type 2
1487  */
1488 static inline uint16_t l2cap_event_ertm_buffer_released_get_local_cid(const uint8_t * event){
1489     return little_endian_read_16(event, 2);
1490 }
1491 
1492 /**
1493  * @brief Get field address_type from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1494  * @param event packet
1495  * @return address_type
1496  * @note: btstack_type 1
1497  */
1498 static inline uint8_t l2cap_event_cbm_incoming_connection_get_address_type(const uint8_t * event){
1499     return event[2];
1500 }
1501 /**
1502  * @brief Get field address from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1503  * @param event packet
1504  * @param Pointer to storage for address
1505  * @note: btstack_type B
1506  */
1507 static inline void l2cap_event_cbm_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
1508     reverse_bytes(&event[3], address, 6);
1509 }
1510 /**
1511  * @brief Get field handle from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1512  * @param event packet
1513  * @return handle
1514  * @note: btstack_type H
1515  */
1516 static inline hci_con_handle_t l2cap_event_cbm_incoming_connection_get_handle(const uint8_t * event){
1517     return little_endian_read_16(event, 9);
1518 }
1519 /**
1520  * @brief Get field psm from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1521  * @param event packet
1522  * @return psm
1523  * @note: btstack_type 2
1524  */
1525 static inline uint16_t l2cap_event_cbm_incoming_connection_get_psm(const uint8_t * event){
1526     return little_endian_read_16(event, 11);
1527 }
1528 /**
1529  * @brief Get field local_cid from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1530  * @param event packet
1531  * @return local_cid
1532  * @note: btstack_type 2
1533  */
1534 static inline uint16_t l2cap_event_cbm_incoming_connection_get_local_cid(const uint8_t * event){
1535     return little_endian_read_16(event, 13);
1536 }
1537 /**
1538  * @brief Get field remote_cid from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1539  * @param event packet
1540  * @return remote_cid
1541  * @note: btstack_type 2
1542  */
1543 static inline uint16_t l2cap_event_cbm_incoming_connection_get_remote_cid(const uint8_t * event){
1544     return little_endian_read_16(event, 15);
1545 }
1546 /**
1547  * @brief Get field remote_mtu from event L2CAP_EVENT_CBM_INCOMING_CONNECTION
1548  * @param event packet
1549  * @return remote_mtu
1550  * @note: btstack_type 2
1551  */
1552 static inline uint16_t l2cap_event_cbm_incoming_connection_get_remote_mtu(const uint8_t * event){
1553     return little_endian_read_16(event, 17);
1554 }
1555 
1556 /**
1557  * @brief Get field status from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1558  * @param event packet
1559  * @return status
1560  * @note: btstack_type 1
1561  */
1562 static inline uint8_t l2cap_event_cbm_channel_opened_get_status(const uint8_t * event){
1563     return event[2];
1564 }
1565 /**
1566  * @brief Get field address_type from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1567  * @param event packet
1568  * @return address_type
1569  * @note: btstack_type 1
1570  */
1571 static inline uint8_t l2cap_event_cbm_channel_opened_get_address_type(const uint8_t * event){
1572     return event[3];
1573 }
1574 /**
1575  * @brief Get field address from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1576  * @param event packet
1577  * @param Pointer to storage for address
1578  * @note: btstack_type B
1579  */
1580 static inline void l2cap_event_cbm_channel_opened_get_address(const uint8_t * event, bd_addr_t address){
1581     reverse_bytes(&event[4], address, 6);
1582 }
1583 /**
1584  * @brief Get field handle from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1585  * @param event packet
1586  * @return handle
1587  * @note: btstack_type H
1588  */
1589 static inline hci_con_handle_t l2cap_event_cbm_channel_opened_get_handle(const uint8_t * event){
1590     return little_endian_read_16(event, 10);
1591 }
1592 /**
1593  * @brief Get field incoming from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1594  * @param event packet
1595  * @return incoming
1596  * @note: btstack_type 1
1597  */
1598 static inline uint8_t l2cap_event_cbm_channel_opened_get_incoming(const uint8_t * event){
1599     return event[12];
1600 }
1601 /**
1602  * @brief Get field psm from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1603  * @param event packet
1604  * @return psm
1605  * @note: btstack_type 2
1606  */
1607 static inline uint16_t l2cap_event_cbm_channel_opened_get_psm(const uint8_t * event){
1608     return little_endian_read_16(event, 13);
1609 }
1610 /**
1611  * @brief Get field local_cid from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1612  * @param event packet
1613  * @return local_cid
1614  * @note: btstack_type 2
1615  */
1616 static inline uint16_t l2cap_event_cbm_channel_opened_get_local_cid(const uint8_t * event){
1617     return little_endian_read_16(event, 15);
1618 }
1619 /**
1620  * @brief Get field remote_cid from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1621  * @param event packet
1622  * @return remote_cid
1623  * @note: btstack_type 2
1624  */
1625 static inline uint16_t l2cap_event_cbm_channel_opened_get_remote_cid(const uint8_t * event){
1626     return little_endian_read_16(event, 17);
1627 }
1628 /**
1629  * @brief Get field local_mtu from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1630  * @param event packet
1631  * @return local_mtu
1632  * @note: btstack_type 2
1633  */
1634 static inline uint16_t l2cap_event_cbm_channel_opened_get_local_mtu(const uint8_t * event){
1635     return little_endian_read_16(event, 19);
1636 }
1637 /**
1638  * @brief Get field remote_mtu from event L2CAP_EVENT_CBM_CHANNEL_OPENED
1639  * @param event packet
1640  * @return remote_mtu
1641  * @note: btstack_type 2
1642  */
1643 static inline uint16_t l2cap_event_cbm_channel_opened_get_remote_mtu(const uint8_t * event){
1644     return little_endian_read_16(event, 21);
1645 }
1646 
1647 
1648 /**
1649  * @brief Get field address_type from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1650  * @param event packet
1651  * @return address_type
1652  * @note: btstack_type 1
1653  */
1654 static inline uint8_t l2cap_event_ecbm_incoming_connection_get_address_type(const uint8_t * event){
1655     return event[2];
1656 }
1657 /**
1658  * @brief Get field address from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1659  * @param event packet
1660  * @param Pointer to storage for address
1661  * @note: btstack_type B
1662  */
1663 static inline void l2cap_event_ecbm_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
1664     reverse_bytes(&event[3], address, 6);
1665 }
1666 /**
1667  * @brief Get field handle from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1668  * @param event packet
1669  * @return handle
1670  * @note: btstack_type H
1671  */
1672 static inline hci_con_handle_t l2cap_event_ecbm_incoming_connection_get_handle(const uint8_t * event){
1673     return little_endian_read_16(event, 9);
1674 }
1675 /**
1676  * @brief Get field psm from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1677  * @param event packet
1678  * @return psm
1679  * @note: btstack_type 2
1680  */
1681 static inline uint16_t l2cap_event_ecbm_incoming_connection_get_psm(const uint8_t * event){
1682     return little_endian_read_16(event, 11);
1683 }
1684 /**
1685  * @brief Get field num_channels from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1686  * @param event packet
1687  * @return num_channels
1688  * @note: btstack_type 1
1689  */
1690 static inline uint8_t l2cap_event_ecbm_incoming_connection_get_num_channels(const uint8_t * event){
1691     return event[13];
1692 }
1693 /**
1694  * @brief Get field local_cid from event L2CAP_EVENT_ECBM_INCOMING_CONNECTION
1695  * @param event packet
1696  * @return local_cid
1697  * @note: btstack_type 2
1698  */
1699 static inline uint16_t l2cap_event_ecbm_incoming_connection_get_local_cid(const uint8_t * event){
1700     return little_endian_read_16(event, 14);
1701 }
1702 
1703 /**
1704  * @brief Get field status from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1705  * @param event packet
1706  * @return status
1707  * @note: btstack_type 1
1708  */
1709 static inline uint8_t l2cap_event_ecbm_channel_opened_get_status(const uint8_t * event){
1710     return event[2];
1711 }
1712 /**
1713  * @brief Get field address_type from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1714  * @param event packet
1715  * @return address_type
1716  * @note: btstack_type 1
1717  */
1718 static inline uint8_t l2cap_event_ecbm_channel_opened_get_address_type(const uint8_t * event){
1719     return event[3];
1720 }
1721 /**
1722  * @brief Get field address from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1723  * @param event packet
1724  * @param Pointer to storage for address
1725  * @note: btstack_type B
1726  */
1727 static inline void l2cap_event_ecbm_channel_opened_get_address(const uint8_t * event, bd_addr_t address){
1728     reverse_bytes(&event[4], address, 6);
1729 }
1730 /**
1731  * @brief Get field handle from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1732  * @param event packet
1733  * @return handle
1734  * @note: btstack_type H
1735  */
1736 static inline hci_con_handle_t l2cap_event_ecbm_channel_opened_get_handle(const uint8_t * event){
1737     return little_endian_read_16(event, 10);
1738 }
1739 /**
1740  * @brief Get field incoming from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1741  * @param event packet
1742  * @return incoming
1743  * @note: btstack_type 1
1744  */
1745 static inline uint8_t l2cap_event_ecbm_channel_opened_get_incoming(const uint8_t * event){
1746     return event[12];
1747 }
1748 /**
1749  * @brief Get field psm from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1750  * @param event packet
1751  * @return psm
1752  * @note: btstack_type 2
1753  */
1754 static inline uint16_t l2cap_event_ecbm_channel_opened_get_psm(const uint8_t * event){
1755     return little_endian_read_16(event, 13);
1756 }
1757 /**
1758  * @brief Get field local_cid from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1759  * @param event packet
1760  * @return local_cid
1761  * @note: btstack_type 2
1762  */
1763 static inline uint16_t l2cap_event_ecbm_channel_opened_get_local_cid(const uint8_t * event){
1764     return little_endian_read_16(event, 15);
1765 }
1766 /**
1767  * @brief Get field remote_cid from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1768  * @param event packet
1769  * @return remote_cid
1770  * @note: btstack_type 2
1771  */
1772 static inline uint16_t l2cap_event_ecbm_channel_opened_get_remote_cid(const uint8_t * event){
1773     return little_endian_read_16(event, 17);
1774 }
1775 /**
1776  * @brief Get field local_mtu from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1777  * @param event packet
1778  * @return local_mtu
1779  * @note: btstack_type 2
1780  */
1781 static inline uint16_t l2cap_event_ecbm_channel_opened_get_local_mtu(const uint8_t * event){
1782     return little_endian_read_16(event, 19);
1783 }
1784 /**
1785  * @brief Get field remote_mtu from event L2CAP_EVENT_ECBM_CHANNEL_OPENED
1786  * @param event packet
1787  * @return remote_mtu
1788  * @note: btstack_type 2
1789  */
1790 static inline uint16_t l2cap_event_ecbm_channel_opened_get_remote_mtu(const uint8_t * event){
1791     return little_endian_read_16(event, 21);
1792 }
1793 
1794 /**
1795  * @brief Get field remote_cid from event L2CAP_EVENT_ECBM_RECONFIGURED
1796  * @param event packet
1797  * @return remote_cid
1798  * @note: btstack_type 2
1799  */
1800 static inline uint16_t l2cap_event_ecbm_reconfigured_get_remote_cid(const uint8_t * event){
1801     return little_endian_read_16(event, 2);
1802 }
1803 /**
1804  * @brief Get field mtu from event L2CAP_EVENT_ECBM_RECONFIGURED
1805  * @param event packet
1806  * @return mtu
1807  * @note: btstack_type 2
1808  */
1809 static inline uint16_t l2cap_event_ecbm_reconfigured_get_mtu(const uint8_t * event){
1810     return little_endian_read_16(event, 4);
1811 }
1812 /**
1813  * @brief Get field mps from event L2CAP_EVENT_ECBM_RECONFIGURED
1814  * @param event packet
1815  * @return mps
1816  * @note: btstack_type 2
1817  */
1818 static inline uint16_t l2cap_event_ecbm_reconfigured_get_mps(const uint8_t * event){
1819     return little_endian_read_16(event, 6);
1820 }
1821 
1822 /**
1823  * @brief Get field local_cid from event L2CAP_EVENT_ECBM_RECONFIGURATION_COMPLETE
1824  * @param event packet
1825  * @return local_cid
1826  * @note: btstack_type 2
1827  */
1828 static inline uint16_t l2cap_event_ecbm_reconfiguration_complete_get_local_cid(const uint8_t * event){
1829     return little_endian_read_16(event, 2);
1830 }
1831 /**
1832  * @brief Get field reconfigure_result from event L2CAP_EVENT_ECBM_RECONFIGURATION_COMPLETE
1833  * @param event packet
1834  * @return reconfigure_result
1835  * @note: btstack_type 2
1836  */
1837 static inline uint16_t l2cap_event_ecbm_reconfiguration_complete_get_reconfigure_result(const uint8_t * event){
1838     return little_endian_read_16(event, 4);
1839 }
1840 
1841 /**
1842  * @brief Get field status from event RFCOMM_EVENT_CHANNEL_OPENED
1843  * @param event packet
1844  * @return status
1845  * @note: btstack_type 1
1846  */
1847 static inline uint8_t rfcomm_event_channel_opened_get_status(const uint8_t * event){
1848     return event[2];
1849 }
1850 /**
1851  * @brief Get field bd_addr from event RFCOMM_EVENT_CHANNEL_OPENED
1852  * @param event packet
1853  * @param Pointer to storage for bd_addr
1854  * @note: btstack_type B
1855  */
1856 static inline void rfcomm_event_channel_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1857     reverse_bytes(&event[3], bd_addr, 6);
1858 }
1859 /**
1860  * @brief Get field con_handle from event RFCOMM_EVENT_CHANNEL_OPENED
1861  * @param event packet
1862  * @return con_handle
1863  * @note: btstack_type 2
1864  */
1865 static inline uint16_t rfcomm_event_channel_opened_get_con_handle(const uint8_t * event){
1866     return little_endian_read_16(event, 9);
1867 }
1868 /**
1869  * @brief Get field server_channel from event RFCOMM_EVENT_CHANNEL_OPENED
1870  * @param event packet
1871  * @return server_channel
1872  * @note: btstack_type 1
1873  */
1874 static inline uint8_t rfcomm_event_channel_opened_get_server_channel(const uint8_t * event){
1875     return event[11];
1876 }
1877 /**
1878  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CHANNEL_OPENED
1879  * @param event packet
1880  * @return rfcomm_cid
1881  * @note: btstack_type 2
1882  */
1883 static inline uint16_t rfcomm_event_channel_opened_get_rfcomm_cid(const uint8_t * event){
1884     return little_endian_read_16(event, 12);
1885 }
1886 /**
1887  * @brief Get field max_frame_size from event RFCOMM_EVENT_CHANNEL_OPENED
1888  * @param event packet
1889  * @return max_frame_size
1890  * @note: btstack_type 2
1891  */
1892 static inline uint16_t rfcomm_event_channel_opened_get_max_frame_size(const uint8_t * event){
1893     return little_endian_read_16(event, 14);
1894 }
1895 /**
1896  * @brief Get field incoming from event RFCOMM_EVENT_CHANNEL_OPENED
1897  * @param event packet
1898  * @return incoming
1899  * @note: btstack_type 1
1900  */
1901 static inline uint8_t rfcomm_event_channel_opened_get_incoming(const uint8_t * event){
1902     return event[16];
1903 }
1904 
1905 /**
1906  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CHANNEL_CLOSED
1907  * @param event packet
1908  * @return rfcomm_cid
1909  * @note: btstack_type 2
1910  */
1911 static inline uint16_t rfcomm_event_channel_closed_get_rfcomm_cid(const uint8_t * event){
1912     return little_endian_read_16(event, 2);
1913 }
1914 
1915 /**
1916  * @brief Get field bd_addr from event RFCOMM_EVENT_INCOMING_CONNECTION
1917  * @param event packet
1918  * @param Pointer to storage for bd_addr
1919  * @note: btstack_type B
1920  */
1921 static inline void rfcomm_event_incoming_connection_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
1922     reverse_bytes(&event[2], bd_addr, 6);
1923 }
1924 /**
1925  * @brief Get field server_channel from event RFCOMM_EVENT_INCOMING_CONNECTION
1926  * @param event packet
1927  * @return server_channel
1928  * @note: btstack_type 1
1929  */
1930 static inline uint8_t rfcomm_event_incoming_connection_get_server_channel(const uint8_t * event){
1931     return event[8];
1932 }
1933 /**
1934  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_INCOMING_CONNECTION
1935  * @param event packet
1936  * @return rfcomm_cid
1937  * @note: btstack_type 2
1938  */
1939 static inline uint16_t rfcomm_event_incoming_connection_get_rfcomm_cid(const uint8_t * event){
1940     return little_endian_read_16(event, 9);
1941 }
1942 /**
1943  * @brief Get field con_handle from event RFCOMM_EVENT_INCOMING_CONNECTION
1944  * @param event packet
1945  * @return con_handle
1946  * @note: btstack_type H
1947  */
1948 static inline hci_con_handle_t rfcomm_event_incoming_connection_get_con_handle(const uint8_t * event){
1949     return little_endian_read_16(event, 11);
1950 }
1951 
1952 /**
1953  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_REMOTE_LINE_STATUS
1954  * @param event packet
1955  * @return rfcomm_cid
1956  * @note: btstack_type 2
1957  */
1958 static inline uint16_t rfcomm_event_remote_line_status_get_rfcomm_cid(const uint8_t * event){
1959     return little_endian_read_16(event, 2);
1960 }
1961 /**
1962  * @brief Get field line_status from event RFCOMM_EVENT_REMOTE_LINE_STATUS
1963  * @param event packet
1964  * @return line_status
1965  * @note: btstack_type 1
1966  */
1967 static inline uint8_t rfcomm_event_remote_line_status_get_line_status(const uint8_t * event){
1968     return event[4];
1969 }
1970 
1971 /**
1972  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_REMOTE_MODEM_STATUS
1973  * @param event packet
1974  * @return rfcomm_cid
1975  * @note: btstack_type 2
1976  */
1977 static inline uint16_t rfcomm_event_remote_modem_status_get_rfcomm_cid(const uint8_t * event){
1978     return little_endian_read_16(event, 2);
1979 }
1980 /**
1981  * @brief Get field modem_status from event RFCOMM_EVENT_REMOTE_MODEM_STATUS
1982  * @param event packet
1983  * @return modem_status
1984  * @note: btstack_type 1
1985  */
1986 static inline uint8_t rfcomm_event_remote_modem_status_get_modem_status(const uint8_t * event){
1987     return event[4];
1988 }
1989 
1990 /**
1991  * @brief Get field rfcomm_cid from event RFCOMM_EVENT_CAN_SEND_NOW
1992  * @param event packet
1993  * @return rfcomm_cid
1994  * @note: btstack_type 2
1995  */
1996 static inline uint16_t rfcomm_event_can_send_now_get_rfcomm_cid(const uint8_t * event){
1997     return little_endian_read_16(event, 2);
1998 }
1999 
2000 /**
2001  * @brief Get field status from event SDP_EVENT_QUERY_COMPLETE
2002  * @param event packet
2003  * @return status
2004  * @note: btstack_type 1
2005  */
2006 static inline uint8_t sdp_event_query_complete_get_status(const uint8_t * event){
2007     return event[2];
2008 }
2009 
2010 /**
2011  * @brief Get field rfcomm_channel from event SDP_EVENT_QUERY_RFCOMM_SERVICE
2012  * @param event packet
2013  * @return rfcomm_channel
2014  * @note: btstack_type 1
2015  */
2016 static inline uint8_t sdp_event_query_rfcomm_service_get_rfcomm_channel(const uint8_t * event){
2017     return event[2];
2018 }
2019 /**
2020  * @brief Get field name from event SDP_EVENT_QUERY_RFCOMM_SERVICE
2021  * @param event packet
2022  * @return name
2023  * @note: btstack_type T
2024  */
2025 static inline const char * sdp_event_query_rfcomm_service_get_name(const uint8_t * event){
2026     return (const char *) &event[3];
2027 }
2028 
2029 /**
2030  * @brief Get field record_id from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
2031  * @param event packet
2032  * @return record_id
2033  * @note: btstack_type 2
2034  */
2035 static inline uint16_t sdp_event_query_attribute_byte_get_record_id(const uint8_t * event){
2036     return little_endian_read_16(event, 2);
2037 }
2038 /**
2039  * @brief Get field attribute_id from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
2040  * @param event packet
2041  * @return attribute_id
2042  * @note: btstack_type 2
2043  */
2044 static inline uint16_t sdp_event_query_attribute_byte_get_attribute_id(const uint8_t * event){
2045     return little_endian_read_16(event, 4);
2046 }
2047 /**
2048  * @brief Get field attribute_length from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
2049  * @param event packet
2050  * @return attribute_length
2051  * @note: btstack_type 2
2052  */
2053 static inline uint16_t sdp_event_query_attribute_byte_get_attribute_length(const uint8_t * event){
2054     return little_endian_read_16(event, 6);
2055 }
2056 /**
2057  * @brief Get field data_offset from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
2058  * @param event packet
2059  * @return data_offset
2060  * @note: btstack_type 2
2061  */
2062 static inline uint16_t sdp_event_query_attribute_byte_get_data_offset(const uint8_t * event){
2063     return little_endian_read_16(event, 8);
2064 }
2065 /**
2066  * @brief Get field data from event SDP_EVENT_QUERY_ATTRIBUTE_BYTE
2067  * @param event packet
2068  * @return data
2069  * @note: btstack_type 1
2070  */
2071 static inline uint8_t sdp_event_query_attribute_byte_get_data(const uint8_t * event){
2072     return event[10];
2073 }
2074 
2075 /**
2076  * @brief Get field record_id from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
2077  * @param event packet
2078  * @return record_id
2079  * @note: btstack_type 2
2080  */
2081 static inline uint16_t sdp_event_query_attribute_value_get_record_id(const uint8_t * event){
2082     return little_endian_read_16(event, 2);
2083 }
2084 /**
2085  * @brief Get field attribute_id from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
2086  * @param event packet
2087  * @return attribute_id
2088  * @note: btstack_type 2
2089  */
2090 static inline uint16_t sdp_event_query_attribute_value_get_attribute_id(const uint8_t * event){
2091     return little_endian_read_16(event, 4);
2092 }
2093 /**
2094  * @brief Get field attribute_length from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
2095  * @param event packet
2096  * @return attribute_length
2097  * @note: btstack_type L
2098  */
2099 static inline uint16_t sdp_event_query_attribute_value_get_attribute_length(const uint8_t * event){
2100     return little_endian_read_16(event, 6);
2101 }
2102 /**
2103  * @brief Get field attribute_value from event SDP_EVENT_QUERY_ATTRIBUTE_VALUE
2104  * @param event packet
2105  * @return attribute_value
2106  * @note: btstack_type V
2107  */
2108 static inline const uint8_t * sdp_event_query_attribute_value_get_attribute_value(const uint8_t * event){
2109     return &event[8];
2110 }
2111 
2112 /**
2113  * @brief Get field total_count from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
2114  * @param event packet
2115  * @return total_count
2116  * @note: btstack_type 2
2117  */
2118 static inline uint16_t sdp_event_query_service_record_handle_get_total_count(const uint8_t * event){
2119     return little_endian_read_16(event, 2);
2120 }
2121 /**
2122  * @brief Get field record_index from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
2123  * @param event packet
2124  * @return record_index
2125  * @note: btstack_type 2
2126  */
2127 static inline uint16_t sdp_event_query_service_record_handle_get_record_index(const uint8_t * event){
2128     return little_endian_read_16(event, 4);
2129 }
2130 /**
2131  * @brief Get field record_handle from event SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE
2132  * @param event packet
2133  * @return record_handle
2134  * @note: btstack_type 4
2135  */
2136 static inline uint32_t sdp_event_query_service_record_handle_get_record_handle(const uint8_t * event){
2137     return little_endian_read_32(event, 6);
2138 }
2139 
2140 #ifdef ENABLE_BLE
2141 /**
2142  * @brief Get field handle from event GATT_EVENT_QUERY_COMPLETE
2143  * @param event packet
2144  * @return handle
2145  * @note: btstack_type H
2146  */
2147 static inline hci_con_handle_t gatt_event_query_complete_get_handle(const uint8_t * event){
2148     return little_endian_read_16(event, 2);
2149 }
2150 /**
2151  * @brief Get field att_status from event GATT_EVENT_QUERY_COMPLETE
2152  * @param event packet
2153  * @return att_status
2154  * @note: btstack_type 1
2155  */
2156 static inline uint8_t gatt_event_query_complete_get_att_status(const uint8_t * event){
2157     return event[4];
2158 }
2159 #endif
2160 
2161 #ifdef ENABLE_BLE
2162 /**
2163  * @brief Get field handle from event GATT_EVENT_SERVICE_QUERY_RESULT
2164  * @param event packet
2165  * @return handle
2166  * @note: btstack_type H
2167  */
2168 static inline hci_con_handle_t gatt_event_service_query_result_get_handle(const uint8_t * event){
2169     return little_endian_read_16(event, 2);
2170 }
2171 /**
2172  * @brief Get field service from event GATT_EVENT_SERVICE_QUERY_RESULT
2173  * @param event packet
2174  * @param Pointer to storage for service
2175  * @note: btstack_type X
2176  */
2177 static inline void gatt_event_service_query_result_get_service(const uint8_t * event, gatt_client_service_t * service){
2178     gatt_client_deserialize_service(event, 4, service);
2179 }
2180 #endif
2181 
2182 #ifdef ENABLE_BLE
2183 /**
2184  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_QUERY_RESULT
2185  * @param event packet
2186  * @return handle
2187  * @note: btstack_type H
2188  */
2189 static inline hci_con_handle_t gatt_event_characteristic_query_result_get_handle(const uint8_t * event){
2190     return little_endian_read_16(event, 2);
2191 }
2192 /**
2193  * @brief Get field characteristic from event GATT_EVENT_CHARACTERISTIC_QUERY_RESULT
2194  * @param event packet
2195  * @param Pointer to storage for characteristic
2196  * @note: btstack_type Y
2197  */
2198 static inline void gatt_event_characteristic_query_result_get_characteristic(const uint8_t * event, gatt_client_characteristic_t * characteristic){
2199     gatt_client_deserialize_characteristic(event, 4, characteristic);
2200 }
2201 #endif
2202 
2203 #ifdef ENABLE_BLE
2204 /**
2205  * @brief Get field handle from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
2206  * @param event packet
2207  * @return handle
2208  * @note: btstack_type H
2209  */
2210 static inline hci_con_handle_t gatt_event_included_service_query_result_get_handle(const uint8_t * event){
2211     return little_endian_read_16(event, 2);
2212 }
2213 /**
2214  * @brief Get field include_handle from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
2215  * @param event packet
2216  * @return include_handle
2217  * @note: btstack_type 2
2218  */
2219 static inline uint16_t gatt_event_included_service_query_result_get_include_handle(const uint8_t * event){
2220     return little_endian_read_16(event, 4);
2221 }
2222 /**
2223  * @brief Get field service from event GATT_EVENT_INCLUDED_SERVICE_QUERY_RESULT
2224  * @param event packet
2225  * @param Pointer to storage for service
2226  * @note: btstack_type X
2227  */
2228 static inline void gatt_event_included_service_query_result_get_service(const uint8_t * event, gatt_client_service_t * service){
2229     gatt_client_deserialize_service(event, 6, service);
2230 }
2231 #endif
2232 
2233 #ifdef ENABLE_BLE
2234 /**
2235  * @brief Get field handle from event GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT
2236  * @param event packet
2237  * @return handle
2238  * @note: btstack_type H
2239  */
2240 static inline hci_con_handle_t gatt_event_all_characteristic_descriptors_query_result_get_handle(const uint8_t * event){
2241     return little_endian_read_16(event, 2);
2242 }
2243 /**
2244  * @brief Get field characteristic_descriptor from event GATT_EVENT_ALL_CHARACTERISTIC_DESCRIPTORS_QUERY_RESULT
2245  * @param event packet
2246  * @param Pointer to storage for characteristic_descriptor
2247  * @note: btstack_type Z
2248  */
2249 static inline void gatt_event_all_characteristic_descriptors_query_result_get_characteristic_descriptor(const uint8_t * event, gatt_client_characteristic_descriptor_t * characteristic_descriptor){
2250     gatt_client_deserialize_characteristic_descriptor(event, 4, characteristic_descriptor);
2251 }
2252 #endif
2253 
2254 #ifdef ENABLE_BLE
2255 /**
2256  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
2257  * @param event packet
2258  * @return handle
2259  * @note: btstack_type H
2260  */
2261 static inline hci_con_handle_t gatt_event_characteristic_value_query_result_get_handle(const uint8_t * event){
2262     return little_endian_read_16(event, 2);
2263 }
2264 /**
2265  * @brief Get field value_handle from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
2266  * @param event packet
2267  * @return value_handle
2268  * @note: btstack_type 2
2269  */
2270 static inline uint16_t gatt_event_characteristic_value_query_result_get_value_handle(const uint8_t * event){
2271     return little_endian_read_16(event, 4);
2272 }
2273 /**
2274  * @brief Get field value_length from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
2275  * @param event packet
2276  * @return value_length
2277  * @note: btstack_type L
2278  */
2279 static inline uint16_t gatt_event_characteristic_value_query_result_get_value_length(const uint8_t * event){
2280     return little_endian_read_16(event, 6);
2281 }
2282 /**
2283  * @brief Get field value from event GATT_EVENT_CHARACTERISTIC_VALUE_QUERY_RESULT
2284  * @param event packet
2285  * @return value
2286  * @note: btstack_type V
2287  */
2288 static inline const uint8_t * gatt_event_characteristic_value_query_result_get_value(const uint8_t * event){
2289     return &event[8];
2290 }
2291 #endif
2292 
2293 #ifdef ENABLE_BLE
2294 /**
2295  * @brief Get field handle from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2296  * @param event packet
2297  * @return handle
2298  * @note: btstack_type H
2299  */
2300 static inline hci_con_handle_t gatt_event_long_characteristic_value_query_result_get_handle(const uint8_t * event){
2301     return little_endian_read_16(event, 2);
2302 }
2303 /**
2304  * @brief Get field value_handle from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2305  * @param event packet
2306  * @return value_handle
2307  * @note: btstack_type 2
2308  */
2309 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_handle(const uint8_t * event){
2310     return little_endian_read_16(event, 4);
2311 }
2312 /**
2313  * @brief Get field value_offset from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2314  * @param event packet
2315  * @return value_offset
2316  * @note: btstack_type 2
2317  */
2318 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_offset(const uint8_t * event){
2319     return little_endian_read_16(event, 6);
2320 }
2321 /**
2322  * @brief Get field value_length from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2323  * @param event packet
2324  * @return value_length
2325  * @note: btstack_type L
2326  */
2327 static inline uint16_t gatt_event_long_characteristic_value_query_result_get_value_length(const uint8_t * event){
2328     return little_endian_read_16(event, 8);
2329 }
2330 /**
2331  * @brief Get field value from event GATT_EVENT_LONG_CHARACTERISTIC_VALUE_QUERY_RESULT
2332  * @param event packet
2333  * @return value
2334  * @note: btstack_type V
2335  */
2336 static inline const uint8_t * gatt_event_long_characteristic_value_query_result_get_value(const uint8_t * event){
2337     return &event[10];
2338 }
2339 #endif
2340 
2341 #ifdef ENABLE_BLE
2342 /**
2343  * @brief Get field handle from event GATT_EVENT_NOTIFICATION
2344  * @param event packet
2345  * @return handle
2346  * @note: btstack_type H
2347  */
2348 static inline hci_con_handle_t gatt_event_notification_get_handle(const uint8_t * event){
2349     return little_endian_read_16(event, 2);
2350 }
2351 /**
2352  * @brief Get field value_handle from event GATT_EVENT_NOTIFICATION
2353  * @param event packet
2354  * @return value_handle
2355  * @note: btstack_type 2
2356  */
2357 static inline uint16_t gatt_event_notification_get_value_handle(const uint8_t * event){
2358     return little_endian_read_16(event, 4);
2359 }
2360 /**
2361  * @brief Get field value_length from event GATT_EVENT_NOTIFICATION
2362  * @param event packet
2363  * @return value_length
2364  * @note: btstack_type L
2365  */
2366 static inline uint16_t gatt_event_notification_get_value_length(const uint8_t * event){
2367     return little_endian_read_16(event, 6);
2368 }
2369 /**
2370  * @brief Get field value from event GATT_EVENT_NOTIFICATION
2371  * @param event packet
2372  * @return value
2373  * @note: btstack_type V
2374  */
2375 static inline const uint8_t * gatt_event_notification_get_value(const uint8_t * event){
2376     return &event[8];
2377 }
2378 #endif
2379 
2380 #ifdef ENABLE_BLE
2381 /**
2382  * @brief Get field handle from event GATT_EVENT_INDICATION
2383  * @param event packet
2384  * @return handle
2385  * @note: btstack_type H
2386  */
2387 static inline hci_con_handle_t gatt_event_indication_get_handle(const uint8_t * event){
2388     return little_endian_read_16(event, 2);
2389 }
2390 /**
2391  * @brief Get field value_handle from event GATT_EVENT_INDICATION
2392  * @param event packet
2393  * @return value_handle
2394  * @note: btstack_type 2
2395  */
2396 static inline uint16_t gatt_event_indication_get_value_handle(const uint8_t * event){
2397     return little_endian_read_16(event, 4);
2398 }
2399 /**
2400  * @brief Get field value_length from event GATT_EVENT_INDICATION
2401  * @param event packet
2402  * @return value_length
2403  * @note: btstack_type L
2404  */
2405 static inline uint16_t gatt_event_indication_get_value_length(const uint8_t * event){
2406     return little_endian_read_16(event, 6);
2407 }
2408 /**
2409  * @brief Get field value from event GATT_EVENT_INDICATION
2410  * @param event packet
2411  * @return value
2412  * @note: btstack_type V
2413  */
2414 static inline const uint8_t * gatt_event_indication_get_value(const uint8_t * event){
2415     return &event[8];
2416 }
2417 #endif
2418 
2419 #ifdef ENABLE_BLE
2420 /**
2421  * @brief Get field handle from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2422  * @param event packet
2423  * @return handle
2424  * @note: btstack_type H
2425  */
2426 static inline hci_con_handle_t gatt_event_characteristic_descriptor_query_result_get_handle(const uint8_t * event){
2427     return little_endian_read_16(event, 2);
2428 }
2429 /**
2430  * @brief Get field descriptor_handle from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2431  * @param event packet
2432  * @return descriptor_handle
2433  * @note: btstack_type 2
2434  */
2435 static inline uint16_t gatt_event_characteristic_descriptor_query_result_get_descriptor_handle(const uint8_t * event){
2436     return little_endian_read_16(event, 4);
2437 }
2438 /**
2439  * @brief Get field descriptor_length from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2440  * @param event packet
2441  * @return descriptor_length
2442  * @note: btstack_type L
2443  */
2444 static inline uint16_t gatt_event_characteristic_descriptor_query_result_get_descriptor_length(const uint8_t * event){
2445     return little_endian_read_16(event, 6);
2446 }
2447 /**
2448  * @brief Get field descriptor from event GATT_EVENT_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2449  * @param event packet
2450  * @return descriptor
2451  * @note: btstack_type V
2452  */
2453 static inline const uint8_t * gatt_event_characteristic_descriptor_query_result_get_descriptor(const uint8_t * event){
2454     return &event[8];
2455 }
2456 #endif
2457 
2458 #ifdef ENABLE_BLE
2459 /**
2460  * @brief Get field handle from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2461  * @param event packet
2462  * @return handle
2463  * @note: btstack_type H
2464  */
2465 static inline hci_con_handle_t gatt_event_long_characteristic_descriptor_query_result_get_handle(const uint8_t * event){
2466     return little_endian_read_16(event, 2);
2467 }
2468 /**
2469  * @brief Get field descriptor_offset from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2470  * @param event packet
2471  * @return descriptor_offset
2472  * @note: btstack_type 2
2473  */
2474 static inline uint16_t gatt_event_long_characteristic_descriptor_query_result_get_descriptor_offset(const uint8_t * event){
2475     return little_endian_read_16(event, 4);
2476 }
2477 /**
2478  * @brief Get field descriptor_length from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2479  * @param event packet
2480  * @return descriptor_length
2481  * @note: btstack_type L
2482  */
2483 static inline uint16_t gatt_event_long_characteristic_descriptor_query_result_get_descriptor_length(const uint8_t * event){
2484     return little_endian_read_16(event, 6);
2485 }
2486 /**
2487  * @brief Get field descriptor from event GATT_EVENT_LONG_CHARACTERISTIC_DESCRIPTOR_QUERY_RESULT
2488  * @param event packet
2489  * @return descriptor
2490  * @note: btstack_type V
2491  */
2492 static inline const uint8_t * gatt_event_long_characteristic_descriptor_query_result_get_descriptor(const uint8_t * event){
2493     return &event[8];
2494 }
2495 #endif
2496 
2497 #ifdef ENABLE_BLE
2498 /**
2499  * @brief Get field handle from event GATT_EVENT_MTU
2500  * @param event packet
2501  * @return handle
2502  * @note: btstack_type H
2503  */
2504 static inline hci_con_handle_t gatt_event_mtu_get_handle(const uint8_t * event){
2505     return little_endian_read_16(event, 2);
2506 }
2507 /**
2508  * @brief Get field MTU from event GATT_EVENT_MTU
2509  * @param event packet
2510  * @return MTU
2511  * @note: btstack_type 2
2512  */
2513 static inline uint16_t gatt_event_mtu_get_MTU(const uint8_t * event){
2514     return little_endian_read_16(event, 4);
2515 }
2516 #endif
2517 
2518 #ifdef ENABLE_BLE
2519 /**
2520  * @brief Get field handle from event GATT_EVENT_CAN_WRITE_WITHOUT_RESPONSE
2521  * @param event packet
2522  * @return handle
2523  * @note: btstack_type H
2524  */
2525 static inline hci_con_handle_t gatt_event_can_write_without_response_get_handle(const uint8_t * event){
2526     return little_endian_read_16(event, 2);
2527 }
2528 #endif
2529 
2530 /**
2531  * @brief Get field address_type from event ATT_EVENT_CONNECTED
2532  * @param event packet
2533  * @return address_type
2534  * @note: btstack_type 1
2535  */
2536 static inline uint8_t att_event_connected_get_address_type(const uint8_t * event){
2537     return event[2];
2538 }
2539 /**
2540  * @brief Get field address from event ATT_EVENT_CONNECTED
2541  * @param event packet
2542  * @param Pointer to storage for address
2543  * @note: btstack_type B
2544  */
2545 static inline void att_event_connected_get_address(const uint8_t * event, bd_addr_t address){
2546     reverse_bytes(&event[3], address, 6);
2547 }
2548 /**
2549  * @brief Get field handle from event ATT_EVENT_CONNECTED
2550  * @param event packet
2551  * @return handle
2552  * @note: btstack_type H
2553  */
2554 static inline hci_con_handle_t att_event_connected_get_handle(const uint8_t * event){
2555     return little_endian_read_16(event, 9);
2556 }
2557 
2558 /**
2559  * @brief Get field handle from event ATT_EVENT_DISCONNECTED
2560  * @param event packet
2561  * @return handle
2562  * @note: btstack_type H
2563  */
2564 static inline hci_con_handle_t att_event_disconnected_get_handle(const uint8_t * event){
2565     return little_endian_read_16(event, 2);
2566 }
2567 
2568 /**
2569  * @brief Get field handle from event ATT_EVENT_MTU_EXCHANGE_COMPLETE
2570  * @param event packet
2571  * @return handle
2572  * @note: btstack_type H
2573  */
2574 static inline hci_con_handle_t att_event_mtu_exchange_complete_get_handle(const uint8_t * event){
2575     return little_endian_read_16(event, 2);
2576 }
2577 /**
2578  * @brief Get field MTU from event ATT_EVENT_MTU_EXCHANGE_COMPLETE
2579  * @param event packet
2580  * @return MTU
2581  * @note: btstack_type 2
2582  */
2583 static inline uint16_t att_event_mtu_exchange_complete_get_MTU(const uint8_t * event){
2584     return little_endian_read_16(event, 4);
2585 }
2586 
2587 /**
2588  * @brief Get field status from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2589  * @param event packet
2590  * @return status
2591  * @note: btstack_type 1
2592  */
2593 static inline uint8_t att_event_handle_value_indication_complete_get_status(const uint8_t * event){
2594     return event[2];
2595 }
2596 /**
2597  * @brief Get field conn_handle from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2598  * @param event packet
2599  * @return conn_handle
2600  * @note: btstack_type H
2601  */
2602 static inline hci_con_handle_t att_event_handle_value_indication_complete_get_conn_handle(const uint8_t * event){
2603     return little_endian_read_16(event, 3);
2604 }
2605 /**
2606  * @brief Get field attribute_handle from event ATT_EVENT_HANDLE_VALUE_INDICATION_COMPLETE
2607  * @param event packet
2608  * @return attribute_handle
2609  * @note: btstack_type 2
2610  */
2611 static inline uint16_t att_event_handle_value_indication_complete_get_attribute_handle(const uint8_t * event){
2612     return little_endian_read_16(event, 5);
2613 }
2614 
2615 
2616 /**
2617  * @brief Get field status from event BNEP_EVENT_SERVICE_REGISTERED
2618  * @param event packet
2619  * @return status
2620  * @note: btstack_type 1
2621  */
2622 static inline uint8_t bnep_event_service_registered_get_status(const uint8_t * event){
2623     return event[2];
2624 }
2625 /**
2626  * @brief Get field service_uuid from event BNEP_EVENT_SERVICE_REGISTERED
2627  * @param event packet
2628  * @return service_uuid
2629  * @note: btstack_type 2
2630  */
2631 static inline uint16_t bnep_event_service_registered_get_service_uuid(const uint8_t * event){
2632     return little_endian_read_16(event, 3);
2633 }
2634 
2635 /**
2636  * @brief Get field status from event BNEP_EVENT_CHANNEL_OPENED
2637  * @param event packet
2638  * @return status
2639  * @note: btstack_type 1
2640  */
2641 static inline uint8_t bnep_event_channel_opened_get_status(const uint8_t * event){
2642     return event[2];
2643 }
2644 /**
2645  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_OPENED
2646  * @param event packet
2647  * @return bnep_cid
2648  * @note: btstack_type 2
2649  */
2650 static inline uint16_t bnep_event_channel_opened_get_bnep_cid(const uint8_t * event){
2651     return little_endian_read_16(event, 3);
2652 }
2653 /**
2654  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_OPENED
2655  * @param event packet
2656  * @return source_uuid
2657  * @note: btstack_type 2
2658  */
2659 static inline uint16_t bnep_event_channel_opened_get_source_uuid(const uint8_t * event){
2660     return little_endian_read_16(event, 5);
2661 }
2662 /**
2663  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_OPENED
2664  * @param event packet
2665  * @return destination_uuid
2666  * @note: btstack_type 2
2667  */
2668 static inline uint16_t bnep_event_channel_opened_get_destination_uuid(const uint8_t * event){
2669     return little_endian_read_16(event, 7);
2670 }
2671 /**
2672  * @brief Get field mtu from event BNEP_EVENT_CHANNEL_OPENED
2673  * @param event packet
2674  * @return mtu
2675  * @note: btstack_type 2
2676  */
2677 static inline uint16_t bnep_event_channel_opened_get_mtu(const uint8_t * event){
2678     return little_endian_read_16(event, 9);
2679 }
2680 /**
2681  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_OPENED
2682  * @param event packet
2683  * @param Pointer to storage for remote_address
2684  * @note: btstack_type B
2685  */
2686 static inline void bnep_event_channel_opened_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2687     reverse_bytes(&event[11], remote_address, 6);
2688 }
2689 /**
2690  * @brief Get field con_handle from event BNEP_EVENT_CHANNEL_OPENED
2691  * @param event packet
2692  * @return con_handle
2693  * @note: btstack_type H
2694  */
2695 static inline hci_con_handle_t bnep_event_channel_opened_get_con_handle(const uint8_t * event){
2696     return little_endian_read_16(event, 17);
2697 }
2698 
2699 /**
2700  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_CLOSED
2701  * @param event packet
2702  * @return bnep_cid
2703  * @note: btstack_type 2
2704  */
2705 static inline uint16_t bnep_event_channel_closed_get_bnep_cid(const uint8_t * event){
2706     return little_endian_read_16(event, 2);
2707 }
2708 /**
2709  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_CLOSED
2710  * @param event packet
2711  * @return source_uuid
2712  * @note: btstack_type 2
2713  */
2714 static inline uint16_t bnep_event_channel_closed_get_source_uuid(const uint8_t * event){
2715     return little_endian_read_16(event, 4);
2716 }
2717 /**
2718  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_CLOSED
2719  * @param event packet
2720  * @return destination_uuid
2721  * @note: btstack_type 2
2722  */
2723 static inline uint16_t bnep_event_channel_closed_get_destination_uuid(const uint8_t * event){
2724     return little_endian_read_16(event, 6);
2725 }
2726 /**
2727  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_CLOSED
2728  * @param event packet
2729  * @param Pointer to storage for remote_address
2730  * @note: btstack_type B
2731  */
2732 static inline void bnep_event_channel_closed_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2733     reverse_bytes(&event[8], remote_address, 6);
2734 }
2735 
2736 /**
2737  * @brief Get field bnep_cid from event BNEP_EVENT_CHANNEL_TIMEOUT
2738  * @param event packet
2739  * @return bnep_cid
2740  * @note: btstack_type 2
2741  */
2742 static inline uint16_t bnep_event_channel_timeout_get_bnep_cid(const uint8_t * event){
2743     return little_endian_read_16(event, 2);
2744 }
2745 /**
2746  * @brief Get field source_uuid from event BNEP_EVENT_CHANNEL_TIMEOUT
2747  * @param event packet
2748  * @return source_uuid
2749  * @note: btstack_type 2
2750  */
2751 static inline uint16_t bnep_event_channel_timeout_get_source_uuid(const uint8_t * event){
2752     return little_endian_read_16(event, 4);
2753 }
2754 /**
2755  * @brief Get field destination_uuid from event BNEP_EVENT_CHANNEL_TIMEOUT
2756  * @param event packet
2757  * @return destination_uuid
2758  * @note: btstack_type 2
2759  */
2760 static inline uint16_t bnep_event_channel_timeout_get_destination_uuid(const uint8_t * event){
2761     return little_endian_read_16(event, 6);
2762 }
2763 /**
2764  * @brief Get field remote_address from event BNEP_EVENT_CHANNEL_TIMEOUT
2765  * @param event packet
2766  * @param Pointer to storage for remote_address
2767  * @note: btstack_type B
2768  */
2769 static inline void bnep_event_channel_timeout_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2770     reverse_bytes(&event[8], remote_address, 6);
2771 }
2772 /**
2773  * @brief Get field channel_state from event BNEP_EVENT_CHANNEL_TIMEOUT
2774  * @param event packet
2775  * @return channel_state
2776  * @note: btstack_type 1
2777  */
2778 static inline uint8_t bnep_event_channel_timeout_get_channel_state(const uint8_t * event){
2779     return event[14];
2780 }
2781 
2782 /**
2783  * @brief Get field bnep_cid from event BNEP_EVENT_CAN_SEND_NOW
2784  * @param event packet
2785  * @return bnep_cid
2786  * @note: btstack_type 2
2787  */
2788 static inline uint16_t bnep_event_can_send_now_get_bnep_cid(const uint8_t * event){
2789     return little_endian_read_16(event, 2);
2790 }
2791 /**
2792  * @brief Get field source_uuid from event BNEP_EVENT_CAN_SEND_NOW
2793  * @param event packet
2794  * @return source_uuid
2795  * @note: btstack_type 2
2796  */
2797 static inline uint16_t bnep_event_can_send_now_get_source_uuid(const uint8_t * event){
2798     return little_endian_read_16(event, 4);
2799 }
2800 /**
2801  * @brief Get field destination_uuid from event BNEP_EVENT_CAN_SEND_NOW
2802  * @param event packet
2803  * @return destination_uuid
2804  * @note: btstack_type 2
2805  */
2806 static inline uint16_t bnep_event_can_send_now_get_destination_uuid(const uint8_t * event){
2807     return little_endian_read_16(event, 6);
2808 }
2809 /**
2810  * @brief Get field remote_address from event BNEP_EVENT_CAN_SEND_NOW
2811  * @param event packet
2812  * @param Pointer to storage for remote_address
2813  * @note: btstack_type B
2814  */
2815 static inline void bnep_event_can_send_now_get_remote_address(const uint8_t * event, bd_addr_t remote_address){
2816     reverse_bytes(&event[8], remote_address, 6);
2817 }
2818 
2819 #ifdef ENABLE_BLE
2820 /**
2821  * @brief Get field handle from event SM_EVENT_JUST_WORKS_REQUEST
2822  * @param event packet
2823  * @return handle
2824  * @note: btstack_type H
2825  */
2826 static inline hci_con_handle_t sm_event_just_works_request_get_handle(const uint8_t * event){
2827     return little_endian_read_16(event, 2);
2828 }
2829 /**
2830  * @brief Get field addr_type from event SM_EVENT_JUST_WORKS_REQUEST
2831  * @param event packet
2832  * @return addr_type
2833  * @note: btstack_type 1
2834  */
2835 static inline uint8_t sm_event_just_works_request_get_addr_type(const uint8_t * event){
2836     return event[4];
2837 }
2838 /**
2839  * @brief Get field address from event SM_EVENT_JUST_WORKS_REQUEST
2840  * @param event packet
2841  * @param Pointer to storage for address
2842  * @note: btstack_type B
2843  */
2844 static inline void sm_event_just_works_request_get_address(const uint8_t * event, bd_addr_t address){
2845     reverse_bytes(&event[5], address, 6);
2846 }
2847 #endif
2848 
2849 #ifdef ENABLE_BLE
2850 /**
2851  * @brief Get field handle from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2852  * @param event packet
2853  * @return handle
2854  * @note: btstack_type H
2855  */
2856 static inline hci_con_handle_t sm_event_passkey_display_number_get_handle(const uint8_t * event){
2857     return little_endian_read_16(event, 2);
2858 }
2859 /**
2860  * @brief Get field addr_type from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2861  * @param event packet
2862  * @return addr_type
2863  * @note: btstack_type 1
2864  */
2865 static inline uint8_t sm_event_passkey_display_number_get_addr_type(const uint8_t * event){
2866     return event[4];
2867 }
2868 /**
2869  * @brief Get field address from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2870  * @param event packet
2871  * @param Pointer to storage for address
2872  * @note: btstack_type B
2873  */
2874 static inline void sm_event_passkey_display_number_get_address(const uint8_t * event, bd_addr_t address){
2875     reverse_bytes(&event[5], address, 6);
2876 }
2877 /**
2878  * @brief Get field passkey from event SM_EVENT_PASSKEY_DISPLAY_NUMBER
2879  * @param event packet
2880  * @return passkey
2881  * @note: btstack_type 4
2882  */
2883 static inline uint32_t sm_event_passkey_display_number_get_passkey(const uint8_t * event){
2884     return little_endian_read_32(event, 11);
2885 }
2886 #endif
2887 
2888 #ifdef ENABLE_BLE
2889 /**
2890  * @brief Get field handle from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2891  * @param event packet
2892  * @return handle
2893  * @note: btstack_type H
2894  */
2895 static inline hci_con_handle_t sm_event_passkey_display_cancel_get_handle(const uint8_t * event){
2896     return little_endian_read_16(event, 2);
2897 }
2898 /**
2899  * @brief Get field addr_type from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2900  * @param event packet
2901  * @return addr_type
2902  * @note: btstack_type 1
2903  */
2904 static inline uint8_t sm_event_passkey_display_cancel_get_addr_type(const uint8_t * event){
2905     return event[4];
2906 }
2907 /**
2908  * @brief Get field address from event SM_EVENT_PASSKEY_DISPLAY_CANCEL
2909  * @param event packet
2910  * @param Pointer to storage for address
2911  * @note: btstack_type B
2912  */
2913 static inline void sm_event_passkey_display_cancel_get_address(const uint8_t * event, bd_addr_t address){
2914     reverse_bytes(&event[5], address, 6);
2915 }
2916 #endif
2917 
2918 #ifdef ENABLE_BLE
2919 /**
2920  * @brief Get field handle from event SM_EVENT_PASSKEY_INPUT_NUMBER
2921  * @param event packet
2922  * @return handle
2923  * @note: btstack_type H
2924  */
2925 static inline hci_con_handle_t sm_event_passkey_input_number_get_handle(const uint8_t * event){
2926     return little_endian_read_16(event, 2);
2927 }
2928 /**
2929  * @brief Get field addr_type from event SM_EVENT_PASSKEY_INPUT_NUMBER
2930  * @param event packet
2931  * @return addr_type
2932  * @note: btstack_type 1
2933  */
2934 static inline uint8_t sm_event_passkey_input_number_get_addr_type(const uint8_t * event){
2935     return event[4];
2936 }
2937 /**
2938  * @brief Get field address from event SM_EVENT_PASSKEY_INPUT_NUMBER
2939  * @param event packet
2940  * @param Pointer to storage for address
2941  * @note: btstack_type B
2942  */
2943 static inline void sm_event_passkey_input_number_get_address(const uint8_t * event, bd_addr_t address){
2944     reverse_bytes(&event[5], address, 6);
2945 }
2946 #endif
2947 
2948 #ifdef ENABLE_BLE
2949 /**
2950  * @brief Get field handle from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2951  * @param event packet
2952  * @return handle
2953  * @note: btstack_type H
2954  */
2955 static inline hci_con_handle_t sm_event_numeric_comparison_request_get_handle(const uint8_t * event){
2956     return little_endian_read_16(event, 2);
2957 }
2958 /**
2959  * @brief Get field addr_type from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2960  * @param event packet
2961  * @return addr_type
2962  * @note: btstack_type 1
2963  */
2964 static inline uint8_t sm_event_numeric_comparison_request_get_addr_type(const uint8_t * event){
2965     return event[4];
2966 }
2967 /**
2968  * @brief Get field address from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2969  * @param event packet
2970  * @param Pointer to storage for address
2971  * @note: btstack_type B
2972  */
2973 static inline void sm_event_numeric_comparison_request_get_address(const uint8_t * event, bd_addr_t address){
2974     reverse_bytes(&event[5], address, 6);
2975 }
2976 /**
2977  * @brief Get field passkey from event SM_EVENT_NUMERIC_COMPARISON_REQUEST
2978  * @param event packet
2979  * @return passkey
2980  * @note: btstack_type 4
2981  */
2982 static inline uint32_t sm_event_numeric_comparison_request_get_passkey(const uint8_t * event){
2983     return little_endian_read_32(event, 11);
2984 }
2985 #endif
2986 
2987 #ifdef ENABLE_BLE
2988 /**
2989  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_STARTED
2990  * @param event packet
2991  * @return handle
2992  * @note: btstack_type H
2993  */
2994 static inline hci_con_handle_t sm_event_identity_resolving_started_get_handle(const uint8_t * event){
2995     return little_endian_read_16(event, 2);
2996 }
2997 /**
2998  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_STARTED
2999  * @param event packet
3000  * @return addr_type
3001  * @note: btstack_type 1
3002  */
3003 static inline uint8_t sm_event_identity_resolving_started_get_addr_type(const uint8_t * event){
3004     return event[4];
3005 }
3006 /**
3007  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_STARTED
3008  * @param event packet
3009  * @param Pointer to storage for address
3010  * @note: btstack_type B
3011  */
3012 static inline void sm_event_identity_resolving_started_get_address(const uint8_t * event, bd_addr_t address){
3013     reverse_bytes(&event[5], address, 6);
3014 }
3015 #endif
3016 
3017 #ifdef ENABLE_BLE
3018 /**
3019  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_FAILED
3020  * @param event packet
3021  * @return handle
3022  * @note: btstack_type H
3023  */
3024 static inline hci_con_handle_t sm_event_identity_resolving_failed_get_handle(const uint8_t * event){
3025     return little_endian_read_16(event, 2);
3026 }
3027 /**
3028  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_FAILED
3029  * @param event packet
3030  * @return addr_type
3031  * @note: btstack_type 1
3032  */
3033 static inline uint8_t sm_event_identity_resolving_failed_get_addr_type(const uint8_t * event){
3034     return event[4];
3035 }
3036 /**
3037  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_FAILED
3038  * @param event packet
3039  * @param Pointer to storage for address
3040  * @note: btstack_type B
3041  */
3042 static inline void sm_event_identity_resolving_failed_get_address(const uint8_t * event, bd_addr_t address){
3043     reverse_bytes(&event[5], address, 6);
3044 }
3045 #endif
3046 
3047 #ifdef ENABLE_BLE
3048 /**
3049  * @brief Get field handle from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3050  * @param event packet
3051  * @return handle
3052  * @note: btstack_type H
3053  */
3054 static inline hci_con_handle_t sm_event_identity_resolving_succeeded_get_handle(const uint8_t * event){
3055     return little_endian_read_16(event, 2);
3056 }
3057 /**
3058  * @brief Get field addr_type from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3059  * @param event packet
3060  * @return addr_type
3061  * @note: btstack_type 1
3062  */
3063 static inline uint8_t sm_event_identity_resolving_succeeded_get_addr_type(const uint8_t * event){
3064     return event[4];
3065 }
3066 /**
3067  * @brief Get field address from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3068  * @param event packet
3069  * @param Pointer to storage for address
3070  * @note: btstack_type B
3071  */
3072 static inline void sm_event_identity_resolving_succeeded_get_address(const uint8_t * event, bd_addr_t address){
3073     reverse_bytes(&event[5], address, 6);
3074 }
3075 /**
3076  * @brief Get field identity_addr_type from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3077  * @param event packet
3078  * @return identity_addr_type
3079  * @note: btstack_type 1
3080  */
3081 static inline uint8_t sm_event_identity_resolving_succeeded_get_identity_addr_type(const uint8_t * event){
3082     return event[11];
3083 }
3084 /**
3085  * @brief Get field identity_address from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3086  * @param event packet
3087  * @param Pointer to storage for identity_address
3088  * @note: btstack_type B
3089  */
3090 static inline void sm_event_identity_resolving_succeeded_get_identity_address(const uint8_t * event, bd_addr_t identity_address){
3091     reverse_bytes(&event[12], identity_address, 6);
3092 }
3093 /**
3094  * @brief Get field index from event SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
3095  * @param event packet
3096  * @return index
3097  * @note: btstack_type 2
3098  */
3099 static inline uint16_t sm_event_identity_resolving_succeeded_get_index(const uint8_t * event){
3100     return little_endian_read_16(event, 18);
3101 }
3102 #endif
3103 
3104 #ifdef ENABLE_BLE
3105 /**
3106  * @brief Get field handle from event SM_EVENT_AUTHORIZATION_REQUEST
3107  * @param event packet
3108  * @return handle
3109  * @note: btstack_type H
3110  */
3111 static inline hci_con_handle_t sm_event_authorization_request_get_handle(const uint8_t * event){
3112     return little_endian_read_16(event, 2);
3113 }
3114 /**
3115  * @brief Get field addr_type from event SM_EVENT_AUTHORIZATION_REQUEST
3116  * @param event packet
3117  * @return addr_type
3118  * @note: btstack_type 1
3119  */
3120 static inline uint8_t sm_event_authorization_request_get_addr_type(const uint8_t * event){
3121     return event[4];
3122 }
3123 /**
3124  * @brief Get field address from event SM_EVENT_AUTHORIZATION_REQUEST
3125  * @param event packet
3126  * @param Pointer to storage for address
3127  * @note: btstack_type B
3128  */
3129 static inline void sm_event_authorization_request_get_address(const uint8_t * event, bd_addr_t address){
3130     reverse_bytes(&event[5], address, 6);
3131 }
3132 #endif
3133 
3134 #ifdef ENABLE_BLE
3135 /**
3136  * @brief Get field handle from event SM_EVENT_AUTHORIZATION_RESULT
3137  * @param event packet
3138  * @return handle
3139  * @note: btstack_type H
3140  */
3141 static inline hci_con_handle_t sm_event_authorization_result_get_handle(const uint8_t * event){
3142     return little_endian_read_16(event, 2);
3143 }
3144 /**
3145  * @brief Get field addr_type from event SM_EVENT_AUTHORIZATION_RESULT
3146  * @param event packet
3147  * @return addr_type
3148  * @note: btstack_type 1
3149  */
3150 static inline uint8_t sm_event_authorization_result_get_addr_type(const uint8_t * event){
3151     return event[4];
3152 }
3153 /**
3154  * @brief Get field address from event SM_EVENT_AUTHORIZATION_RESULT
3155  * @param event packet
3156  * @param Pointer to storage for address
3157  * @note: btstack_type B
3158  */
3159 static inline void sm_event_authorization_result_get_address(const uint8_t * event, bd_addr_t address){
3160     reverse_bytes(&event[5], address, 6);
3161 }
3162 /**
3163  * @brief Get field authorization_result from event SM_EVENT_AUTHORIZATION_RESULT
3164  * @param event packet
3165  * @return authorization_result
3166  * @note: btstack_type 1
3167  */
3168 static inline uint8_t sm_event_authorization_result_get_authorization_result(const uint8_t * event){
3169     return event[11];
3170 }
3171 #endif
3172 
3173 #ifdef ENABLE_BLE
3174 /**
3175  * @brief Get field handle from event SM_EVENT_KEYPRESS_NOTIFICATION
3176  * @param event packet
3177  * @return handle
3178  * @note: btstack_type H
3179  */
3180 static inline hci_con_handle_t sm_event_keypress_notification_get_handle(const uint8_t * event){
3181     return little_endian_read_16(event, 2);
3182 }
3183 /**
3184  * @brief Get field action from event SM_EVENT_KEYPRESS_NOTIFICATION
3185  * @param event packet
3186  * @return action
3187  * @note: btstack_type 1
3188  */
3189 static inline uint8_t sm_event_keypress_notification_get_action(const uint8_t * event){
3190     return event[4];
3191 }
3192 #endif
3193 
3194 #ifdef ENABLE_BLE
3195 /**
3196  * @brief Get field handle from event SM_EVENT_IDENTITY_CREATED
3197  * @param event packet
3198  * @return handle
3199  * @note: btstack_type H
3200  */
3201 static inline hci_con_handle_t sm_event_identity_created_get_handle(const uint8_t * event){
3202     return little_endian_read_16(event, 2);
3203 }
3204 /**
3205  * @brief Get field addr_type from event SM_EVENT_IDENTITY_CREATED
3206  * @param event packet
3207  * @return addr_type
3208  * @note: btstack_type 1
3209  */
3210 static inline uint8_t sm_event_identity_created_get_addr_type(const uint8_t * event){
3211     return event[4];
3212 }
3213 /**
3214  * @brief Get field address from event SM_EVENT_IDENTITY_CREATED
3215  * @param event packet
3216  * @param Pointer to storage for address
3217  * @note: btstack_type B
3218  */
3219 static inline void sm_event_identity_created_get_address(const uint8_t * event, bd_addr_t address){
3220     reverse_bytes(&event[5], address, 6);
3221 }
3222 /**
3223  * @brief Get field identity_addr_type from event SM_EVENT_IDENTITY_CREATED
3224  * @param event packet
3225  * @return identity_addr_type
3226  * @note: btstack_type 1
3227  */
3228 static inline uint8_t sm_event_identity_created_get_identity_addr_type(const uint8_t * event){
3229     return event[11];
3230 }
3231 /**
3232  * @brief Get field identity_address from event SM_EVENT_IDENTITY_CREATED
3233  * @param event packet
3234  * @param Pointer to storage for identity_address
3235  * @note: btstack_type B
3236  */
3237 static inline void sm_event_identity_created_get_identity_address(const uint8_t * event, bd_addr_t identity_address){
3238     reverse_bytes(&event[12], identity_address, 6);
3239 }
3240 /**
3241  * @brief Get field index from event SM_EVENT_IDENTITY_CREATED
3242  * @param event packet
3243  * @return index
3244  * @note: btstack_type 2
3245  */
3246 static inline uint16_t sm_event_identity_created_get_index(const uint8_t * event){
3247     return little_endian_read_16(event, 18);
3248 }
3249 #endif
3250 
3251 #ifdef ENABLE_BLE
3252 /**
3253  * @brief Get field handle from event SM_EVENT_PAIRING_STARTED
3254  * @param event packet
3255  * @return handle
3256  * @note: btstack_type H
3257  */
3258 static inline hci_con_handle_t sm_event_pairing_started_get_handle(const uint8_t * event){
3259     return little_endian_read_16(event, 2);
3260 }
3261 /**
3262  * @brief Get field addr_type from event SM_EVENT_PAIRING_STARTED
3263  * @param event packet
3264  * @return addr_type
3265  * @note: btstack_type 1
3266  */
3267 static inline uint8_t sm_event_pairing_started_get_addr_type(const uint8_t * event){
3268     return event[4];
3269 }
3270 /**
3271  * @brief Get field address from event SM_EVENT_PAIRING_STARTED
3272  * @param event packet
3273  * @param Pointer to storage for address
3274  * @note: btstack_type B
3275  */
3276 static inline void sm_event_pairing_started_get_address(const uint8_t * event, bd_addr_t address){
3277     reverse_bytes(&event[5], address, 6);
3278 }
3279 #endif
3280 
3281 #ifdef ENABLE_BLE
3282 /**
3283  * @brief Get field handle from event SM_EVENT_PAIRING_COMPLETE
3284  * @param event packet
3285  * @return handle
3286  * @note: btstack_type H
3287  */
3288 static inline hci_con_handle_t sm_event_pairing_complete_get_handle(const uint8_t * event){
3289     return little_endian_read_16(event, 2);
3290 }
3291 /**
3292  * @brief Get field addr_type from event SM_EVENT_PAIRING_COMPLETE
3293  * @param event packet
3294  * @return addr_type
3295  * @note: btstack_type 1
3296  */
3297 static inline uint8_t sm_event_pairing_complete_get_addr_type(const uint8_t * event){
3298     return event[4];
3299 }
3300 /**
3301  * @brief Get field address from event SM_EVENT_PAIRING_COMPLETE
3302  * @param event packet
3303  * @param Pointer to storage for address
3304  * @note: btstack_type B
3305  */
3306 static inline void sm_event_pairing_complete_get_address(const uint8_t * event, bd_addr_t address){
3307     reverse_bytes(&event[5], address, 6);
3308 }
3309 /**
3310  * @brief Get field status from event SM_EVENT_PAIRING_COMPLETE
3311  * @param event packet
3312  * @return status
3313  * @note: btstack_type 1
3314  */
3315 static inline uint8_t sm_event_pairing_complete_get_status(const uint8_t * event){
3316     return event[11];
3317 }
3318 /**
3319  * @brief Get field reason from event SM_EVENT_PAIRING_COMPLETE
3320  * @param event packet
3321  * @return reason
3322  * @note: btstack_type 1
3323  */
3324 static inline uint8_t sm_event_pairing_complete_get_reason(const uint8_t * event){
3325     return event[12];
3326 }
3327 #endif
3328 
3329 #ifdef ENABLE_BLE
3330 /**
3331  * @brief Get field handle from event SM_EVENT_REENCRYPTION_STARTED
3332  * @param event packet
3333  * @return handle
3334  * @note: btstack_type H
3335  */
3336 static inline hci_con_handle_t sm_event_reencryption_started_get_handle(const uint8_t * event){
3337     return little_endian_read_16(event, 2);
3338 }
3339 /**
3340  * @brief Get field addr_type from event SM_EVENT_REENCRYPTION_STARTED
3341  * @param event packet
3342  * @return addr_type
3343  * @note: btstack_type 1
3344  */
3345 static inline uint8_t sm_event_reencryption_started_get_addr_type(const uint8_t * event){
3346     return event[4];
3347 }
3348 /**
3349  * @brief Get field address from event SM_EVENT_REENCRYPTION_STARTED
3350  * @param event packet
3351  * @param Pointer to storage for address
3352  * @note: btstack_type B
3353  */
3354 static inline void sm_event_reencryption_started_get_address(const uint8_t * event, bd_addr_t address){
3355     reverse_bytes(&event[5], address, 6);
3356 }
3357 #endif
3358 
3359 #ifdef ENABLE_BLE
3360 /**
3361  * @brief Get field handle from event SM_EVENT_REENCRYPTION_COMPLETE
3362  * @param event packet
3363  * @return handle
3364  * @note: btstack_type H
3365  */
3366 static inline hci_con_handle_t sm_event_reencryption_complete_get_handle(const uint8_t * event){
3367     return little_endian_read_16(event, 2);
3368 }
3369 /**
3370  * @brief Get field addr_type from event SM_EVENT_REENCRYPTION_COMPLETE
3371  * @param event packet
3372  * @return addr_type
3373  * @note: btstack_type 1
3374  */
3375 static inline uint8_t sm_event_reencryption_complete_get_addr_type(const uint8_t * event){
3376     return event[4];
3377 }
3378 /**
3379  * @brief Get field address from event SM_EVENT_REENCRYPTION_COMPLETE
3380  * @param event packet
3381  * @param Pointer to storage for address
3382  * @note: btstack_type B
3383  */
3384 static inline void sm_event_reencryption_complete_get_address(const uint8_t * event, bd_addr_t address){
3385     reverse_bytes(&event[5], address, 6);
3386 }
3387 /**
3388  * @brief Get field status from event SM_EVENT_REENCRYPTION_COMPLETE
3389  * @param event packet
3390  * @return status
3391  * @note: btstack_type 1
3392  */
3393 static inline uint8_t sm_event_reencryption_complete_get_status(const uint8_t * event){
3394     return event[11];
3395 }
3396 #endif
3397 
3398 /**
3399  * @brief Get field handle from event GAP_EVENT_SECURITY_LEVEL
3400  * @param event packet
3401  * @return handle
3402  * @note: btstack_type H
3403  */
3404 static inline hci_con_handle_t gap_event_security_level_get_handle(const uint8_t * event){
3405     return little_endian_read_16(event, 2);
3406 }
3407 /**
3408  * @brief Get field security_level from event GAP_EVENT_SECURITY_LEVEL
3409  * @param event packet
3410  * @return security_level
3411  * @note: btstack_type 1
3412  */
3413 static inline uint8_t gap_event_security_level_get_security_level(const uint8_t * event){
3414     return event[4];
3415 }
3416 
3417 /**
3418  * @brief Get field status from event GAP_EVENT_DEDICATED_BONDING_COMPLETED
3419  * @param event packet
3420  * @return status
3421  * @note: btstack_type 1
3422  */
3423 static inline uint8_t gap_event_dedicated_bonding_completed_get_status(const uint8_t * event){
3424     return event[2];
3425 }
3426 /**
3427  * @brief Get field address from event GAP_EVENT_DEDICATED_BONDING_COMPLETED
3428  * @param event packet
3429  * @param Pointer to storage for address
3430  * @note: btstack_type B
3431  */
3432 static inline void gap_event_dedicated_bonding_completed_get_address(const uint8_t * event, bd_addr_t address){
3433     reverse_bytes(&event[3], address, 6);
3434 }
3435 
3436 /**
3437  * @brief Get field advertising_event_type from event GAP_EVENT_ADVERTISING_REPORT
3438  * @param event packet
3439  * @return advertising_event_type
3440  * @note: btstack_type 1
3441  */
3442 static inline uint8_t gap_event_advertising_report_get_advertising_event_type(const uint8_t * event){
3443     return event[2];
3444 }
3445 /**
3446  * @brief Get field address_type from event GAP_EVENT_ADVERTISING_REPORT
3447  * @param event packet
3448  * @return address_type
3449  * @note: btstack_type 1
3450  */
3451 static inline uint8_t gap_event_advertising_report_get_address_type(const uint8_t * event){
3452     return event[3];
3453 }
3454 /**
3455  * @brief Get field address from event GAP_EVENT_ADVERTISING_REPORT
3456  * @param event packet
3457  * @param Pointer to storage for address
3458  * @note: btstack_type B
3459  */
3460 static inline void gap_event_advertising_report_get_address(const uint8_t * event, bd_addr_t address){
3461     reverse_bytes(&event[4], address, 6);
3462 }
3463 /**
3464  * @brief Get field rssi from event GAP_EVENT_ADVERTISING_REPORT
3465  * @param event packet
3466  * @return rssi
3467  * @note: btstack_type 1
3468  */
3469 static inline uint8_t gap_event_advertising_report_get_rssi(const uint8_t * event){
3470     return event[10];
3471 }
3472 /**
3473  * @brief Get field data_length from event GAP_EVENT_ADVERTISING_REPORT
3474  * @param event packet
3475  * @return data_length
3476  * @note: btstack_type J
3477  */
3478 static inline uint8_t gap_event_advertising_report_get_data_length(const uint8_t * event){
3479     return event[11];
3480 }
3481 /**
3482  * @brief Get field data from event GAP_EVENT_ADVERTISING_REPORT
3483  * @param event packet
3484  * @return data
3485  * @note: btstack_type V
3486  */
3487 static inline const uint8_t * gap_event_advertising_report_get_data(const uint8_t * event){
3488     return &event[12];
3489 }
3490 
3491 /**
3492  * @brief Get field advertising_event_type from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3493  * @param event packet
3494  * @return advertising_event_type
3495  * @note: btstack_type 2
3496  */
3497 static inline uint16_t gap_event_extended_advertising_report_get_advertising_event_type(const uint8_t * event){
3498     return little_endian_read_16(event, 2);
3499 }
3500 /**
3501  * @brief Get field address_type from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3502  * @param event packet
3503  * @return address_type
3504  * @note: btstack_type 1
3505  */
3506 static inline uint8_t gap_event_extended_advertising_report_get_address_type(const uint8_t * event){
3507     return event[4];
3508 }
3509 /**
3510  * @brief Get field address from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3511  * @param event packet
3512  * @param Pointer to storage for address
3513  * @note: btstack_type B
3514  */
3515 static inline void gap_event_extended_advertising_report_get_address(const uint8_t * event, bd_addr_t address){
3516     reverse_bytes(&event[5], address, 6);
3517 }
3518 /**
3519  * @brief Get field primary_phy from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3520  * @param event packet
3521  * @return primary_phy
3522  * @note: btstack_type 1
3523  */
3524 static inline uint8_t gap_event_extended_advertising_report_get_primary_phy(const uint8_t * event){
3525     return event[11];
3526 }
3527 /**
3528  * @brief Get field secondary_phy from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3529  * @param event packet
3530  * @return secondary_phy
3531  * @note: btstack_type 1
3532  */
3533 static inline uint8_t gap_event_extended_advertising_report_get_secondary_phy(const uint8_t * event){
3534     return event[12];
3535 }
3536 /**
3537  * @brief Get field advertising_sid from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3538  * @param event packet
3539  * @return advertising_sid
3540  * @note: btstack_type 1
3541  */
3542 static inline uint8_t gap_event_extended_advertising_report_get_advertising_sid(const uint8_t * event){
3543     return event[13];
3544 }
3545 /**
3546  * @brief Get field tx_power from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3547  * @param event packet
3548  * @return tx_power
3549  * @note: btstack_type 1
3550  */
3551 static inline uint8_t gap_event_extended_advertising_report_get_tx_power(const uint8_t * event){
3552     return event[14];
3553 }
3554 /**
3555  * @brief Get field rssi from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3556  * @param event packet
3557  * @return rssi
3558  * @note: btstack_type 1
3559  */
3560 static inline uint8_t gap_event_extended_advertising_report_get_rssi(const uint8_t * event){
3561     return event[15];
3562 }
3563 /**
3564  * @brief Get field periodic_advertising_interval from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3565  * @param event packet
3566  * @return periodic_advertising_interval
3567  * @note: btstack_type 2
3568  */
3569 static inline uint16_t gap_event_extended_advertising_report_get_periodic_advertising_interval(const uint8_t * event){
3570     return little_endian_read_16(event, 16);
3571 }
3572 /**
3573  * @brief Get field direct_address_type from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3574  * @param event packet
3575  * @return direct_address_type
3576  * @note: btstack_type 1
3577  */
3578 static inline uint8_t gap_event_extended_advertising_report_get_direct_address_type(const uint8_t * event){
3579     return event[18];
3580 }
3581 /**
3582  * @brief Get field direct_address from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3583  * @param event packet
3584  * @param Pointer to storage for direct_address
3585  * @note: btstack_type B
3586  */
3587 static inline void gap_event_extended_advertising_report_get_direct_address(const uint8_t * event, bd_addr_t direct_address){
3588     reverse_bytes(&event[19], direct_address, 6);
3589 }
3590 /**
3591  * @brief Get field data_length from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3592  * @param event packet
3593  * @return data_length
3594  * @note: btstack_type J
3595  */
3596 static inline uint8_t gap_event_extended_advertising_report_get_data_length(const uint8_t * event){
3597     return event[25];
3598 }
3599 /**
3600  * @brief Get field data from event GAP_EVENT_EXTENDED_ADVERTISING_REPORT
3601  * @param event packet
3602  * @return data
3603  * @note: btstack_type V
3604  */
3605 static inline const uint8_t * gap_event_extended_advertising_report_get_data(const uint8_t * event){
3606     return &event[26];
3607 }
3608 
3609 /**
3610  * @brief Get field bd_addr from event GAP_EVENT_INQUIRY_RESULT
3611  * @param event packet
3612  * @param Pointer to storage for bd_addr
3613  * @note: btstack_type B
3614  */
3615 static inline void gap_event_inquiry_result_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3616     reverse_bytes(&event[2], bd_addr, 6);
3617 }
3618 /**
3619  * @brief Get field page_scan_repetition_mode from event GAP_EVENT_INQUIRY_RESULT
3620  * @param event packet
3621  * @return page_scan_repetition_mode
3622  * @note: btstack_type 1
3623  */
3624 static inline uint8_t gap_event_inquiry_result_get_page_scan_repetition_mode(const uint8_t * event){
3625     return event[8];
3626 }
3627 /**
3628  * @brief Get field class_of_device from event GAP_EVENT_INQUIRY_RESULT
3629  * @param event packet
3630  * @return class_of_device
3631  * @note: btstack_type 3
3632  */
3633 static inline uint32_t gap_event_inquiry_result_get_class_of_device(const uint8_t * event){
3634     return little_endian_read_24(event, 9);
3635 }
3636 /**
3637  * @brief Get field clock_offset from event GAP_EVENT_INQUIRY_RESULT
3638  * @param event packet
3639  * @return clock_offset
3640  * @note: btstack_type 2
3641  */
3642 static inline uint16_t gap_event_inquiry_result_get_clock_offset(const uint8_t * event){
3643     return little_endian_read_16(event, 12);
3644 }
3645 /**
3646  * @brief Get field rssi_available from event GAP_EVENT_INQUIRY_RESULT
3647  * @param event packet
3648  * @return rssi_available
3649  * @note: btstack_type 1
3650  */
3651 static inline uint8_t gap_event_inquiry_result_get_rssi_available(const uint8_t * event){
3652     return event[14];
3653 }
3654 /**
3655  * @brief Get field rssi from event GAP_EVENT_INQUIRY_RESULT
3656  * @param event packet
3657  * @return rssi
3658  * @note: btstack_type 1
3659  */
3660 static inline uint8_t gap_event_inquiry_result_get_rssi(const uint8_t * event){
3661     return event[15];
3662 }
3663 /**
3664  * @brief Get field device_id_available from event GAP_EVENT_INQUIRY_RESULT
3665  * @param event packet
3666  * @return device_id_available
3667  * @note: btstack_type 1
3668  */
3669 static inline uint8_t gap_event_inquiry_result_get_device_id_available(const uint8_t * event){
3670     return event[16];
3671 }
3672 /**
3673  * @brief Get field device_id_vendor_id_source from event GAP_EVENT_INQUIRY_RESULT
3674  * @param event packet
3675  * @return device_id_vendor_id_source
3676  * @note: btstack_type 2
3677  */
3678 static inline uint16_t gap_event_inquiry_result_get_device_id_vendor_id_source(const uint8_t * event){
3679     return little_endian_read_16(event, 17);
3680 }
3681 /**
3682  * @brief Get field device_id_vendor_id from event GAP_EVENT_INQUIRY_RESULT
3683  * @param event packet
3684  * @return device_id_vendor_id
3685  * @note: btstack_type 2
3686  */
3687 static inline uint16_t gap_event_inquiry_result_get_device_id_vendor_id(const uint8_t * event){
3688     return little_endian_read_16(event, 19);
3689 }
3690 /**
3691  * @brief Get field device_id_product_id from event GAP_EVENT_INQUIRY_RESULT
3692  * @param event packet
3693  * @return device_id_product_id
3694  * @note: btstack_type 2
3695  */
3696 static inline uint16_t gap_event_inquiry_result_get_device_id_product_id(const uint8_t * event){
3697     return little_endian_read_16(event, 21);
3698 }
3699 /**
3700  * @brief Get field device_id_version from event GAP_EVENT_INQUIRY_RESULT
3701  * @param event packet
3702  * @return device_id_version
3703  * @note: btstack_type 2
3704  */
3705 static inline uint16_t gap_event_inquiry_result_get_device_id_version(const uint8_t * event){
3706     return little_endian_read_16(event, 23);
3707 }
3708 /**
3709  * @brief Get field name_available from event GAP_EVENT_INQUIRY_RESULT
3710  * @param event packet
3711  * @return name_available
3712  * @note: btstack_type 1
3713  */
3714 static inline uint8_t gap_event_inquiry_result_get_name_available(const uint8_t * event){
3715     return event[25];
3716 }
3717 /**
3718  * @brief Get field name_len from event GAP_EVENT_INQUIRY_RESULT
3719  * @param event packet
3720  * @return name_len
3721  * @note: btstack_type J
3722  */
3723 static inline uint8_t gap_event_inquiry_result_get_name_len(const uint8_t * event){
3724     return event[26];
3725 }
3726 /**
3727  * @brief Get field name from event GAP_EVENT_INQUIRY_RESULT
3728  * @param event packet
3729  * @return name
3730  * @note: btstack_type V
3731  */
3732 static inline const uint8_t * gap_event_inquiry_result_get_name(const uint8_t * event){
3733     return &event[27];
3734 }
3735 
3736 /**
3737  * @brief Get field status from event GAP_EVENT_INQUIRY_COMPLETE
3738  * @param event packet
3739  * @return status
3740  * @note: btstack_type 1
3741  */
3742 static inline uint8_t gap_event_inquiry_complete_get_status(const uint8_t * event){
3743     return event[2];
3744 }
3745 
3746 /**
3747  * @brief Get field con_handle from event GAP_EVENT_RSSI_MEASUREMENT
3748  * @param event packet
3749  * @return con_handle
3750  * @note: btstack_type H
3751  */
3752 static inline hci_con_handle_t gap_event_rssi_measurement_get_con_handle(const uint8_t * event){
3753     return little_endian_read_16(event, 2);
3754 }
3755 /**
3756  * @brief Get field rssi from event GAP_EVENT_RSSI_MEASUREMENT
3757  * @param event packet
3758  * @return rssi
3759  * @note: btstack_type 1
3760  */
3761 static inline uint8_t gap_event_rssi_measurement_get_rssi(const uint8_t * event){
3762     return event[4];
3763 }
3764 
3765 /**
3766  * @brief Get field oob_data_present from event GAP_EVENT_LOCAL_OOB_DATA
3767  * @param event packet
3768  * @return oob_data_present
3769  * @note: btstack_type 1
3770  */
3771 static inline uint8_t gap_event_local_oob_data_get_oob_data_present(const uint8_t * event){
3772     return event[2];
3773 }
3774 /**
3775  * @brief Get field c_192 from event GAP_EVENT_LOCAL_OOB_DATA
3776  * @param event packet
3777  * @param Pointer to storage for c_192
3778  * @note: btstack_type K
3779  */
3780 static inline void gap_event_local_oob_data_get_c_192(const uint8_t * event, uint8_t * c_192){
3781     reverse_bytes(&event[3], c_192, 16);
3782 }
3783 /**
3784  * @brief Get field r_192 from event GAP_EVENT_LOCAL_OOB_DATA
3785  * @param event packet
3786  * @param Pointer to storage for r_192
3787  * @note: btstack_type K
3788  */
3789 static inline void gap_event_local_oob_data_get_r_192(const uint8_t * event, uint8_t * r_192){
3790     reverse_bytes(&event[19], r_192, 16);
3791 }
3792 /**
3793  * @brief Get field c_256 from event GAP_EVENT_LOCAL_OOB_DATA
3794  * @param event packet
3795  * @param Pointer to storage for c_256
3796  * @note: btstack_type K
3797  */
3798 static inline void gap_event_local_oob_data_get_c_256(const uint8_t * event, uint8_t * c_256){
3799     reverse_bytes(&event[35], c_256, 16);
3800 }
3801 /**
3802  * @brief Get field r_256 from event GAP_EVENT_LOCAL_OOB_DATA
3803  * @param event packet
3804  * @param Pointer to storage for r_256
3805  * @note: btstack_type K
3806  */
3807 static inline void gap_event_local_oob_data_get_r_256(const uint8_t * event, uint8_t * r_256){
3808     reverse_bytes(&event[51], r_256, 16);
3809 }
3810 
3811 /**
3812  * @brief Get field con_handle from event GAP_EVENT_PAIRING_STARTED
3813  * @param event packet
3814  * @return con_handle
3815  * @note: btstack_type H
3816  */
3817 static inline hci_con_handle_t gap_event_pairing_started_get_con_handle(const uint8_t * event){
3818     return little_endian_read_16(event, 2);
3819 }
3820 /**
3821  * @brief Get field bd_addr from event GAP_EVENT_PAIRING_STARTED
3822  * @param event packet
3823  * @param Pointer to storage for bd_addr
3824  * @note: btstack_type B
3825  */
3826 static inline void gap_event_pairing_started_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3827     reverse_bytes(&event[4], bd_addr, 6);
3828 }
3829 /**
3830  * @brief Get field ssp from event GAP_EVENT_PAIRING_STARTED
3831  * @param event packet
3832  * @return ssp
3833  * @note: btstack_type 1
3834  */
3835 static inline uint8_t gap_event_pairing_started_get_ssp(const uint8_t * event){
3836     return event[10];
3837 }
3838 /**
3839  * @brief Get field initiator from event GAP_EVENT_PAIRING_STARTED
3840  * @param event packet
3841  * @return initiator
3842  * @note: btstack_type 1
3843  */
3844 static inline uint8_t gap_event_pairing_started_get_initiator(const uint8_t * event){
3845     return event[11];
3846 }
3847 
3848 /**
3849  * @brief Get field con_handle from event GAP_EVENT_PAIRING_COMPLETE
3850  * @param event packet
3851  * @return con_handle
3852  * @note: btstack_type H
3853  */
3854 static inline hci_con_handle_t gap_event_pairing_complete_get_con_handle(const uint8_t * event){
3855     return little_endian_read_16(event, 2);
3856 }
3857 /**
3858  * @brief Get field bd_addr from event GAP_EVENT_PAIRING_COMPLETE
3859  * @param event packet
3860  * @param Pointer to storage for bd_addr
3861  * @note: btstack_type B
3862  */
3863 static inline void gap_event_pairing_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
3864     reverse_bytes(&event[4], bd_addr, 6);
3865 }
3866 /**
3867  * @brief Get field status from event GAP_EVENT_PAIRING_COMPLETE
3868  * @param event packet
3869  * @return status
3870  * @note: btstack_type 1
3871  */
3872 static inline uint8_t gap_event_pairing_complete_get_status(const uint8_t * event){
3873     return event[10];
3874 }
3875 
3876 /**
3877  * @brief Get field status from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3878  * @param event packet
3879  * @return status
3880  * @note: btstack_type 1
3881  */
3882 static inline uint8_t hci_subevent_le_connection_complete_get_status(const uint8_t * event){
3883     return event[3];
3884 }
3885 /**
3886  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3887  * @param event packet
3888  * @return connection_handle
3889  * @note: btstack_type H
3890  */
3891 static inline hci_con_handle_t hci_subevent_le_connection_complete_get_connection_handle(const uint8_t * event){
3892     return little_endian_read_16(event, 4);
3893 }
3894 /**
3895  * @brief Get field role from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3896  * @param event packet
3897  * @return role
3898  * @note: btstack_type 1
3899  */
3900 static inline uint8_t hci_subevent_le_connection_complete_get_role(const uint8_t * event){
3901     return event[6];
3902 }
3903 /**
3904  * @brief Get field peer_address_type from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3905  * @param event packet
3906  * @return peer_address_type
3907  * @note: btstack_type 1
3908  */
3909 static inline uint8_t hci_subevent_le_connection_complete_get_peer_address_type(const uint8_t * event){
3910     return event[7];
3911 }
3912 /**
3913  * @brief Get field peer_address from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3914  * @param event packet
3915  * @param Pointer to storage for peer_address
3916  * @note: btstack_type B
3917  */
3918 static inline void hci_subevent_le_connection_complete_get_peer_address(const uint8_t * event, bd_addr_t peer_address){
3919     reverse_bytes(&event[8], peer_address, 6);
3920 }
3921 /**
3922  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3923  * @param event packet
3924  * @return conn_interval
3925  * @note: btstack_type 2
3926  */
3927 static inline uint16_t hci_subevent_le_connection_complete_get_conn_interval(const uint8_t * event){
3928     return little_endian_read_16(event, 14);
3929 }
3930 /**
3931  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3932  * @param event packet
3933  * @return conn_latency
3934  * @note: btstack_type 2
3935  */
3936 static inline uint16_t hci_subevent_le_connection_complete_get_conn_latency(const uint8_t * event){
3937     return little_endian_read_16(event, 16);
3938 }
3939 /**
3940  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3941  * @param event packet
3942  * @return supervision_timeout
3943  * @note: btstack_type 2
3944  */
3945 static inline uint16_t hci_subevent_le_connection_complete_get_supervision_timeout(const uint8_t * event){
3946     return little_endian_read_16(event, 18);
3947 }
3948 /**
3949  * @brief Get field master_clock_accuracy from event HCI_SUBEVENT_LE_CONNECTION_COMPLETE
3950  * @param event packet
3951  * @return master_clock_accuracy
3952  * @note: btstack_type 1
3953  */
3954 static inline uint8_t hci_subevent_le_connection_complete_get_master_clock_accuracy(const uint8_t * event){
3955     return event[20];
3956 }
3957 
3958 /**
3959  * @brief Get field status from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3960  * @param event packet
3961  * @return status
3962  * @note: btstack_type 1
3963  */
3964 static inline uint8_t hci_subevent_le_connection_update_complete_get_status(const uint8_t * event){
3965     return event[3];
3966 }
3967 /**
3968  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3969  * @param event packet
3970  * @return connection_handle
3971  * @note: btstack_type H
3972  */
3973 static inline hci_con_handle_t hci_subevent_le_connection_update_complete_get_connection_handle(const uint8_t * event){
3974     return little_endian_read_16(event, 4);
3975 }
3976 /**
3977  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3978  * @param event packet
3979  * @return conn_interval
3980  * @note: btstack_type 2
3981  */
3982 static inline uint16_t hci_subevent_le_connection_update_complete_get_conn_interval(const uint8_t * event){
3983     return little_endian_read_16(event, 6);
3984 }
3985 /**
3986  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3987  * @param event packet
3988  * @return conn_latency
3989  * @note: btstack_type 2
3990  */
3991 static inline uint16_t hci_subevent_le_connection_update_complete_get_conn_latency(const uint8_t * event){
3992     return little_endian_read_16(event, 8);
3993 }
3994 /**
3995  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_CONNECTION_UPDATE_COMPLETE
3996  * @param event packet
3997  * @return supervision_timeout
3998  * @note: btstack_type 2
3999  */
4000 static inline uint16_t hci_subevent_le_connection_update_complete_get_supervision_timeout(const uint8_t * event){
4001     return little_endian_read_16(event, 10);
4002 }
4003 
4004 /**
4005  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_READ_REMOTE_FEATURES_COMPLETE
4006  * @param event packet
4007  * @return connection_handle
4008  * @note: btstack_type H
4009  */
4010 static inline hci_con_handle_t hci_subevent_le_read_remote_features_complete_get_connection_handle(const uint8_t * event){
4011     return little_endian_read_16(event, 3);
4012 }
4013 /**
4014  * @brief Get field le_features from event HCI_SUBEVENT_LE_READ_REMOTE_FEATURES_COMPLETE
4015  * @param event packet
4016  * @return le_features
4017  * @note: btstack_type D
4018  */
4019 static inline const uint8_t * hci_subevent_le_read_remote_features_complete_get_le_features(const uint8_t * event){
4020     return (const uint8_t *) &event[5];
4021 }
4022 
4023 /**
4024  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
4025  * @param event packet
4026  * @return connection_handle
4027  * @note: btstack_type H
4028  */
4029 static inline hci_con_handle_t hci_subevent_le_long_term_key_request_get_connection_handle(const uint8_t * event){
4030     return little_endian_read_16(event, 3);
4031 }
4032 /**
4033  * @brief Get field random_number from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
4034  * @param event packet
4035  * @return random_number
4036  * @note: btstack_type D
4037  */
4038 static inline const uint8_t * hci_subevent_le_long_term_key_request_get_random_number(const uint8_t * event){
4039     return (const uint8_t *) &event[5];
4040 }
4041 /**
4042  * @brief Get field encryption_diversifier from event HCI_SUBEVENT_LE_LONG_TERM_KEY_REQUEST
4043  * @param event packet
4044  * @return encryption_diversifier
4045  * @note: btstack_type 2
4046  */
4047 static inline uint16_t hci_subevent_le_long_term_key_request_get_encryption_diversifier(const uint8_t * event){
4048     return little_endian_read_16(event, 13);
4049 }
4050 
4051 /**
4052  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
4053  * @param event packet
4054  * @return connection_handle
4055  * @note: btstack_type H
4056  */
4057 static inline hci_con_handle_t hci_subevent_le_remote_connection_parameter_request_get_connection_handle(const uint8_t * event){
4058     return little_endian_read_16(event, 3);
4059 }
4060 /**
4061  * @brief Get field interval_min from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
4062  * @param event packet
4063  * @return interval_min
4064  * @note: btstack_type 2
4065  */
4066 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_interval_min(const uint8_t * event){
4067     return little_endian_read_16(event, 5);
4068 }
4069 /**
4070  * @brief Get field interval_max from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
4071  * @param event packet
4072  * @return interval_max
4073  * @note: btstack_type 2
4074  */
4075 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_interval_max(const uint8_t * event){
4076     return little_endian_read_16(event, 7);
4077 }
4078 /**
4079  * @brief Get field latency from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
4080  * @param event packet
4081  * @return latency
4082  * @note: btstack_type 2
4083  */
4084 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_latency(const uint8_t * event){
4085     return little_endian_read_16(event, 9);
4086 }
4087 /**
4088  * @brief Get field timeout from event HCI_SUBEVENT_LE_REMOTE_CONNECTION_PARAMETER_REQUEST
4089  * @param event packet
4090  * @return timeout
4091  * @note: btstack_type 2
4092  */
4093 static inline uint16_t hci_subevent_le_remote_connection_parameter_request_get_timeout(const uint8_t * event){
4094     return little_endian_read_16(event, 11);
4095 }
4096 
4097 /**
4098  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
4099  * @param event packet
4100  * @return connection_handle
4101  * @note: btstack_type H
4102  */
4103 static inline hci_con_handle_t hci_subevent_le_data_length_change_get_connection_handle(const uint8_t * event){
4104     return little_endian_read_16(event, 3);
4105 }
4106 /**
4107  * @brief Get field max_tx_octets from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
4108  * @param event packet
4109  * @return max_tx_octets
4110  * @note: btstack_type 2
4111  */
4112 static inline uint16_t hci_subevent_le_data_length_change_get_max_tx_octets(const uint8_t * event){
4113     return little_endian_read_16(event, 5);
4114 }
4115 /**
4116  * @brief Get field max_tx_time from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
4117  * @param event packet
4118  * @return max_tx_time
4119  * @note: btstack_type 2
4120  */
4121 static inline uint16_t hci_subevent_le_data_length_change_get_max_tx_time(const uint8_t * event){
4122     return little_endian_read_16(event, 7);
4123 }
4124 /**
4125  * @brief Get field max_rx_octets from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
4126  * @param event packet
4127  * @return max_rx_octets
4128  * @note: btstack_type 2
4129  */
4130 static inline uint16_t hci_subevent_le_data_length_change_get_max_rx_octets(const uint8_t * event){
4131     return little_endian_read_16(event, 9);
4132 }
4133 /**
4134  * @brief Get field max_rx_time from event HCI_SUBEVENT_LE_DATA_LENGTH_CHANGE
4135  * @param event packet
4136  * @return max_rx_time
4137  * @note: btstack_type 2
4138  */
4139 static inline uint16_t hci_subevent_le_data_length_change_get_max_rx_time(const uint8_t * event){
4140     return little_endian_read_16(event, 11);
4141 }
4142 
4143 /**
4144  * @brief Get field status from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
4145  * @param event packet
4146  * @return status
4147  * @note: btstack_type 1
4148  */
4149 static inline uint8_t hci_subevent_le_read_local_p256_public_key_complete_get_status(const uint8_t * event){
4150     return event[3];
4151 }
4152 /**
4153  * @brief Get field dhkey_x from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
4154  * @param event packet
4155  * @param Pointer to storage for dhkey_x
4156  * @note: btstack_type Q
4157  */
4158 static inline void hci_subevent_le_read_local_p256_public_key_complete_get_dhkey_x(const uint8_t * event, uint8_t * dhkey_x){
4159     reverse_bytes(&event[4], dhkey_x, 32);
4160 }
4161 /**
4162  * @brief Get field dhkey_y from event HCI_SUBEVENT_LE_READ_LOCAL_P256_PUBLIC_KEY_COMPLETE
4163  * @param event packet
4164  * @param Pointer to storage for dhkey_y
4165  * @note: btstack_type Q
4166  */
4167 static inline void hci_subevent_le_read_local_p256_public_key_complete_get_dhkey_y(const uint8_t * event, uint8_t * dhkey_y){
4168     reverse_bytes(&event[36], dhkey_y, 32);
4169 }
4170 
4171 /**
4172  * @brief Get field status from event HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE
4173  * @param event packet
4174  * @return status
4175  * @note: btstack_type 1
4176  */
4177 static inline uint8_t hci_subevent_le_generate_dhkey_complete_get_status(const uint8_t * event){
4178     return event[3];
4179 }
4180 /**
4181  * @brief Get field dhkey from event HCI_SUBEVENT_LE_GENERATE_DHKEY_COMPLETE
4182  * @param event packet
4183  * @param Pointer to storage for dhkey
4184  * @note: btstack_type Q
4185  */
4186 static inline void hci_subevent_le_generate_dhkey_complete_get_dhkey(const uint8_t * event, uint8_t * dhkey){
4187     reverse_bytes(&event[4], dhkey, 32);
4188 }
4189 
4190 /**
4191  * @brief Get field status from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4192  * @param event packet
4193  * @return status
4194  * @note: btstack_type 1
4195  */
4196 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_status(const uint8_t * event){
4197     return event[3];
4198 }
4199 /**
4200  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4201  * @param event packet
4202  * @return connection_handle
4203  * @note: btstack_type H
4204  */
4205 static inline hci_con_handle_t hci_subevent_le_enhanced_connection_complete_get_connection_handle(const uint8_t * event){
4206     return little_endian_read_16(event, 4);
4207 }
4208 /**
4209  * @brief Get field role from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4210  * @param event packet
4211  * @return role
4212  * @note: btstack_type 1
4213  */
4214 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_role(const uint8_t * event){
4215     return event[6];
4216 }
4217 /**
4218  * @brief Get field peer_address_type from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4219  * @param event packet
4220  * @return peer_address_type
4221  * @note: btstack_type 1
4222  */
4223 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_peer_address_type(const uint8_t * event){
4224     return event[7];
4225 }
4226 /**
4227  * @brief Get field peer_addresss from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4228  * @param event packet
4229  * @param Pointer to storage for peer_addresss
4230  * @note: btstack_type B
4231  */
4232 static inline void hci_subevent_le_enhanced_connection_complete_get_peer_addresss(const uint8_t * event, bd_addr_t peer_addresss){
4233     reverse_bytes(&event[8], peer_addresss, 6);
4234 }
4235 /**
4236  * @brief Get field local_resolvable_private_addres from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4237  * @param event packet
4238  * @param Pointer to storage for local_resolvable_private_addres
4239  * @note: btstack_type B
4240  */
4241 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){
4242     reverse_bytes(&event[14], local_resolvable_private_addres, 6);
4243 }
4244 /**
4245  * @brief Get field peer_resolvable_private_addres from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4246  * @param event packet
4247  * @param Pointer to storage for peer_resolvable_private_addres
4248  * @note: btstack_type B
4249  */
4250 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){
4251     reverse_bytes(&event[20], peer_resolvable_private_addres, 6);
4252 }
4253 /**
4254  * @brief Get field conn_interval from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4255  * @param event packet
4256  * @return conn_interval
4257  * @note: btstack_type 2
4258  */
4259 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_conn_interval(const uint8_t * event){
4260     return little_endian_read_16(event, 26);
4261 }
4262 /**
4263  * @brief Get field conn_latency from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4264  * @param event packet
4265  * @return conn_latency
4266  * @note: btstack_type 2
4267  */
4268 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_conn_latency(const uint8_t * event){
4269     return little_endian_read_16(event, 28);
4270 }
4271 /**
4272  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4273  * @param event packet
4274  * @return supervision_timeout
4275  * @note: btstack_type 2
4276  */
4277 static inline uint16_t hci_subevent_le_enhanced_connection_complete_get_supervision_timeout(const uint8_t * event){
4278     return little_endian_read_16(event, 30);
4279 }
4280 /**
4281  * @brief Get field master_clock_accuracy from event HCI_SUBEVENT_LE_ENHANCED_CONNECTION_COMPLETE
4282  * @param event packet
4283  * @return master_clock_accuracy
4284  * @note: btstack_type 1
4285  */
4286 static inline uint8_t hci_subevent_le_enhanced_connection_complete_get_master_clock_accuracy(const uint8_t * event){
4287     return event[32];
4288 }
4289 
4290 /**
4291  * @brief Get field status from event HCI_SUBEVENT_LE_PHY_UPDATE_COMPLETE
4292  * @param event packet
4293  * @return status
4294  * @note: btstack_type 1
4295  */
4296 static inline uint8_t hci_subevent_le_phy_update_complete_get_status(const uint8_t * event){
4297     return event[3];
4298 }
4299 /**
4300  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_PHY_UPDATE_COMPLETE
4301  * @param event packet
4302  * @return connection_handle
4303  * @note: btstack_type H
4304  */
4305 static inline hci_con_handle_t hci_subevent_le_phy_update_complete_get_connection_handle(const uint8_t * event){
4306     return little_endian_read_16(event, 4);
4307 }
4308 /**
4309  * @brief Get field tx_phy from event HCI_SUBEVENT_LE_PHY_UPDATE_COMPLETE
4310  * @param event packet
4311  * @return tx_phy
4312  * @note: btstack_type 1
4313  */
4314 static inline uint8_t hci_subevent_le_phy_update_complete_get_tx_phy(const uint8_t * event){
4315     return event[6];
4316 }
4317 
4318 /**
4319  * @brief Get field status from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4320  * @param event packet
4321  * @return status
4322  * @note: btstack_type 1
4323  */
4324 static inline uint8_t hci_subevent_le_periodic_advertising_sync_establishment_get_status(const uint8_t * event){
4325     return event[3];
4326 }
4327 /**
4328  * @brief Get field sync_handle from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4329  * @param event packet
4330  * @return sync_handle
4331  * @note: btstack_type H
4332  */
4333 static inline hci_con_handle_t hci_subevent_le_periodic_advertising_sync_establishment_get_sync_handle(const uint8_t * event){
4334     return little_endian_read_16(event, 4);
4335 }
4336 /**
4337  * @brief Get field advertising_sid from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4338  * @param event packet
4339  * @return advertising_sid
4340  * @note: btstack_type 1
4341  */
4342 static inline uint8_t hci_subevent_le_periodic_advertising_sync_establishment_get_advertising_sid(const uint8_t * event){
4343     return event[6];
4344 }
4345 /**
4346  * @brief Get field advertiser_address_type from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4347  * @param event packet
4348  * @return advertiser_address_type
4349  * @note: btstack_type 1
4350  */
4351 static inline uint8_t hci_subevent_le_periodic_advertising_sync_establishment_get_advertiser_address_type(const uint8_t * event){
4352     return event[7];
4353 }
4354 /**
4355  * @brief Get field advertiser_address from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4356  * @param event packet
4357  * @param Pointer to storage for advertiser_address
4358  * @note: btstack_type B
4359  */
4360 static inline void hci_subevent_le_periodic_advertising_sync_establishment_get_advertiser_address(const uint8_t * event, bd_addr_t advertiser_address){
4361     reverse_bytes(&event[8], advertiser_address, 6);
4362 }
4363 /**
4364  * @brief Get field advertiser_phy from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4365  * @param event packet
4366  * @return advertiser_phy
4367  * @note: btstack_type 1
4368  */
4369 static inline uint8_t hci_subevent_le_periodic_advertising_sync_establishment_get_advertiser_phy(const uint8_t * event){
4370     return event[14];
4371 }
4372 /**
4373  * @brief Get field periodic_advertising_interval from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4374  * @param event packet
4375  * @return periodic_advertising_interval
4376  * @note: btstack_type 2
4377  */
4378 static inline uint16_t hci_subevent_le_periodic_advertising_sync_establishment_get_periodic_advertising_interval(const uint8_t * event){
4379     return little_endian_read_16(event, 15);
4380 }
4381 /**
4382  * @brief Get field advertiser_clock_accuracy from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_ESTABLISHMENT
4383  * @param event packet
4384  * @return advertiser_clock_accuracy
4385  * @note: btstack_type 1
4386  */
4387 static inline uint8_t hci_subevent_le_periodic_advertising_sync_establishment_get_advertiser_clock_accuracy(const uint8_t * event){
4388     return event[17];
4389 }
4390 
4391 /**
4392  * @brief Get field sync_handle from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4393  * @param event packet
4394  * @return sync_handle
4395  * @note: btstack_type H
4396  */
4397 static inline hci_con_handle_t hci_subevent_le_periodic_advertising_report_get_sync_handle(const uint8_t * event){
4398     return little_endian_read_16(event, 3);
4399 }
4400 /**
4401  * @brief Get field tx_power from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4402  * @param event packet
4403  * @return tx_power
4404  * @note: btstack_type 1
4405  */
4406 static inline uint8_t hci_subevent_le_periodic_advertising_report_get_tx_power(const uint8_t * event){
4407     return event[5];
4408 }
4409 /**
4410  * @brief Get field rssi from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4411  * @param event packet
4412  * @return rssi
4413  * @note: btstack_type 1
4414  */
4415 static inline uint8_t hci_subevent_le_periodic_advertising_report_get_rssi(const uint8_t * event){
4416     return event[6];
4417 }
4418 /**
4419  * @brief Get field cte_type from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4420  * @param event packet
4421  * @return cte_type
4422  * @note: btstack_type 1
4423  */
4424 static inline uint8_t hci_subevent_le_periodic_advertising_report_get_cte_type(const uint8_t * event){
4425     return event[7];
4426 }
4427 /**
4428  * @brief Get field data_status from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4429  * @param event packet
4430  * @return data_status
4431  * @note: btstack_type 1
4432  */
4433 static inline uint8_t hci_subevent_le_periodic_advertising_report_get_data_status(const uint8_t * event){
4434     return event[8];
4435 }
4436 /**
4437  * @brief Get field data_length from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4438  * @param event packet
4439  * @return data_length
4440  * @note: btstack_type J
4441  */
4442 static inline uint8_t hci_subevent_le_periodic_advertising_report_get_data_length(const uint8_t * event){
4443     return event[9];
4444 }
4445 /**
4446  * @brief Get field data from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_REPORT
4447  * @param event packet
4448  * @return data
4449  * @note: btstack_type V
4450  */
4451 static inline const uint8_t * hci_subevent_le_periodic_advertising_report_get_data(const uint8_t * event){
4452     return &event[10];
4453 }
4454 
4455 /**
4456  * @brief Get field sync_handle from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_LOST
4457  * @param event packet
4458  * @return sync_handle
4459  * @note: btstack_type H
4460  */
4461 static inline hci_con_handle_t hci_subevent_le_periodic_advertising_sync_lost_get_sync_handle(const uint8_t * event){
4462     return little_endian_read_16(event, 3);
4463 }
4464 
4465 
4466 /**
4467  * @brief Get field status from event HCI_SUBEVENT_LE_ADVERTISING_SET_TERMINATED
4468  * @param event packet
4469  * @return status
4470  * @note: btstack_type 1
4471  */
4472 static inline uint8_t hci_subevent_le_advertising_set_terminated_get_status(const uint8_t * event){
4473     return event[3];
4474 }
4475 /**
4476  * @brief Get field advertising_handle from event HCI_SUBEVENT_LE_ADVERTISING_SET_TERMINATED
4477  * @param event packet
4478  * @return advertising_handle
4479  * @note: btstack_type 1
4480  */
4481 static inline uint8_t hci_subevent_le_advertising_set_terminated_get_advertising_handle(const uint8_t * event){
4482     return event[4];
4483 }
4484 /**
4485  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_ADVERTISING_SET_TERMINATED
4486  * @param event packet
4487  * @return connection_handle
4488  * @note: btstack_type H
4489  */
4490 static inline hci_con_handle_t hci_subevent_le_advertising_set_terminated_get_connection_handle(const uint8_t * event){
4491     return little_endian_read_16(event, 5);
4492 }
4493 /**
4494  * @brief Get field num_completed_exteneded_advertising_events from event HCI_SUBEVENT_LE_ADVERTISING_SET_TERMINATED
4495  * @param event packet
4496  * @return num_completed_exteneded_advertising_events
4497  * @note: btstack_type 1
4498  */
4499 static inline uint8_t hci_subevent_le_advertising_set_terminated_get_num_completed_exteneded_advertising_events(const uint8_t * event){
4500     return event[7];
4501 }
4502 
4503 /**
4504  * @brief Get field advertising_handle from event HCI_SUBEVENT_LE_SCAN_REQUEST_RECEIVED
4505  * @param event packet
4506  * @return advertising_handle
4507  * @note: btstack_type 1
4508  */
4509 static inline uint8_t hci_subevent_le_scan_request_received_get_advertising_handle(const uint8_t * event){
4510     return event[3];
4511 }
4512 /**
4513  * @brief Get field scanner_address_type from event HCI_SUBEVENT_LE_SCAN_REQUEST_RECEIVED
4514  * @param event packet
4515  * @return scanner_address_type
4516  * @note: btstack_type 1
4517  */
4518 static inline uint8_t hci_subevent_le_scan_request_received_get_scanner_address_type(const uint8_t * event){
4519     return event[4];
4520 }
4521 /**
4522  * @brief Get field scanner_address from event HCI_SUBEVENT_LE_SCAN_REQUEST_RECEIVED
4523  * @param event packet
4524  * @param Pointer to storage for scanner_address
4525  * @note: btstack_type B
4526  */
4527 static inline void hci_subevent_le_scan_request_received_get_scanner_address(const uint8_t * event, bd_addr_t scanner_address){
4528     reverse_bytes(&event[5], scanner_address, 6);
4529 }
4530 
4531 /**
4532  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CHANNEL_SELECTION_ALGORITHM
4533  * @param event packet
4534  * @return connection_handle
4535  * @note: btstack_type H
4536  */
4537 static inline hci_con_handle_t hci_subevent_le_channel_selection_algorithm_get_connection_handle(const uint8_t * event){
4538     return little_endian_read_16(event, 3);
4539 }
4540 /**
4541  * @brief Get field channel_selection_algorithm from event HCI_SUBEVENT_LE_CHANNEL_SELECTION_ALGORITHM
4542  * @param event packet
4543  * @return channel_selection_algorithm
4544  * @note: btstack_type 1
4545  */
4546 static inline uint8_t hci_subevent_le_channel_selection_algorithm_get_channel_selection_algorithm(const uint8_t * event){
4547     return event[5];
4548 }
4549 
4550 /**
4551  * @brief Get field status from event HCI_SUBEVENT_LE_LE_CTE_REQUEST_FAILED
4552  * @param event packet
4553  * @return status
4554  * @note: btstack_type 1
4555  */
4556 static inline uint8_t hci_subevent_le_le_cte_request_failed_get_status(const uint8_t * event){
4557     return event[3];
4558 }
4559 /**
4560  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_LE_CTE_REQUEST_FAILED
4561  * @param event packet
4562  * @return connection_handle
4563  * @note: btstack_type H
4564  */
4565 static inline hci_con_handle_t hci_subevent_le_le_cte_request_failed_get_connection_handle(const uint8_t * event){
4566     return little_endian_read_16(event, 4);
4567 }
4568 
4569 /**
4570  * @brief Get field status from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4571  * @param event packet
4572  * @return status
4573  * @note: btstack_type 1
4574  */
4575 static inline uint8_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_status(const uint8_t * event){
4576     return event[3];
4577 }
4578 /**
4579  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4580  * @param event packet
4581  * @return connection_handle
4582  * @note: btstack_type H
4583  */
4584 static inline hci_con_handle_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_connection_handle(const uint8_t * event){
4585     return little_endian_read_16(event, 4);
4586 }
4587 /**
4588  * @brief Get field service_data from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4589  * @param event packet
4590  * @return service_data
4591  * @note: btstack_type 2
4592  */
4593 static inline uint16_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_service_data(const uint8_t * event){
4594     return little_endian_read_16(event, 6);
4595 }
4596 /**
4597  * @brief Get field sync_handle from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4598  * @param event packet
4599  * @return sync_handle
4600  * @note: btstack_type H
4601  */
4602 static inline hci_con_handle_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_sync_handle(const uint8_t * event){
4603     return little_endian_read_16(event, 8);
4604 }
4605 /**
4606  * @brief Get field advertising_sid from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4607  * @param event packet
4608  * @return advertising_sid
4609  * @note: btstack_type 1
4610  */
4611 static inline uint8_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_advertising_sid(const uint8_t * event){
4612     return event[10];
4613 }
4614 /**
4615  * @brief Get field advertiser_address_type from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4616  * @param event packet
4617  * @return advertiser_address_type
4618  * @note: btstack_type 1
4619  */
4620 static inline uint8_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_advertiser_address_type(const uint8_t * event){
4621     return event[11];
4622 }
4623 /**
4624  * @brief Get field advertiser_address from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4625  * @param event packet
4626  * @param Pointer to storage for advertiser_address
4627  * @note: btstack_type B
4628  */
4629 static inline void hci_subevent_le_periodic_advertising_sync_transfer_received_get_advertiser_address(const uint8_t * event, bd_addr_t advertiser_address){
4630     reverse_bytes(&event[12], advertiser_address, 6);
4631 }
4632 /**
4633  * @brief Get field advertiser_phy from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4634  * @param event packet
4635  * @return advertiser_phy
4636  * @note: btstack_type 1
4637  */
4638 static inline uint8_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_advertiser_phy(const uint8_t * event){
4639     return event[18];
4640 }
4641 /**
4642  * @brief Get field periodic_advertising_interval from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4643  * @param event packet
4644  * @return periodic_advertising_interval
4645  * @note: btstack_type 2
4646  */
4647 static inline uint16_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_periodic_advertising_interval(const uint8_t * event){
4648     return little_endian_read_16(event, 19);
4649 }
4650 /**
4651  * @brief Get field advertiser_clock_accuracy from event HCI_SUBEVENT_LE_PERIODIC_ADVERTISING_SYNC_TRANSFER_RECEIVED
4652  * @param event packet
4653  * @return advertiser_clock_accuracy
4654  * @note: btstack_type 1
4655  */
4656 static inline uint8_t hci_subevent_le_periodic_advertising_sync_transfer_received_get_advertiser_clock_accuracy(const uint8_t * event){
4657     return event[21];
4658 }
4659 
4660 /**
4661  * @brief Get field status from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4662  * @param event packet
4663  * @return status
4664  * @note: btstack_type 1
4665  */
4666 static inline uint8_t hci_subevent_le_cis_established_get_status(const uint8_t * event){
4667     return event[3];
4668 }
4669 /**
4670  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4671  * @param event packet
4672  * @return connection_handle
4673  * @note: btstack_type H
4674  */
4675 static inline hci_con_handle_t hci_subevent_le_cis_established_get_connection_handle(const uint8_t * event){
4676     return little_endian_read_16(event, 4);
4677 }
4678 /**
4679  * @brief Get field cig_sync_delay from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4680  * @param event packet
4681  * @return cig_sync_delay
4682  * @note: btstack_type 3
4683  */
4684 static inline uint32_t hci_subevent_le_cis_established_get_cig_sync_delay(const uint8_t * event){
4685     return little_endian_read_24(event, 6);
4686 }
4687 /**
4688  * @brief Get field cis_sync_delay from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4689  * @param event packet
4690  * @return cis_sync_delay
4691  * @note: btstack_type 3
4692  */
4693 static inline uint32_t hci_subevent_le_cis_established_get_cis_sync_delay(const uint8_t * event){
4694     return little_endian_read_24(event, 9);
4695 }
4696 /**
4697  * @brief Get field transport_latency_c_to_p from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4698  * @param event packet
4699  * @return transport_latency_c_to_p
4700  * @note: btstack_type 3
4701  */
4702 static inline uint32_t hci_subevent_le_cis_established_get_transport_latency_c_to_p(const uint8_t * event){
4703     return little_endian_read_24(event, 12);
4704 }
4705 /**
4706  * @brief Get field transport_latency_p_to_c from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4707  * @param event packet
4708  * @return transport_latency_p_to_c
4709  * @note: btstack_type 3
4710  */
4711 static inline uint32_t hci_subevent_le_cis_established_get_transport_latency_p_to_c(const uint8_t * event){
4712     return little_endian_read_24(event, 15);
4713 }
4714 /**
4715  * @brief Get field phy_c_to_p from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4716  * @param event packet
4717  * @return phy_c_to_p
4718  * @note: btstack_type 1
4719  */
4720 static inline uint8_t hci_subevent_le_cis_established_get_phy_c_to_p(const uint8_t * event){
4721     return event[18];
4722 }
4723 /**
4724  * @brief Get field phy_p_to_c from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4725  * @param event packet
4726  * @return phy_p_to_c
4727  * @note: btstack_type 1
4728  */
4729 static inline uint8_t hci_subevent_le_cis_established_get_phy_p_to_c(const uint8_t * event){
4730     return event[19];
4731 }
4732 /**
4733  * @brief Get field nse from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4734  * @param event packet
4735  * @return nse
4736  * @note: btstack_type 1
4737  */
4738 static inline uint8_t hci_subevent_le_cis_established_get_nse(const uint8_t * event){
4739     return event[20];
4740 }
4741 /**
4742  * @brief Get field bn_c_to_p from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4743  * @param event packet
4744  * @return bn_c_to_p
4745  * @note: btstack_type 1
4746  */
4747 static inline uint8_t hci_subevent_le_cis_established_get_bn_c_to_p(const uint8_t * event){
4748     return event[21];
4749 }
4750 /**
4751  * @brief Get field bn_p_to_c from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4752  * @param event packet
4753  * @return bn_p_to_c
4754  * @note: btstack_type 1
4755  */
4756 static inline uint8_t hci_subevent_le_cis_established_get_bn_p_to_c(const uint8_t * event){
4757     return event[22];
4758 }
4759 /**
4760  * @brief Get field ft_c_to_p from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4761  * @param event packet
4762  * @return ft_c_to_p
4763  * @note: btstack_type 1
4764  */
4765 static inline uint8_t hci_subevent_le_cis_established_get_ft_c_to_p(const uint8_t * event){
4766     return event[23];
4767 }
4768 /**
4769  * @brief Get field ft_p_to_c from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4770  * @param event packet
4771  * @return ft_p_to_c
4772  * @note: btstack_type 1
4773  */
4774 static inline uint8_t hci_subevent_le_cis_established_get_ft_p_to_c(const uint8_t * event){
4775     return event[24];
4776 }
4777 /**
4778  * @brief Get field max_pdu_c_to_p from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4779  * @param event packet
4780  * @return max_pdu_c_to_p
4781  * @note: btstack_type 2
4782  */
4783 static inline uint16_t hci_subevent_le_cis_established_get_max_pdu_c_to_p(const uint8_t * event){
4784     return little_endian_read_16(event, 25);
4785 }
4786 /**
4787  * @brief Get field max_pdu_p_to_c from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4788  * @param event packet
4789  * @return max_pdu_p_to_c
4790  * @note: btstack_type 2
4791  */
4792 static inline uint16_t hci_subevent_le_cis_established_get_max_pdu_p_to_c(const uint8_t * event){
4793     return little_endian_read_16(event, 27);
4794 }
4795 /**
4796  * @brief Get field iso_interval from event HCI_SUBEVENT_LE_CIS_ESTABLISHED
4797  * @param event packet
4798  * @return iso_interval
4799  * @note: btstack_type 2
4800  */
4801 static inline uint16_t hci_subevent_le_cis_established_get_iso_interval(const uint8_t * event){
4802     return little_endian_read_16(event, 29);
4803 }
4804 
4805 /**
4806  * @brief Get field acl_connection_handle from event HCI_SUBEVENT_LE_CIS_REQUEST
4807  * @param event packet
4808  * @return acl_connection_handle
4809  * @note: btstack_type H
4810  */
4811 static inline hci_con_handle_t hci_subevent_le_cis_request_get_acl_connection_handle(const uint8_t * event){
4812     return little_endian_read_16(event, 3);
4813 }
4814 /**
4815  * @brief Get field cis_connection_handle from event HCI_SUBEVENT_LE_CIS_REQUEST
4816  * @param event packet
4817  * @return cis_connection_handle
4818  * @note: btstack_type H
4819  */
4820 static inline hci_con_handle_t hci_subevent_le_cis_request_get_cis_connection_handle(const uint8_t * event){
4821     return little_endian_read_16(event, 5);
4822 }
4823 /**
4824  * @brief Get field cig_id from event HCI_SUBEVENT_LE_CIS_REQUEST
4825  * @param event packet
4826  * @return cig_id
4827  * @note: btstack_type 1
4828  */
4829 static inline uint8_t hci_subevent_le_cis_request_get_cig_id(const uint8_t * event){
4830     return event[7];
4831 }
4832 /**
4833  * @brief Get field cis_id from event HCI_SUBEVENT_LE_CIS_REQUEST
4834  * @param event packet
4835  * @return cis_id
4836  * @note: btstack_type 1
4837  */
4838 static inline uint8_t hci_subevent_le_cis_request_get_cis_id(const uint8_t * event){
4839     return event[8];
4840 }
4841 
4842 /**
4843  * @brief Get field big_handle from event HCI_SUBEVENT_LE_TERMINATE_BIG_COMPLETE
4844  * @param event packet
4845  * @return big_handle
4846  * @note: btstack_type 1
4847  */
4848 static inline uint8_t hci_subevent_le_terminate_big_complete_get_big_handle(const uint8_t * event){
4849     return event[3];
4850 }
4851 /**
4852  * @brief Get field reason from event HCI_SUBEVENT_LE_TERMINATE_BIG_COMPLETE
4853  * @param event packet
4854  * @return reason
4855  * @note: btstack_type 1
4856  */
4857 static inline uint8_t hci_subevent_le_terminate_big_complete_get_reason(const uint8_t * event){
4858     return event[4];
4859 }
4860 
4861 /**
4862  * @brief Get field big_handle from event HCI_SUBEVENT_LE_BIG_SYNC_LOST
4863  * @param event packet
4864  * @return big_handle
4865  * @note: btstack_type 1
4866  */
4867 static inline uint8_t hci_subevent_le_big_sync_lost_get_big_handle(const uint8_t * event){
4868     return event[3];
4869 }
4870 /**
4871  * @brief Get field reason from event HCI_SUBEVENT_LE_BIG_SYNC_LOST
4872  * @param event packet
4873  * @return reason
4874  * @note: btstack_type 1
4875  */
4876 static inline uint8_t hci_subevent_le_big_sync_lost_get_reason(const uint8_t * event){
4877     return event[4];
4878 }
4879 
4880 /**
4881  * @brief Get field status from event HCI_SUBEVENT_LE_REQUEST_PEER_SCA_COMPLETE
4882  * @param event packet
4883  * @return status
4884  * @note: btstack_type 1
4885  */
4886 static inline uint8_t hci_subevent_le_request_peer_sca_complete_get_status(const uint8_t * event){
4887     return event[3];
4888 }
4889 /**
4890  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_REQUEST_PEER_SCA_COMPLETE
4891  * @param event packet
4892  * @return connection_handle
4893  * @note: btstack_type H
4894  */
4895 static inline hci_con_handle_t hci_subevent_le_request_peer_sca_complete_get_connection_handle(const uint8_t * event){
4896     return little_endian_read_16(event, 4);
4897 }
4898 /**
4899  * @brief Get field peer_clock_accuracy from event HCI_SUBEVENT_LE_REQUEST_PEER_SCA_COMPLETE
4900  * @param event packet
4901  * @return peer_clock_accuracy
4902  * @note: btstack_type 1
4903  */
4904 static inline uint8_t hci_subevent_le_request_peer_sca_complete_get_peer_clock_accuracy(const uint8_t * event){
4905     return event[6];
4906 }
4907 
4908 /**
4909  * @brief Get field status from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4910  * @param event packet
4911  * @return status
4912  * @note: btstack_type 1
4913  */
4914 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_status(const uint8_t * event){
4915     return event[3];
4916 }
4917 /**
4918  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4919  * @param event packet
4920  * @return connection_handle
4921  * @note: btstack_type H
4922  */
4923 static inline hci_con_handle_t hci_subevent_le_transmit_power_reporting_get_connection_handle(const uint8_t * event){
4924     return little_endian_read_16(event, 4);
4925 }
4926 /**
4927  * @brief Get field reason from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4928  * @param event packet
4929  * @return reason
4930  * @note: btstack_type 1
4931  */
4932 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_reason(const uint8_t * event){
4933     return event[6];
4934 }
4935 /**
4936  * @brief Get field phy from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4937  * @param event packet
4938  * @return phy
4939  * @note: btstack_type 1
4940  */
4941 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_phy(const uint8_t * event){
4942     return event[7];
4943 }
4944 /**
4945  * @brief Get field tx_power_level from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4946  * @param event packet
4947  * @return tx_power_level
4948  * @note: btstack_type 1
4949  */
4950 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_tx_power_level(const uint8_t * event){
4951     return event[8];
4952 }
4953 /**
4954  * @brief Get field tx_power_level_flag from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4955  * @param event packet
4956  * @return tx_power_level_flag
4957  * @note: btstack_type 1
4958  */
4959 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_tx_power_level_flag(const uint8_t * event){
4960     return event[9];
4961 }
4962 /**
4963  * @brief Get field delta from event HCI_SUBEVENT_LE_TRANSMIT_POWER_REPORTING
4964  * @param event packet
4965  * @return delta
4966  * @note: btstack_type 1
4967  */
4968 static inline uint8_t hci_subevent_le_transmit_power_reporting_get_delta(const uint8_t * event){
4969     return event[10];
4970 }
4971 
4972 /**
4973  * @brief Get field sync_handle from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
4974  * @param event packet
4975  * @return sync_handle
4976  * @note: btstack_type H
4977  */
4978 static inline hci_con_handle_t hci_subevent_le_biginfo_advertising_report_get_sync_handle(const uint8_t * event){
4979     return little_endian_read_16(event, 3);
4980 }
4981 /**
4982  * @brief Get field num_bis from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
4983  * @param event packet
4984  * @return num_bis
4985  * @note: btstack_type 1
4986  */
4987 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_num_bis(const uint8_t * event){
4988     return event[5];
4989 }
4990 /**
4991  * @brief Get field nse from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
4992  * @param event packet
4993  * @return nse
4994  * @note: btstack_type 1
4995  */
4996 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_nse(const uint8_t * event){
4997     return event[6];
4998 }
4999 /**
5000  * @brief Get field iso_interval from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5001  * @param event packet
5002  * @return iso_interval
5003  * @note: btstack_type 2
5004  */
5005 static inline uint16_t hci_subevent_le_biginfo_advertising_report_get_iso_interval(const uint8_t * event){
5006     return little_endian_read_16(event, 7);
5007 }
5008 /**
5009  * @brief Get field bn from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5010  * @param event packet
5011  * @return bn
5012  * @note: btstack_type 1
5013  */
5014 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_bn(const uint8_t * event){
5015     return event[9];
5016 }
5017 /**
5018  * @brief Get field pto from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5019  * @param event packet
5020  * @return pto
5021  * @note: btstack_type 1
5022  */
5023 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_pto(const uint8_t * event){
5024     return event[10];
5025 }
5026 /**
5027  * @brief Get field irc from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5028  * @param event packet
5029  * @return irc
5030  * @note: btstack_type 1
5031  */
5032 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_irc(const uint8_t * event){
5033     return event[11];
5034 }
5035 /**
5036  * @brief Get field max_pdu from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5037  * @param event packet
5038  * @return max_pdu
5039  * @note: btstack_type 2
5040  */
5041 static inline uint16_t hci_subevent_le_biginfo_advertising_report_get_max_pdu(const uint8_t * event){
5042     return little_endian_read_16(event, 12);
5043 }
5044 /**
5045  * @brief Get field sdu_interval from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5046  * @param event packet
5047  * @return sdu_interval
5048  * @note: btstack_type 3
5049  */
5050 static inline uint32_t hci_subevent_le_biginfo_advertising_report_get_sdu_interval(const uint8_t * event){
5051     return little_endian_read_24(event, 14);
5052 }
5053 /**
5054  * @brief Get field max_sdu from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5055  * @param event packet
5056  * @return max_sdu
5057  * @note: btstack_type 2
5058  */
5059 static inline uint16_t hci_subevent_le_biginfo_advertising_report_get_max_sdu(const uint8_t * event){
5060     return little_endian_read_16(event, 17);
5061 }
5062 /**
5063  * @brief Get field phy from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5064  * @param event packet
5065  * @return phy
5066  * @note: btstack_type 1
5067  */
5068 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_phy(const uint8_t * event){
5069     return event[19];
5070 }
5071 /**
5072  * @brief Get field framing from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5073  * @param event packet
5074  * @return framing
5075  * @note: btstack_type 1
5076  */
5077 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_framing(const uint8_t * event){
5078     return event[20];
5079 }
5080 /**
5081  * @brief Get field encryption from event HCI_SUBEVENT_LE_BIGINFO_ADVERTISING_REPORT
5082  * @param event packet
5083  * @return encryption
5084  * @note: btstack_type 1
5085  */
5086 static inline uint8_t hci_subevent_le_biginfo_advertising_report_get_encryption(const uint8_t * event){
5087     return event[21];
5088 }
5089 
5090 /**
5091  * @brief Get field status from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5092  * @param event packet
5093  * @return status
5094  * @note: btstack_type 1
5095  */
5096 static inline uint8_t hci_subevent_le_subrate_change_get_status(const uint8_t * event){
5097     return event[3];
5098 }
5099 /**
5100  * @brief Get field connection_handle from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5101  * @param event packet
5102  * @return connection_handle
5103  * @note: btstack_type H
5104  */
5105 static inline hci_con_handle_t hci_subevent_le_subrate_change_get_connection_handle(const uint8_t * event){
5106     return little_endian_read_16(event, 4);
5107 }
5108 /**
5109  * @brief Get field subrate_factor from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5110  * @param event packet
5111  * @return subrate_factor
5112  * @note: btstack_type 2
5113  */
5114 static inline uint16_t hci_subevent_le_subrate_change_get_subrate_factor(const uint8_t * event){
5115     return little_endian_read_16(event, 6);
5116 }
5117 /**
5118  * @brief Get field peripheral_latency from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5119  * @param event packet
5120  * @return peripheral_latency
5121  * @note: btstack_type 2
5122  */
5123 static inline uint16_t hci_subevent_le_subrate_change_get_peripheral_latency(const uint8_t * event){
5124     return little_endian_read_16(event, 8);
5125 }
5126 /**
5127  * @brief Get field continuation_number from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5128  * @param event packet
5129  * @return continuation_number
5130  * @note: btstack_type 2
5131  */
5132 static inline uint16_t hci_subevent_le_subrate_change_get_continuation_number(const uint8_t * event){
5133     return little_endian_read_16(event, 10);
5134 }
5135 /**
5136  * @brief Get field supervision_timeout from event HCI_SUBEVENT_LE_SUBRATE_CHANGE
5137  * @param event packet
5138  * @return supervision_timeout
5139  * @note: btstack_type 2
5140  */
5141 static inline uint16_t hci_subevent_le_subrate_change_get_supervision_timeout(const uint8_t * event){
5142     return little_endian_read_16(event, 12);
5143 }
5144 
5145 /**
5146  * @brief Get field advertisement_handle from event GAP_SUBEVENT_ADVERTISING_SET_INSTALLED
5147  * @param event packet
5148  * @return advertisement_handle
5149  * @note: btstack_type 1
5150  */
5151 static inline uint8_t gap_subevent_advertising_set_installed_get_advertisement_handle(const uint8_t * event){
5152     return event[3];
5153 }
5154 /**
5155  * @brief Get field status from event GAP_SUBEVENT_ADVERTISING_SET_INSTALLED
5156  * @param event packet
5157  * @return status
5158  * @note: btstack_type 1
5159  */
5160 static inline uint8_t gap_subevent_advertising_set_installed_get_status(const uint8_t * event){
5161     return event[4];
5162 }
5163 /**
5164  * @brief Get field selected_tx_power from event GAP_SUBEVENT_ADVERTISING_SET_INSTALLED
5165  * @param event packet
5166  * @return selected_tx_power
5167  * @note: btstack_type 1
5168  */
5169 static inline uint8_t gap_subevent_advertising_set_installed_get_selected_tx_power(const uint8_t * event){
5170     return event[5];
5171 }
5172 
5173 /**
5174  * @brief Get field advertisement_handle from event GAP_SUBEVENT_ADVERTISING_SET_REMOVED
5175  * @param event packet
5176  * @return advertisement_handle
5177  * @note: btstack_type 1
5178  */
5179 static inline uint8_t gap_subevent_advertising_set_removed_get_advertisement_handle(const uint8_t * event){
5180     return event[3];
5181 }
5182 
5183 /**
5184  * @brief Get field acl_handle from event HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE
5185  * @param event packet
5186  * @return acl_handle
5187  * @note: btstack_type H
5188  */
5189 static inline hci_con_handle_t hsp_subevent_rfcomm_connection_complete_get_acl_handle(const uint8_t * event){
5190     return little_endian_read_16(event, 3);
5191 }
5192 /**
5193  * @brief Get field status from event HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE
5194  * @param event packet
5195  * @return status
5196  * @note: btstack_type 1
5197  */
5198 static inline uint8_t hsp_subevent_rfcomm_connection_complete_get_status(const uint8_t * event){
5199     return event[5];
5200 }
5201 /**
5202  * @brief Get field bd_addr from event HSP_SUBEVENT_RFCOMM_CONNECTION_COMPLETE
5203  * @param event packet
5204  * @param Pointer to storage for bd_addr
5205  * @note: btstack_type B
5206  */
5207 static inline void hsp_subevent_rfcomm_connection_complete_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5208     reverse_bytes(&event[6], bd_addr, 6);
5209 }
5210 
5211 /**
5212  * @brief Get field acl_handle from event HSP_SUBEVENT_RFCOMM_DISCONNECTION_COMPLETE
5213  * @param event packet
5214  * @return acl_handle
5215  * @note: btstack_type H
5216  */
5217 static inline hci_con_handle_t hsp_subevent_rfcomm_disconnection_complete_get_acl_handle(const uint8_t * event){
5218     return little_endian_read_16(event, 3);
5219 }
5220 
5221 /**
5222  * @brief Get field acl_handle from event HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE
5223  * @param event packet
5224  * @return acl_handle
5225  * @note: btstack_type H
5226  */
5227 static inline hci_con_handle_t hsp_subevent_audio_connection_complete_get_acl_handle(const uint8_t * event){
5228     return little_endian_read_16(event, 3);
5229 }
5230 /**
5231  * @brief Get field status from event HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE
5232  * @param event packet
5233  * @return status
5234  * @note: btstack_type 1
5235  */
5236 static inline uint8_t hsp_subevent_audio_connection_complete_get_status(const uint8_t * event){
5237     return event[5];
5238 }
5239 /**
5240  * @brief Get field sco_handle from event HSP_SUBEVENT_AUDIO_CONNECTION_COMPLETE
5241  * @param event packet
5242  * @return sco_handle
5243  * @note: btstack_type H
5244  */
5245 static inline hci_con_handle_t hsp_subevent_audio_connection_complete_get_sco_handle(const uint8_t * event){
5246     return little_endian_read_16(event, 6);
5247 }
5248 
5249 /**
5250  * @brief Get field acl_handle from event HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE
5251  * @param event packet
5252  * @return acl_handle
5253  * @note: btstack_type H
5254  */
5255 static inline hci_con_handle_t hsp_subevent_audio_disconnection_complete_get_acl_handle(const uint8_t * event){
5256     return little_endian_read_16(event, 3);
5257 }
5258 /**
5259  * @brief Get field sco_handle from event HSP_SUBEVENT_AUDIO_DISCONNECTION_COMPLETE
5260  * @param event packet
5261  * @return sco_handle
5262  * @note: btstack_type H
5263  */
5264 static inline hci_con_handle_t hsp_subevent_audio_disconnection_complete_get_sco_handle(const uint8_t * event){
5265     return little_endian_read_16(event, 5);
5266 }
5267 
5268 /**
5269  * @brief Get field acl_handle from event HSP_SUBEVENT_RING
5270  * @param event packet
5271  * @return acl_handle
5272  * @note: btstack_type H
5273  */
5274 static inline hci_con_handle_t hsp_subevent_ring_get_acl_handle(const uint8_t * event){
5275     return little_endian_read_16(event, 3);
5276 }
5277 
5278 /**
5279  * @brief Get field acl_handle from event HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED
5280  * @param event packet
5281  * @return acl_handle
5282  * @note: btstack_type H
5283  */
5284 static inline hci_con_handle_t hsp_subevent_microphone_gain_changed_get_acl_handle(const uint8_t * event){
5285     return little_endian_read_16(event, 3);
5286 }
5287 /**
5288  * @brief Get field gain from event HSP_SUBEVENT_MICROPHONE_GAIN_CHANGED
5289  * @param event packet
5290  * @return gain
5291  * @note: btstack_type 1
5292  */
5293 static inline uint8_t hsp_subevent_microphone_gain_changed_get_gain(const uint8_t * event){
5294     return event[5];
5295 }
5296 
5297 /**
5298  * @brief Get field acl_handle from event HSP_SUBEVENT_SPEAKER_GAIN_CHANGED
5299  * @param event packet
5300  * @return acl_handle
5301  * @note: btstack_type H
5302  */
5303 static inline hci_con_handle_t hsp_subevent_speaker_gain_changed_get_acl_handle(const uint8_t * event){
5304     return little_endian_read_16(event, 3);
5305 }
5306 /**
5307  * @brief Get field gain from event HSP_SUBEVENT_SPEAKER_GAIN_CHANGED
5308  * @param event packet
5309  * @return gain
5310  * @note: btstack_type 1
5311  */
5312 static inline uint8_t hsp_subevent_speaker_gain_changed_get_gain(const uint8_t * event){
5313     return event[5];
5314 }
5315 
5316 /**
5317  * @brief Get field acl_handle from event HSP_SUBEVENT_HS_COMMAND
5318  * @param event packet
5319  * @return acl_handle
5320  * @note: btstack_type H
5321  */
5322 static inline hci_con_handle_t hsp_subevent_hs_command_get_acl_handle(const uint8_t * event){
5323     return little_endian_read_16(event, 3);
5324 }
5325 /**
5326  * @brief Get field value_length from event HSP_SUBEVENT_HS_COMMAND
5327  * @param event packet
5328  * @return value_length
5329  * @note: btstack_type J
5330  */
5331 static inline uint8_t hsp_subevent_hs_command_get_value_length(const uint8_t * event){
5332     return event[5];
5333 }
5334 /**
5335  * @brief Get field value from event HSP_SUBEVENT_HS_COMMAND
5336  * @param event packet
5337  * @return value
5338  * @note: btstack_type V
5339  */
5340 static inline const uint8_t * hsp_subevent_hs_command_get_value(const uint8_t * event){
5341     return &event[6];
5342 }
5343 
5344 /**
5345  * @brief Get field acl_handle from event HSP_SUBEVENT_AG_INDICATION
5346  * @param event packet
5347  * @return acl_handle
5348  * @note: btstack_type H
5349  */
5350 static inline hci_con_handle_t hsp_subevent_ag_indication_get_acl_handle(const uint8_t * event){
5351     return little_endian_read_16(event, 3);
5352 }
5353 /**
5354  * @brief Get field value_length from event HSP_SUBEVENT_AG_INDICATION
5355  * @param event packet
5356  * @return value_length
5357  * @note: btstack_type J
5358  */
5359 static inline uint8_t hsp_subevent_ag_indication_get_value_length(const uint8_t * event){
5360     return event[5];
5361 }
5362 /**
5363  * @brief Get field value from event HSP_SUBEVENT_AG_INDICATION
5364  * @param event packet
5365  * @return value
5366  * @note: btstack_type V
5367  */
5368 static inline const uint8_t * hsp_subevent_ag_indication_get_value(const uint8_t * event){
5369     return &event[6];
5370 }
5371 
5372 /**
5373  * @brief Get field acl_handle from event HSP_SUBEVENT_BUTTON_PRESSED
5374  * @param event packet
5375  * @return acl_handle
5376  * @note: btstack_type H
5377  */
5378 static inline hci_con_handle_t hsp_subevent_button_pressed_get_acl_handle(const uint8_t * event){
5379     return little_endian_read_16(event, 3);
5380 }
5381 
5382 /**
5383  * @brief Get field acl_handle from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
5384  * @param event packet
5385  * @return acl_handle
5386  * @note: btstack_type H
5387  */
5388 static inline hci_con_handle_t hfp_subevent_service_level_connection_established_get_acl_handle(const uint8_t * event){
5389     return little_endian_read_16(event, 3);
5390 }
5391 /**
5392  * @brief Get field status from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
5393  * @param event packet
5394  * @return status
5395  * @note: btstack_type 1
5396  */
5397 static inline uint8_t hfp_subevent_service_level_connection_established_get_status(const uint8_t * event){
5398     return event[5];
5399 }
5400 /**
5401  * @brief Get field bd_addr from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_ESTABLISHED
5402  * @param event packet
5403  * @param Pointer to storage for bd_addr
5404  * @note: btstack_type B
5405  */
5406 static inline void hfp_subevent_service_level_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5407     reverse_bytes(&event[6], bd_addr, 6);
5408 }
5409 
5410 /**
5411  * @brief Get field acl_handle from event HFP_SUBEVENT_SERVICE_LEVEL_CONNECTION_RELEASED
5412  * @param event packet
5413  * @return acl_handle
5414  * @note: btstack_type H
5415  */
5416 static inline hci_con_handle_t hfp_subevent_service_level_connection_released_get_acl_handle(const uint8_t * event){
5417     return little_endian_read_16(event, 3);
5418 }
5419 
5420 /**
5421  * @brief Get field acl_handle from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
5422  * @param event packet
5423  * @return acl_handle
5424  * @note: btstack_type H
5425  */
5426 static inline hci_con_handle_t hfp_subevent_audio_connection_established_get_acl_handle(const uint8_t * event){
5427     return little_endian_read_16(event, 3);
5428 }
5429 /**
5430  * @brief Get field status from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
5431  * @param event packet
5432  * @return status
5433  * @note: btstack_type 1
5434  */
5435 static inline uint8_t hfp_subevent_audio_connection_established_get_status(const uint8_t * event){
5436     return event[5];
5437 }
5438 /**
5439  * @brief Get field sco_handle from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
5440  * @param event packet
5441  * @return sco_handle
5442  * @note: btstack_type H
5443  */
5444 static inline hci_con_handle_t hfp_subevent_audio_connection_established_get_sco_handle(const uint8_t * event){
5445     return little_endian_read_16(event, 6);
5446 }
5447 /**
5448  * @brief Get field bd_addr from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
5449  * @param event packet
5450  * @param Pointer to storage for bd_addr
5451  * @note: btstack_type B
5452  */
5453 static inline void hfp_subevent_audio_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
5454     reverse_bytes(&event[8], bd_addr, 6);
5455 }
5456 /**
5457  * @brief Get field negotiated_codec from event HFP_SUBEVENT_AUDIO_CONNECTION_ESTABLISHED
5458  * @param event packet
5459  * @return negotiated_codec
5460  * @note: btstack_type 1
5461  */
5462 static inline uint8_t hfp_subevent_audio_connection_established_get_negotiated_codec(const uint8_t * event){
5463     return event[14];
5464 }
5465 
5466 /**
5467  * @brief Get field acl_handle from event HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED
5468  * @param event packet
5469  * @return acl_handle
5470  * @note: btstack_type H
5471  */
5472 static inline hci_con_handle_t hfp_subevent_audio_connection_released_get_acl_handle(const uint8_t * event){
5473     return little_endian_read_16(event, 3);
5474 }
5475 /**
5476  * @brief Get field sco_handle from event HFP_SUBEVENT_AUDIO_CONNECTION_RELEASED
5477  * @param event packet
5478  * @return sco_handle
5479  * @note: btstack_type H
5480  */
5481 static inline hci_con_handle_t hfp_subevent_audio_connection_released_get_sco_handle(const uint8_t * event){
5482     return little_endian_read_16(event, 5);
5483 }
5484 
5485 /**
5486  * @brief Get field acl_handle from event HFP_SUBEVENT_COMPLETE
5487  * @param event packet
5488  * @return acl_handle
5489  * @note: btstack_type H
5490  */
5491 static inline hci_con_handle_t hfp_subevent_complete_get_acl_handle(const uint8_t * event){
5492     return little_endian_read_16(event, 3);
5493 }
5494 /**
5495  * @brief Get field status from event HFP_SUBEVENT_COMPLETE
5496  * @param event packet
5497  * @return status
5498  * @note: btstack_type 1
5499  */
5500 static inline uint8_t hfp_subevent_complete_get_status(const uint8_t * event){
5501     return event[5];
5502 }
5503 
5504 /**
5505  * @brief Get field acl_handle from event HFP_SUBEVENT_AG_INDICATOR_MAPPING
5506  * @param event packet
5507  * @return acl_handle
5508  * @note: btstack_type H
5509  */
5510 static inline hci_con_handle_t hfp_subevent_ag_indicator_mapping_get_acl_handle(const uint8_t * event){
5511     return little_endian_read_16(event, 3);
5512 }
5513 /**
5514  * @brief Get field indicator_index from event HFP_SUBEVENT_AG_INDICATOR_MAPPING
5515  * @param event packet
5516  * @return indicator_index
5517  * @note: btstack_type 1
5518  */
5519 static inline uint8_t hfp_subevent_ag_indicator_mapping_get_indicator_index(const uint8_t * event){
5520     return event[5];
5521 }
5522 /**
5523  * @brief Get field indicator_min_range from event HFP_SUBEVENT_AG_INDICATOR_MAPPING
5524  * @param event packet
5525  * @return indicator_min_range
5526  * @note: btstack_type 1
5527  */
5528 static inline uint8_t hfp_subevent_ag_indicator_mapping_get_indicator_min_range(const uint8_t * event){
5529     return event[6];
5530 }
5531 /**
5532  * @brief Get field indicator_max_range from event HFP_SUBEVENT_AG_INDICATOR_MAPPING
5533  * @param event packet
5534  * @return indicator_max_range
5535  * @note: btstack_type 1
5536  */
5537 static inline uint8_t hfp_subevent_ag_indicator_mapping_get_indicator_max_range(const uint8_t * event){
5538     return event[7];
5539 }
5540 /**
5541  * @brief Get field indicator_name from event HFP_SUBEVENT_AG_INDICATOR_MAPPING
5542  * @param event packet
5543  * @return indicator_name
5544  * @note: btstack_type T
5545  */
5546 static inline const char * hfp_subevent_ag_indicator_mapping_get_indicator_name(const uint8_t * event){
5547     return (const char *) &event[8];
5548 }
5549 
5550 /**
5551  * @brief Get field acl_handle from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5552  * @param event packet
5553  * @return acl_handle
5554  * @note: btstack_type H
5555  */
5556 static inline hci_con_handle_t hfp_subevent_ag_indicator_status_changed_get_acl_handle(const uint8_t * event){
5557     return little_endian_read_16(event, 3);
5558 }
5559 /**
5560  * @brief Get field indicator_index from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5561  * @param event packet
5562  * @return indicator_index
5563  * @note: btstack_type 1
5564  */
5565 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_index(const uint8_t * event){
5566     return event[5];
5567 }
5568 /**
5569  * @brief Get field indicator_status from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5570  * @param event packet
5571  * @return indicator_status
5572  * @note: btstack_type 1
5573  */
5574 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_status(const uint8_t * event){
5575     return event[6];
5576 }
5577 /**
5578  * @brief Get field indicator_min_range from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5579  * @param event packet
5580  * @return indicator_min_range
5581  * @note: btstack_type 1
5582  */
5583 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_min_range(const uint8_t * event){
5584     return event[7];
5585 }
5586 /**
5587  * @brief Get field indicator_max_range from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5588  * @param event packet
5589  * @return indicator_max_range
5590  * @note: btstack_type 1
5591  */
5592 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_max_range(const uint8_t * event){
5593     return event[8];
5594 }
5595 /**
5596  * @brief Get field indicator_mandatory from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5597  * @param event packet
5598  * @return indicator_mandatory
5599  * @note: btstack_type 1
5600  */
5601 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_mandatory(const uint8_t * event){
5602     return event[9];
5603 }
5604 /**
5605  * @brief Get field indicator_enabled from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5606  * @param event packet
5607  * @return indicator_enabled
5608  * @note: btstack_type 1
5609  */
5610 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_enabled(const uint8_t * event){
5611     return event[10];
5612 }
5613 /**
5614  * @brief Get field indicator_status_changed from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5615  * @param event packet
5616  * @return indicator_status_changed
5617  * @note: btstack_type 1
5618  */
5619 static inline uint8_t hfp_subevent_ag_indicator_status_changed_get_indicator_status_changed(const uint8_t * event){
5620     return event[11];
5621 }
5622 /**
5623  * @brief Get field indicator_name from event HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED
5624  * @param event packet
5625  * @return indicator_name
5626  * @note: btstack_type T
5627  */
5628 static inline const char * hfp_subevent_ag_indicator_status_changed_get_indicator_name(const uint8_t * event){
5629     return (const char *) &event[12];
5630 }
5631 
5632 /**
5633  * @brief Get field acl_handle from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
5634  * @param event packet
5635  * @return acl_handle
5636  * @note: btstack_type H
5637  */
5638 static inline hci_con_handle_t hfp_subevent_network_operator_changed_get_acl_handle(const uint8_t * event){
5639     return little_endian_read_16(event, 3);
5640 }
5641 /**
5642  * @brief Get field network_operator_mode from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
5643  * @param event packet
5644  * @return network_operator_mode
5645  * @note: btstack_type 1
5646  */
5647 static inline uint8_t hfp_subevent_network_operator_changed_get_network_operator_mode(const uint8_t * event){
5648     return event[5];
5649 }
5650 /**
5651  * @brief Get field network_operator_format from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
5652  * @param event packet
5653  * @return network_operator_format
5654  * @note: btstack_type 1
5655  */
5656 static inline uint8_t hfp_subevent_network_operator_changed_get_network_operator_format(const uint8_t * event){
5657     return event[6];
5658 }
5659 /**
5660  * @brief Get field network_operator_name from event HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED
5661  * @param event packet
5662  * @return network_operator_name
5663  * @note: btstack_type T
5664  */
5665 static inline const char * hfp_subevent_network_operator_changed_get_network_operator_name(const uint8_t * event){
5666     return (const char *) &event[7];
5667 }
5668 
5669 /**
5670  * @brief Get field acl_handle from event HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR
5671  * @param event packet
5672  * @return acl_handle
5673  * @note: btstack_type H
5674  */
5675 static inline hci_con_handle_t hfp_subevent_extended_audio_gateway_error_get_acl_handle(const uint8_t * event){
5676     return little_endian_read_16(event, 3);
5677 }
5678 /**
5679  * @brief Get field error from event HFP_SUBEVENT_EXTENDED_AUDIO_GATEWAY_ERROR
5680  * @param event packet
5681  * @return error
5682  * @note: btstack_type 1
5683  */
5684 static inline uint8_t hfp_subevent_extended_audio_gateway_error_get_error(const uint8_t * event){
5685     return event[5];
5686 }
5687 
5688 /**
5689  * @brief Get field acl_handle from event HFP_SUBEVENT_START_RINGING
5690  * @param event packet
5691  * @return acl_handle
5692  * @note: btstack_type H
5693  */
5694 static inline hci_con_handle_t hfp_subevent_start_ringing_get_acl_handle(const uint8_t * event){
5695     return little_endian_read_16(event, 3);
5696 }
5697 
5698 /**
5699  * @brief Get field acl_handle from event HFP_SUBEVENT_RING
5700  * @param event packet
5701  * @return acl_handle
5702  * @note: btstack_type H
5703  */
5704 static inline hci_con_handle_t hfp_subevent_ring_get_acl_handle(const uint8_t * event){
5705     return little_endian_read_16(event, 3);
5706 }
5707 
5708 /**
5709  * @brief Get field acl_handle from event HFP_SUBEVENT_STOP_RINGING
5710  * @param event packet
5711  * @return acl_handle
5712  * @note: btstack_type H
5713  */
5714 static inline hci_con_handle_t hfp_subevent_stop_ringing_get_acl_handle(const uint8_t * event){
5715     return little_endian_read_16(event, 3);
5716 }
5717 
5718 /**
5719  * @brief Get field acl_handle from event HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER
5720  * @param event packet
5721  * @return acl_handle
5722  * @note: btstack_type H
5723  */
5724 static inline hci_con_handle_t hfp_subevent_place_call_with_number_get_acl_handle(const uint8_t * event){
5725     return little_endian_read_16(event, 3);
5726 }
5727 /**
5728  * @brief Get field number from event HFP_SUBEVENT_PLACE_CALL_WITH_NUMBER
5729  * @param event packet
5730  * @return number
5731  * @note: btstack_type T
5732  */
5733 static inline const char * hfp_subevent_place_call_with_number_get_number(const uint8_t * event){
5734     return (const char *) &event[5];
5735 }
5736 
5737 /**
5738  * @brief Get field acl_handle from event HFP_SUBEVENT_ATTACH_NUMBER_TO_VOICE_TAG
5739  * @param event packet
5740  * @return acl_handle
5741  * @note: btstack_type H
5742  */
5743 static inline hci_con_handle_t hfp_subevent_attach_number_to_voice_tag_get_acl_handle(const uint8_t * event){
5744     return little_endian_read_16(event, 3);
5745 }
5746 
5747 /**
5748  * @brief Get field acl_handle from event HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG
5749  * @param event packet
5750  * @return acl_handle
5751  * @note: btstack_type H
5752  */
5753 static inline hci_con_handle_t hfp_subevent_number_for_voice_tag_get_acl_handle(const uint8_t * event){
5754     return little_endian_read_16(event, 3);
5755 }
5756 /**
5757  * @brief Get field number from event HFP_SUBEVENT_NUMBER_FOR_VOICE_TAG
5758  * @param event packet
5759  * @return number
5760  * @note: btstack_type T
5761  */
5762 static inline const char * hfp_subevent_number_for_voice_tag_get_number(const uint8_t * event){
5763     return (const char *) &event[5];
5764 }
5765 
5766 /**
5767  * @brief Get field acl_handle from event HFP_SUBEVENT_TRANSMIT_DTMF_CODES
5768  * @param event packet
5769  * @return acl_handle
5770  * @note: btstack_type H
5771  */
5772 static inline hci_con_handle_t hfp_subevent_transmit_dtmf_codes_get_acl_handle(const uint8_t * event){
5773     return little_endian_read_16(event, 3);
5774 }
5775 /**
5776  * @brief Get field dtmf from event HFP_SUBEVENT_TRANSMIT_DTMF_CODES
5777  * @param event packet
5778  * @return dtmf
5779  * @note: btstack_type T
5780  */
5781 static inline const char * hfp_subevent_transmit_dtmf_codes_get_dtmf(const uint8_t * event){
5782     return (const char *) &event[5];
5783 }
5784 
5785 /**
5786  * @brief Get field acl_handle from event HFP_SUBEVENT_CALL_ANSWERED
5787  * @param event packet
5788  * @return acl_handle
5789  * @note: btstack_type H
5790  */
5791 static inline hci_con_handle_t hfp_subevent_call_answered_get_acl_handle(const uint8_t * event){
5792     return little_endian_read_16(event, 3);
5793 }
5794 
5795 /**
5796  * @brief Get field acl_handle from event HFP_SUBEVENT_CALL_TERMINATED
5797  * @param event packet
5798  * @return acl_handle
5799  * @note: btstack_type H
5800  */
5801 static inline hci_con_handle_t hfp_subevent_call_terminated_get_acl_handle(const uint8_t * event){
5802     return little_endian_read_16(event, 3);
5803 }
5804 
5805 /**
5806  * @brief Get field acl_handle from event HFP_SUBEVENT_CONFERENCE_CALL
5807  * @param event packet
5808  * @return acl_handle
5809  * @note: btstack_type H
5810  */
5811 static inline hci_con_handle_t hfp_subevent_conference_call_get_acl_handle(const uint8_t * event){
5812     return little_endian_read_16(event, 3);
5813 }
5814 
5815 /**
5816  * @brief Get field acl_handle from event HFP_SUBEVENT_SPEAKER_VOLUME
5817  * @param event packet
5818  * @return acl_handle
5819  * @note: btstack_type H
5820  */
5821 static inline hci_con_handle_t hfp_subevent_speaker_volume_get_acl_handle(const uint8_t * event){
5822     return little_endian_read_16(event, 3);
5823 }
5824 /**
5825  * @brief Get field gain from event HFP_SUBEVENT_SPEAKER_VOLUME
5826  * @param event packet
5827  * @return gain
5828  * @note: btstack_type 1
5829  */
5830 static inline uint8_t hfp_subevent_speaker_volume_get_gain(const uint8_t * event){
5831     return event[5];
5832 }
5833 
5834 /**
5835  * @brief Get field acl_handle from event HFP_SUBEVENT_MICROPHONE_VOLUME
5836  * @param event packet
5837  * @return acl_handle
5838  * @note: btstack_type H
5839  */
5840 static inline hci_con_handle_t hfp_subevent_microphone_volume_get_acl_handle(const uint8_t * event){
5841     return little_endian_read_16(event, 3);
5842 }
5843 /**
5844  * @brief Get field gain from event HFP_SUBEVENT_MICROPHONE_VOLUME
5845  * @param event packet
5846  * @return gain
5847  * @note: btstack_type 1
5848  */
5849 static inline uint8_t hfp_subevent_microphone_volume_get_gain(const uint8_t * event){
5850     return event[5];
5851 }
5852 
5853 /**
5854  * @brief Get field acl_handle from event HFP_SUBEVENT_CALL_WAITING_NOTIFICATION
5855  * @param event packet
5856  * @return acl_handle
5857  * @note: btstack_type H
5858  */
5859 static inline hci_con_handle_t hfp_subevent_call_waiting_notification_get_acl_handle(const uint8_t * event){
5860     return little_endian_read_16(event, 3);
5861 }
5862 /**
5863  * @brief Get field type from event HFP_SUBEVENT_CALL_WAITING_NOTIFICATION
5864  * @param event packet
5865  * @return type
5866  * @note: btstack_type 1
5867  */
5868 static inline uint8_t hfp_subevent_call_waiting_notification_get_type(const uint8_t * event){
5869     return event[5];
5870 }
5871 /**
5872  * @brief Get field number from event HFP_SUBEVENT_CALL_WAITING_NOTIFICATION
5873  * @param event packet
5874  * @return number
5875  * @note: btstack_type T
5876  */
5877 static inline const char * hfp_subevent_call_waiting_notification_get_number(const uint8_t * event){
5878     return (const char *) &event[6];
5879 }
5880 
5881 /**
5882  * @brief Get field acl_handle from event HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION
5883  * @param event packet
5884  * @return acl_handle
5885  * @note: btstack_type H
5886  */
5887 static inline hci_con_handle_t hfp_subevent_calling_line_identification_notification_get_acl_handle(const uint8_t * event){
5888     return little_endian_read_16(event, 3);
5889 }
5890 /**
5891  * @brief Get field type from event HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION
5892  * @param event packet
5893  * @return type
5894  * @note: btstack_type 1
5895  */
5896 static inline uint8_t hfp_subevent_calling_line_identification_notification_get_type(const uint8_t * event){
5897     return event[5];
5898 }
5899 /**
5900  * @brief Get field number from event HFP_SUBEVENT_CALLING_LINE_IDENTIFICATION_NOTIFICATION
5901  * @param event packet
5902  * @return number
5903  * @note: btstack_type T
5904  */
5905 static inline const char * hfp_subevent_calling_line_identification_notification_get_number(const uint8_t * event){
5906     return (const char *) &event[6];
5907 }
5908 
5909 /**
5910  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5911  * @param event packet
5912  * @return acl_handle
5913  * @note: btstack_type H
5914  */
5915 static inline hci_con_handle_t hfp_subevent_enhanced_call_status_get_acl_handle(const uint8_t * event){
5916     return little_endian_read_16(event, 3);
5917 }
5918 /**
5919  * @brief Get field clcc_idx from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5920  * @param event packet
5921  * @return clcc_idx
5922  * @note: btstack_type 1
5923  */
5924 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_idx(const uint8_t * event){
5925     return event[5];
5926 }
5927 /**
5928  * @brief Get field clcc_dir from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5929  * @param event packet
5930  * @return clcc_dir
5931  * @note: btstack_type 1
5932  */
5933 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_dir(const uint8_t * event){
5934     return event[6];
5935 }
5936 /**
5937  * @brief Get field clcc_status from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5938  * @param event packet
5939  * @return clcc_status
5940  * @note: btstack_type 1
5941  */
5942 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_status(const uint8_t * event){
5943     return event[7];
5944 }
5945 /**
5946  * @brief Get field clcc_mode from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5947  * @param event packet
5948  * @return clcc_mode
5949  * @note: btstack_type 1
5950  */
5951 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_mode(const uint8_t * event){
5952     return event[8];
5953 }
5954 /**
5955  * @brief Get field clcc_mpty from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5956  * @param event packet
5957  * @return clcc_mpty
5958  * @note: btstack_type 1
5959  */
5960 static inline uint8_t hfp_subevent_enhanced_call_status_get_clcc_mpty(const uint8_t * event){
5961     return event[9];
5962 }
5963 /**
5964  * @brief Get field bnip_type from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5965  * @param event packet
5966  * @return bnip_type
5967  * @note: btstack_type 1
5968  */
5969 static inline uint8_t hfp_subevent_enhanced_call_status_get_bnip_type(const uint8_t * event){
5970     return event[10];
5971 }
5972 /**
5973  * @brief Get field bnip_number from event HFP_SUBEVENT_ENHANCED_CALL_STATUS
5974  * @param event packet
5975  * @return bnip_number
5976  * @note: btstack_type T
5977  */
5978 static inline const char * hfp_subevent_enhanced_call_status_get_bnip_number(const uint8_t * event){
5979     return (const char *) &event[11];
5980 }
5981 
5982 /**
5983  * @brief Get field acl_handle from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
5984  * @param event packet
5985  * @return acl_handle
5986  * @note: btstack_type H
5987  */
5988 static inline hci_con_handle_t hfp_subevent_subscriber_number_information_get_acl_handle(const uint8_t * event){
5989     return little_endian_read_16(event, 3);
5990 }
5991 /**
5992  * @brief Get field status from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
5993  * @param event packet
5994  * @return status
5995  * @note: btstack_type 1
5996  */
5997 static inline uint8_t hfp_subevent_subscriber_number_information_get_status(const uint8_t * event){
5998     return event[5];
5999 }
6000 /**
6001  * @brief Get field bnip_type from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
6002  * @param event packet
6003  * @return bnip_type
6004  * @note: btstack_type 1
6005  */
6006 static inline uint8_t hfp_subevent_subscriber_number_information_get_bnip_type(const uint8_t * event){
6007     return event[6];
6008 }
6009 /**
6010  * @brief Get field bnip_number from event HFP_SUBEVENT_SUBSCRIBER_NUMBER_INFORMATION
6011  * @param event packet
6012  * @return bnip_number
6013  * @note: btstack_type T
6014  */
6015 static inline const char * hfp_subevent_subscriber_number_information_get_bnip_number(const uint8_t * event){
6016     return (const char *) &event[7];
6017 }
6018 
6019 /**
6020  * @brief Get field acl_handle from event HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS
6021  * @param event packet
6022  * @return acl_handle
6023  * @note: btstack_type H
6024  */
6025 static inline hci_con_handle_t hfp_subevent_response_and_hold_status_get_acl_handle(const uint8_t * event){
6026     return little_endian_read_16(event, 3);
6027 }
6028 /**
6029  * @brief Get field value from event HFP_SUBEVENT_RESPONSE_AND_HOLD_STATUS
6030  * @param event packet
6031  * @return value
6032  * @note: btstack_type T
6033  */
6034 static inline const char * hfp_subevent_response_and_hold_status_get_value(const uint8_t * event){
6035     return (const char *) &event[5];
6036 }
6037 
6038 /**
6039  * @brief Get field acl_handle from event HFP_SUBEVENT_AT_MESSAGE_SENT
6040  * @param event packet
6041  * @return acl_handle
6042  * @note: btstack_type H
6043  */
6044 static inline hci_con_handle_t hfp_subevent_at_message_sent_get_acl_handle(const uint8_t * event){
6045     return little_endian_read_16(event, 3);
6046 }
6047 /**
6048  * @brief Get field command from event HFP_SUBEVENT_AT_MESSAGE_SENT
6049  * @param event packet
6050  * @return command
6051  * @note: btstack_type T
6052  */
6053 static inline const char * hfp_subevent_at_message_sent_get_command(const uint8_t * event){
6054     return (const char *) &event[5];
6055 }
6056 
6057 /**
6058  * @brief Get field acl_handle from event HFP_SUBEVENT_AT_MESSAGE_RECEIVED
6059  * @param event packet
6060  * @return acl_handle
6061  * @note: btstack_type H
6062  */
6063 static inline hci_con_handle_t hfp_subevent_at_message_received_get_acl_handle(const uint8_t * event){
6064     return little_endian_read_16(event, 3);
6065 }
6066 /**
6067  * @brief Get field command from event HFP_SUBEVENT_AT_MESSAGE_RECEIVED
6068  * @param event packet
6069  * @return command
6070  * @note: btstack_type T
6071  */
6072 static inline const char * hfp_subevent_at_message_received_get_command(const uint8_t * event){
6073     return (const char *) &event[5];
6074 }
6075 
6076 /**
6077  * @brief Get field acl_handle from event HFP_SUBEVENT_IN_BAND_RING_TONE
6078  * @param event packet
6079  * @return acl_handle
6080  * @note: btstack_type H
6081  */
6082 static inline hci_con_handle_t hfp_subevent_in_band_ring_tone_get_acl_handle(const uint8_t * event){
6083     return little_endian_read_16(event, 3);
6084 }
6085 /**
6086  * @brief Get field status from event HFP_SUBEVENT_IN_BAND_RING_TONE
6087  * @param event packet
6088  * @return status
6089  * @note: btstack_type 1
6090  */
6091 static inline uint8_t hfp_subevent_in_band_ring_tone_get_status(const uint8_t * event){
6092     return event[5];
6093 }
6094 
6095 /**
6096  * @brief Get field acl_handle from event HFP_SUBEVENT_VOICE_RECOGNITION_ACTIVATED
6097  * @param event packet
6098  * @return acl_handle
6099  * @note: btstack_type H
6100  */
6101 static inline hci_con_handle_t hfp_subevent_voice_recognition_activated_get_acl_handle(const uint8_t * event){
6102     return little_endian_read_16(event, 3);
6103 }
6104 /**
6105  * @brief Get field status from event HFP_SUBEVENT_VOICE_RECOGNITION_ACTIVATED
6106  * @param event packet
6107  * @return status
6108  * @note: btstack_type 1
6109  */
6110 static inline uint8_t hfp_subevent_voice_recognition_activated_get_status(const uint8_t * event){
6111     return event[5];
6112 }
6113 /**
6114  * @brief Get field enhanced from event HFP_SUBEVENT_VOICE_RECOGNITION_ACTIVATED
6115  * @param event packet
6116  * @return enhanced
6117  * @note: btstack_type 1
6118  */
6119 static inline uint8_t hfp_subevent_voice_recognition_activated_get_enhanced(const uint8_t * event){
6120     return event[6];
6121 }
6122 
6123 /**
6124  * @brief Get field acl_handle from event HFP_SUBEVENT_VOICE_RECOGNITION_DEACTIVATED
6125  * @param event packet
6126  * @return acl_handle
6127  * @note: btstack_type H
6128  */
6129 static inline hci_con_handle_t hfp_subevent_voice_recognition_deactivated_get_acl_handle(const uint8_t * event){
6130     return little_endian_read_16(event, 3);
6131 }
6132 /**
6133  * @brief Get field status from event HFP_SUBEVENT_VOICE_RECOGNITION_DEACTIVATED
6134  * @param event packet
6135  * @return status
6136  * @note: btstack_type 1
6137  */
6138 static inline uint8_t hfp_subevent_voice_recognition_deactivated_get_status(const uint8_t * event){
6139     return event[5];
6140 }
6141 
6142 /**
6143  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_HF_READY_FOR_AUDIO
6144  * @param event packet
6145  * @return acl_handle
6146  * @note: btstack_type H
6147  */
6148 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_hf_ready_for_audio_get_acl_handle(const uint8_t * event){
6149     return little_endian_read_16(event, 3);
6150 }
6151 /**
6152  * @brief Get field status from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_HF_READY_FOR_AUDIO
6153  * @param event packet
6154  * @return status
6155  * @note: btstack_type 1
6156  */
6157 static inline uint8_t hfp_subevent_enhanced_voice_recognition_hf_ready_for_audio_get_status(const uint8_t * event){
6158     return event[5];
6159 }
6160 
6161 /**
6162  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_READY_TO_ACCEPT_AUDIO_INPUT
6163  * @param event packet
6164  * @return acl_handle
6165  * @note: btstack_type H
6166  */
6167 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_ag_ready_to_accept_audio_input_get_acl_handle(const uint8_t * event){
6168     return little_endian_read_16(event, 3);
6169 }
6170 /**
6171  * @brief Get field status from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_READY_TO_ACCEPT_AUDIO_INPUT
6172  * @param event packet
6173  * @return status
6174  * @note: btstack_type 1
6175  */
6176 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_ready_to_accept_audio_input_get_status(const uint8_t * event){
6177     return event[5];
6178 }
6179 
6180 /**
6181  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_STARTING_SOUND
6182  * @param event packet
6183  * @return acl_handle
6184  * @note: btstack_type H
6185  */
6186 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_ag_is_starting_sound_get_acl_handle(const uint8_t * event){
6187     return little_endian_read_16(event, 3);
6188 }
6189 /**
6190  * @brief Get field status from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_STARTING_SOUND
6191  * @param event packet
6192  * @return status
6193  * @note: btstack_type 1
6194  */
6195 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_is_starting_sound_get_status(const uint8_t * event){
6196     return event[5];
6197 }
6198 
6199 /**
6200  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_PROCESSING_AUDIO_INPUT
6201  * @param event packet
6202  * @return acl_handle
6203  * @note: btstack_type H
6204  */
6205 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_ag_is_processing_audio_input_get_acl_handle(const uint8_t * event){
6206     return little_endian_read_16(event, 3);
6207 }
6208 /**
6209  * @brief Get field status from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_IS_PROCESSING_AUDIO_INPUT
6210  * @param event packet
6211  * @return status
6212  * @note: btstack_type 1
6213  */
6214 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_is_processing_audio_input_get_status(const uint8_t * event){
6215     return event[5];
6216 }
6217 
6218 /**
6219  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE_SENT
6220  * @param event packet
6221  * @return acl_handle
6222  * @note: btstack_type H
6223  */
6224 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_ag_message_sent_get_acl_handle(const uint8_t * event){
6225     return little_endian_read_16(event, 3);
6226 }
6227 /**
6228  * @brief Get field status from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE_SENT
6229  * @param event packet
6230  * @return status
6231  * @note: btstack_type 1
6232  */
6233 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_message_sent_get_status(const uint8_t * event){
6234     return event[5];
6235 }
6236 
6237 /**
6238  * @brief Get field acl_handle from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6239  * @param event packet
6240  * @return acl_handle
6241  * @note: btstack_type H
6242  */
6243 static inline hci_con_handle_t hfp_subevent_enhanced_voice_recognition_ag_message_get_acl_handle(const uint8_t * event){
6244     return little_endian_read_16(event, 3);
6245 }
6246 /**
6247  * @brief Get field text_id from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6248  * @param event packet
6249  * @return text_id
6250  * @note: btstack_type 2
6251  */
6252 static inline uint16_t hfp_subevent_enhanced_voice_recognition_ag_message_get_text_id(const uint8_t * event){
6253     return little_endian_read_16(event, 5);
6254 }
6255 /**
6256  * @brief Get field text_type from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6257  * @param event packet
6258  * @return text_type
6259  * @note: btstack_type 1
6260  */
6261 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_message_get_text_type(const uint8_t * event){
6262     return event[7];
6263 }
6264 /**
6265  * @brief Get field text_operation from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6266  * @param event packet
6267  * @return text_operation
6268  * @note: btstack_type 1
6269  */
6270 static inline uint8_t hfp_subevent_enhanced_voice_recognition_ag_message_get_text_operation(const uint8_t * event){
6271     return event[8];
6272 }
6273 /**
6274  * @brief Get field text_length from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6275  * @param event packet
6276  * @return text_length
6277  * @note: btstack_type L
6278  */
6279 static inline uint16_t hfp_subevent_enhanced_voice_recognition_ag_message_get_text_length(const uint8_t * event){
6280     return little_endian_read_16(event, 9);
6281 }
6282 /**
6283  * @brief Get field text from event HFP_SUBEVENT_ENHANCED_VOICE_RECOGNITION_AG_MESSAGE
6284  * @param event packet
6285  * @return text
6286  * @note: btstack_type V
6287  */
6288 static inline const uint8_t * hfp_subevent_enhanced_voice_recognition_ag_message_get_text(const uint8_t * event){
6289     return &event[11];
6290 }
6291 
6292 /**
6293  * @brief Get field acl_handle from event HFP_SUBEVENT_ECHO_CANCELING_AND_NOISE_REDUCTION_DEACTIVATE
6294  * @param event packet
6295  * @return acl_handle
6296  * @note: btstack_type H
6297  */
6298 static inline hci_con_handle_t hfp_subevent_echo_canceling_and_noise_reduction_deactivate_get_acl_handle(const uint8_t * event){
6299     return little_endian_read_16(event, 3);
6300 }
6301 /**
6302  * @brief Get field status from event HFP_SUBEVENT_ECHO_CANCELING_AND_NOISE_REDUCTION_DEACTIVATE
6303  * @param event packet
6304  * @return status
6305  * @note: btstack_type 1
6306  */
6307 static inline uint8_t hfp_subevent_echo_canceling_and_noise_reduction_deactivate_get_status(const uint8_t * event){
6308     return event[5];
6309 }
6310 
6311 /**
6312  * @brief Get field acl_handle from event HFP_SUBEVENT_HF_INDICATOR
6313  * @param event packet
6314  * @return acl_handle
6315  * @note: btstack_type H
6316  */
6317 static inline hci_con_handle_t hfp_subevent_hf_indicator_get_acl_handle(const uint8_t * event){
6318     return little_endian_read_16(event, 3);
6319 }
6320 /**
6321  * @brief Get field uuid from event HFP_SUBEVENT_HF_INDICATOR
6322  * @param event packet
6323  * @return uuid
6324  * @note: btstack_type 2
6325  */
6326 static inline uint16_t hfp_subevent_hf_indicator_get_uuid(const uint8_t * event){
6327     return little_endian_read_16(event, 5);
6328 }
6329 /**
6330  * @brief Get field value from event HFP_SUBEVENT_HF_INDICATOR
6331  * @param event packet
6332  * @return value
6333  * @note: btstack_type 1
6334  */
6335 static inline uint8_t hfp_subevent_hf_indicator_get_value(const uint8_t * event){
6336     return event[7];
6337 }
6338 
6339 #ifdef ENABLE_BLE
6340 /**
6341  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_CONNECTED
6342  * @param event packet
6343  * @return handle
6344  * @note: btstack_type H
6345  */
6346 static inline hci_con_handle_t ancs_subevent_client_connected_get_handle(const uint8_t * event){
6347     return little_endian_read_16(event, 3);
6348 }
6349 #endif
6350 
6351 #ifdef ENABLE_BLE
6352 /**
6353  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
6354  * @param event packet
6355  * @return handle
6356  * @note: btstack_type H
6357  */
6358 static inline hci_con_handle_t ancs_subevent_client_notification_get_handle(const uint8_t * event){
6359     return little_endian_read_16(event, 3);
6360 }
6361 /**
6362  * @brief Get field attribute_id from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
6363  * @param event packet
6364  * @return attribute_id
6365  * @note: btstack_type 2
6366  */
6367 static inline uint16_t ancs_subevent_client_notification_get_attribute_id(const uint8_t * event){
6368     return little_endian_read_16(event, 5);
6369 }
6370 /**
6371  * @brief Get field text from event ANCS_SUBEVENT_CLIENT_NOTIFICATION
6372  * @param event packet
6373  * @return text
6374  * @note: btstack_type T
6375  */
6376 static inline const char * ancs_subevent_client_notification_get_text(const uint8_t * event){
6377     return (const char *) &event[7];
6378 }
6379 #endif
6380 
6381 #ifdef ENABLE_BLE
6382 /**
6383  * @brief Get field handle from event ANCS_SUBEVENT_CLIENT_DISCONNECTED
6384  * @param event packet
6385  * @return handle
6386  * @note: btstack_type H
6387  */
6388 static inline hci_con_handle_t ancs_subevent_client_disconnected_get_handle(const uint8_t * event){
6389     return little_endian_read_16(event, 3);
6390 }
6391 #endif
6392 
6393 /**
6394  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
6395  * @param event packet
6396  * @return avdtp_cid
6397  * @note: btstack_type 2
6398  */
6399 static inline uint16_t avdtp_subevent_signaling_accept_get_avdtp_cid(const uint8_t * event){
6400     return little_endian_read_16(event, 3);
6401 }
6402 /**
6403  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
6404  * @param event packet
6405  * @return local_seid
6406  * @note: btstack_type 1
6407  */
6408 static inline uint8_t avdtp_subevent_signaling_accept_get_local_seid(const uint8_t * event){
6409     return event[5];
6410 }
6411 /**
6412  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
6413  * @param event packet
6414  * @return is_initiator
6415  * @note: btstack_type 1
6416  */
6417 static inline uint8_t avdtp_subevent_signaling_accept_get_is_initiator(const uint8_t * event){
6418     return event[6];
6419 }
6420 /**
6421  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_ACCEPT
6422  * @param event packet
6423  * @return signal_identifier
6424  * @note: btstack_type 1
6425  */
6426 static inline uint8_t avdtp_subevent_signaling_accept_get_signal_identifier(const uint8_t * event){
6427     return event[7];
6428 }
6429 
6430 /**
6431  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_REJECT
6432  * @param event packet
6433  * @return avdtp_cid
6434  * @note: btstack_type 2
6435  */
6436 static inline uint16_t avdtp_subevent_signaling_reject_get_avdtp_cid(const uint8_t * event){
6437     return little_endian_read_16(event, 3);
6438 }
6439 /**
6440  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_REJECT
6441  * @param event packet
6442  * @return local_seid
6443  * @note: btstack_type 1
6444  */
6445 static inline uint8_t avdtp_subevent_signaling_reject_get_local_seid(const uint8_t * event){
6446     return event[5];
6447 }
6448 /**
6449  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_REJECT
6450  * @param event packet
6451  * @return is_initiator
6452  * @note: btstack_type 1
6453  */
6454 static inline uint8_t avdtp_subevent_signaling_reject_get_is_initiator(const uint8_t * event){
6455     return event[6];
6456 }
6457 /**
6458  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_REJECT
6459  * @param event packet
6460  * @return signal_identifier
6461  * @note: btstack_type 1
6462  */
6463 static inline uint8_t avdtp_subevent_signaling_reject_get_signal_identifier(const uint8_t * event){
6464     return event[7];
6465 }
6466 
6467 /**
6468  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
6469  * @param event packet
6470  * @return avdtp_cid
6471  * @note: btstack_type 2
6472  */
6473 static inline uint16_t avdtp_subevent_signaling_general_reject_get_avdtp_cid(const uint8_t * event){
6474     return little_endian_read_16(event, 3);
6475 }
6476 /**
6477  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
6478  * @param event packet
6479  * @return local_seid
6480  * @note: btstack_type 1
6481  */
6482 static inline uint8_t avdtp_subevent_signaling_general_reject_get_local_seid(const uint8_t * event){
6483     return event[5];
6484 }
6485 /**
6486  * @brief Get field is_initiator from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
6487  * @param event packet
6488  * @return is_initiator
6489  * @note: btstack_type 1
6490  */
6491 static inline uint8_t avdtp_subevent_signaling_general_reject_get_is_initiator(const uint8_t * event){
6492     return event[6];
6493 }
6494 /**
6495  * @brief Get field signal_identifier from event AVDTP_SUBEVENT_SIGNALING_GENERAL_REJECT
6496  * @param event packet
6497  * @return signal_identifier
6498  * @note: btstack_type 1
6499  */
6500 static inline uint8_t avdtp_subevent_signaling_general_reject_get_signal_identifier(const uint8_t * event){
6501     return event[7];
6502 }
6503 
6504 /**
6505  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
6506  * @param event packet
6507  * @return avdtp_cid
6508  * @note: btstack_type 2
6509  */
6510 static inline uint16_t avdtp_subevent_signaling_connection_established_get_avdtp_cid(const uint8_t * event){
6511     return little_endian_read_16(event, 3);
6512 }
6513 /**
6514  * @brief Get field bd_addr from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
6515  * @param event packet
6516  * @param Pointer to storage for bd_addr
6517  * @note: btstack_type B
6518  */
6519 static inline void avdtp_subevent_signaling_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
6520     reverse_bytes(&event[5], bd_addr, 6);
6521 }
6522 /**
6523  * @brief Get field con_handle from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
6524  * @param event packet
6525  * @return con_handle
6526  * @note: btstack_type 2
6527  */
6528 static inline uint16_t avdtp_subevent_signaling_connection_established_get_con_handle(const uint8_t * event){
6529     return little_endian_read_16(event, 11);
6530 }
6531 /**
6532  * @brief Get field status from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
6533  * @param event packet
6534  * @return status
6535  * @note: btstack_type 1
6536  */
6537 static inline uint8_t avdtp_subevent_signaling_connection_established_get_status(const uint8_t * event){
6538     return event[13];
6539 }
6540 
6541 /**
6542  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONNECTION_RELEASED
6543  * @param event packet
6544  * @return avdtp_cid
6545  * @note: btstack_type 2
6546  */
6547 static inline uint16_t avdtp_subevent_signaling_connection_released_get_avdtp_cid(const uint8_t * event){
6548     return little_endian_read_16(event, 3);
6549 }
6550 
6551 /**
6552  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
6553  * @param event packet
6554  * @return avdtp_cid
6555  * @note: btstack_type 2
6556  */
6557 static inline uint16_t avdtp_subevent_signaling_sep_found_get_avdtp_cid(const uint8_t * event){
6558     return little_endian_read_16(event, 3);
6559 }
6560 /**
6561  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
6562  * @param event packet
6563  * @return remote_seid
6564  * @note: btstack_type 1
6565  */
6566 static inline uint8_t avdtp_subevent_signaling_sep_found_get_remote_seid(const uint8_t * event){
6567     return event[5];
6568 }
6569 /**
6570  * @brief Get field in_use from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
6571  * @param event packet
6572  * @return in_use
6573  * @note: btstack_type 1
6574  */
6575 static inline uint8_t avdtp_subevent_signaling_sep_found_get_in_use(const uint8_t * event){
6576     return event[6];
6577 }
6578 /**
6579  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
6580  * @param event packet
6581  * @return media_type
6582  * @note: btstack_type 1
6583  */
6584 static inline uint8_t avdtp_subevent_signaling_sep_found_get_media_type(const uint8_t * event){
6585     return event[7];
6586 }
6587 /**
6588  * @brief Get field sep_type from event AVDTP_SUBEVENT_SIGNALING_SEP_FOUND
6589  * @param event packet
6590  * @return sep_type
6591  * @note: btstack_type 1
6592  */
6593 static inline uint8_t avdtp_subevent_signaling_sep_found_get_sep_type(const uint8_t * event){
6594     return event[8];
6595 }
6596 
6597 /**
6598  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6599  * @param event packet
6600  * @return avdtp_cid
6601  * @note: btstack_type 2
6602  */
6603 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_capability_get_avdtp_cid(const uint8_t * event){
6604     return little_endian_read_16(event, 3);
6605 }
6606 /**
6607  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6608  * @param event packet
6609  * @return remote_seid
6610  * @note: btstack_type 1
6611  */
6612 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_remote_seid(const uint8_t * event){
6613     return event[5];
6614 }
6615 /**
6616  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6617  * @param event packet
6618  * @return media_type
6619  * @note: btstack_type 1
6620  */
6621 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_media_type(const uint8_t * event){
6622     return event[6];
6623 }
6624 /**
6625  * @brief Get field sampling_frequency_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6626  * @param event packet
6627  * @return sampling_frequency_bitmap
6628  * @note: btstack_type 1
6629  */
6630 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_sampling_frequency_bitmap(const uint8_t * event){
6631     return event[7];
6632 }
6633 /**
6634  * @brief Get field channel_mode_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6635  * @param event packet
6636  * @return channel_mode_bitmap
6637  * @note: btstack_type 1
6638  */
6639 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_channel_mode_bitmap(const uint8_t * event){
6640     return event[8];
6641 }
6642 /**
6643  * @brief Get field block_length_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6644  * @param event packet
6645  * @return block_length_bitmap
6646  * @note: btstack_type 1
6647  */
6648 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_block_length_bitmap(const uint8_t * event){
6649     return event[9];
6650 }
6651 /**
6652  * @brief Get field subbands_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6653  * @param event packet
6654  * @return subbands_bitmap
6655  * @note: btstack_type 1
6656  */
6657 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_subbands_bitmap(const uint8_t * event){
6658     return event[10];
6659 }
6660 /**
6661  * @brief Get field allocation_method_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6662  * @param event packet
6663  * @return allocation_method_bitmap
6664  * @note: btstack_type 1
6665  */
6666 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_allocation_method_bitmap(const uint8_t * event){
6667     return event[11];
6668 }
6669 /**
6670  * @brief Get field min_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6671  * @param event packet
6672  * @return min_bitpool_value
6673  * @note: btstack_type 1
6674  */
6675 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_min_bitpool_value(const uint8_t * event){
6676     return event[12];
6677 }
6678 /**
6679  * @brief Get field max_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
6680  * @param event packet
6681  * @return max_bitpool_value
6682  * @note: btstack_type 1
6683  */
6684 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_capability_get_max_bitpool_value(const uint8_t * event){
6685     return event[13];
6686 }
6687 
6688 /**
6689  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6690  * @param event packet
6691  * @return avdtp_cid
6692  * @note: btstack_type 2
6693  */
6694 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_avdtp_cid(const uint8_t * event){
6695     return little_endian_read_16(event, 3);
6696 }
6697 /**
6698  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6699  * @param event packet
6700  * @return remote_seid
6701  * @note: btstack_type 1
6702  */
6703 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_remote_seid(const uint8_t * event){
6704     return event[5];
6705 }
6706 /**
6707  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6708  * @param event packet
6709  * @return media_type
6710  * @note: btstack_type 1
6711  */
6712 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_media_type(const uint8_t * event){
6713     return event[6];
6714 }
6715 /**
6716  * @brief Get field layer_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6717  * @param event packet
6718  * @return layer_bitmap
6719  * @note: btstack_type 1
6720  */
6721 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_layer_bitmap(const uint8_t * event){
6722     return event[7];
6723 }
6724 /**
6725  * @brief Get field crc from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6726  * @param event packet
6727  * @return crc
6728  * @note: btstack_type 1
6729  */
6730 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_crc(const uint8_t * event){
6731     return event[8];
6732 }
6733 /**
6734  * @brief Get field channel_mode_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6735  * @param event packet
6736  * @return channel_mode_bitmap
6737  * @note: btstack_type 1
6738  */
6739 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_channel_mode_bitmap(const uint8_t * event){
6740     return event[9];
6741 }
6742 /**
6743  * @brief Get field media_payload_format from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6744  * @param event packet
6745  * @return media_payload_format
6746  * @note: btstack_type 1
6747  */
6748 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_media_payload_format(const uint8_t * event){
6749     return event[10];
6750 }
6751 /**
6752  * @brief Get field sampling_frequency_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6753  * @param event packet
6754  * @return sampling_frequency_bitmap
6755  * @note: btstack_type 1
6756  */
6757 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_sampling_frequency_bitmap(const uint8_t * event){
6758     return event[11];
6759 }
6760 /**
6761  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6762  * @param event packet
6763  * @return vbr
6764  * @note: btstack_type 1
6765  */
6766 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_vbr(const uint8_t * event){
6767     return event[12];
6768 }
6769 /**
6770  * @brief Get field bit_rate_index_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
6771  * @param event packet
6772  * @return bit_rate_index_bitmap
6773  * @note: btstack_type 2
6774  */
6775 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_audio_capability_get_bit_rate_index_bitmap(const uint8_t * event){
6776     return little_endian_read_16(event, 13);
6777 }
6778 
6779 /**
6780  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6781  * @param event packet
6782  * @return avdtp_cid
6783  * @note: btstack_type 2
6784  */
6785 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_avdtp_cid(const uint8_t * event){
6786     return little_endian_read_16(event, 3);
6787 }
6788 /**
6789  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6790  * @param event packet
6791  * @return remote_seid
6792  * @note: btstack_type 1
6793  */
6794 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_remote_seid(const uint8_t * event){
6795     return event[5];
6796 }
6797 /**
6798  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6799  * @param event packet
6800  * @return media_type
6801  * @note: btstack_type 1
6802  */
6803 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_media_type(const uint8_t * event){
6804     return event[6];
6805 }
6806 /**
6807  * @brief Get field object_type_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6808  * @param event packet
6809  * @return object_type_bitmap
6810  * @note: btstack_type 1
6811  */
6812 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_object_type_bitmap(const uint8_t * event){
6813     return event[7];
6814 }
6815 /**
6816  * @brief Get field sampling_frequency_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6817  * @param event packet
6818  * @return sampling_frequency_bitmap
6819  * @note: btstack_type 2
6820  */
6821 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_sampling_frequency_bitmap(const uint8_t * event){
6822     return little_endian_read_16(event, 8);
6823 }
6824 /**
6825  * @brief Get field channels_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6826  * @param event packet
6827  * @return channels_bitmap
6828  * @note: btstack_type 1
6829  */
6830 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_channels_bitmap(const uint8_t * event){
6831     return event[10];
6832 }
6833 /**
6834  * @brief Get field bit_rate from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6835  * @param event packet
6836  * @return bit_rate
6837  * @note: btstack_type 3
6838  */
6839 static inline uint32_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_bit_rate(const uint8_t * event){
6840     return little_endian_read_24(event, 11);
6841 }
6842 /**
6843  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
6844  * @param event packet
6845  * @return vbr
6846  * @note: btstack_type 1
6847  */
6848 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_capability_get_vbr(const uint8_t * event){
6849     return event[14];
6850 }
6851 
6852 /**
6853  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6854  * @param event packet
6855  * @return avdtp_cid
6856  * @note: btstack_type 2
6857  */
6858 static inline uint16_t avdtp_subevent_signaling_media_codec_atrac_capability_get_avdtp_cid(const uint8_t * event){
6859     return little_endian_read_16(event, 3);
6860 }
6861 /**
6862  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6863  * @param event packet
6864  * @return remote_seid
6865  * @note: btstack_type 1
6866  */
6867 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_remote_seid(const uint8_t * event){
6868     return event[5];
6869 }
6870 /**
6871  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6872  * @param event packet
6873  * @return media_type
6874  * @note: btstack_type 1
6875  */
6876 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_media_type(const uint8_t * event){
6877     return event[6];
6878 }
6879 /**
6880  * @brief Get field version from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6881  * @param event packet
6882  * @return version
6883  * @note: btstack_type 1
6884  */
6885 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_version(const uint8_t * event){
6886     return event[7];
6887 }
6888 /**
6889  * @brief Get field channel_mode_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6890  * @param event packet
6891  * @return channel_mode_bitmap
6892  * @note: btstack_type 1
6893  */
6894 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_channel_mode_bitmap(const uint8_t * event){
6895     return event[8];
6896 }
6897 /**
6898  * @brief Get field sampling_frequency_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6899  * @param event packet
6900  * @return sampling_frequency_bitmap
6901  * @note: btstack_type 1
6902  */
6903 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_sampling_frequency_bitmap(const uint8_t * event){
6904     return event[9];
6905 }
6906 /**
6907  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6908  * @param event packet
6909  * @return vbr
6910  * @note: btstack_type 1
6911  */
6912 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_capability_get_vbr(const uint8_t * event){
6913     return event[10];
6914 }
6915 /**
6916  * @brief Get field bit_rate_index_bitmap from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6917  * @param event packet
6918  * @return bit_rate_index_bitmap
6919  * @note: btstack_type 3
6920  */
6921 static inline uint32_t avdtp_subevent_signaling_media_codec_atrac_capability_get_bit_rate_index_bitmap(const uint8_t * event){
6922     return little_endian_read_24(event, 11);
6923 }
6924 /**
6925  * @brief Get field maximum_sul from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
6926  * @param event packet
6927  * @return maximum_sul
6928  * @note: btstack_type 2
6929  */
6930 static inline uint16_t avdtp_subevent_signaling_media_codec_atrac_capability_get_maximum_sul(const uint8_t * event){
6931     return little_endian_read_16(event, 14);
6932 }
6933 
6934 /**
6935  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6936  * @param event packet
6937  * @return avdtp_cid
6938  * @note: btstack_type 2
6939  */
6940 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_avdtp_cid(const uint8_t * event){
6941     return little_endian_read_16(event, 3);
6942 }
6943 /**
6944  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6945  * @param event packet
6946  * @return remote_seid
6947  * @note: btstack_type 1
6948  */
6949 static inline uint8_t avdtp_subevent_signaling_media_codec_other_capability_get_remote_seid(const uint8_t * event){
6950     return event[5];
6951 }
6952 /**
6953  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6954  * @param event packet
6955  * @return media_type
6956  * @note: btstack_type 1
6957  */
6958 static inline uint8_t avdtp_subevent_signaling_media_codec_other_capability_get_media_type(const uint8_t * event){
6959     return event[6];
6960 }
6961 /**
6962  * @brief Get field media_codec_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6963  * @param event packet
6964  * @return media_codec_type
6965  * @note: btstack_type 2
6966  */
6967 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_type(const uint8_t * event){
6968     return little_endian_read_16(event, 7);
6969 }
6970 /**
6971  * @brief Get field media_codec_information_len from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6972  * @param event packet
6973  * @return media_codec_information_len
6974  * @note: btstack_type L
6975  */
6976 static inline uint16_t avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_information_len(const uint8_t * event){
6977     return little_endian_read_16(event, 9);
6978 }
6979 /**
6980  * @brief Get field media_codec_information from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
6981  * @param event packet
6982  * @return media_codec_information
6983  * @note: btstack_type V
6984  */
6985 static inline const uint8_t * avdtp_subevent_signaling_media_codec_other_capability_get_media_codec_information(const uint8_t * event){
6986     return &event[11];
6987 }
6988 
6989 /**
6990  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY
6991  * @param event packet
6992  * @return avdtp_cid
6993  * @note: btstack_type 2
6994  */
6995 static inline uint16_t avdtp_subevent_signaling_media_transport_capability_get_avdtp_cid(const uint8_t * event){
6996     return little_endian_read_16(event, 3);
6997 }
6998 /**
6999  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_TRANSPORT_CAPABILITY
7000  * @param event packet
7001  * @return remote_seid
7002  * @note: btstack_type 1
7003  */
7004 static inline uint8_t avdtp_subevent_signaling_media_transport_capability_get_remote_seid(const uint8_t * event){
7005     return event[5];
7006 }
7007 
7008 /**
7009  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY
7010  * @param event packet
7011  * @return avdtp_cid
7012  * @note: btstack_type 2
7013  */
7014 static inline uint16_t avdtp_subevent_signaling_reporting_capability_get_avdtp_cid(const uint8_t * event){
7015     return little_endian_read_16(event, 3);
7016 }
7017 /**
7018  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_REPORTING_CAPABILITY
7019  * @param event packet
7020  * @return remote_seid
7021  * @note: btstack_type 1
7022  */
7023 static inline uint8_t avdtp_subevent_signaling_reporting_capability_get_remote_seid(const uint8_t * event){
7024     return event[5];
7025 }
7026 
7027 /**
7028  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
7029  * @param event packet
7030  * @return avdtp_cid
7031  * @note: btstack_type 2
7032  */
7033 static inline uint16_t avdtp_subevent_signaling_recovery_capability_get_avdtp_cid(const uint8_t * event){
7034     return little_endian_read_16(event, 3);
7035 }
7036 /**
7037  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
7038  * @param event packet
7039  * @return remote_seid
7040  * @note: btstack_type 1
7041  */
7042 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_remote_seid(const uint8_t * event){
7043     return event[5];
7044 }
7045 /**
7046  * @brief Get field recovery_type from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
7047  * @param event packet
7048  * @return recovery_type
7049  * @note: btstack_type 1
7050  */
7051 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_recovery_type(const uint8_t * event){
7052     return event[6];
7053 }
7054 /**
7055  * @brief Get field maximum_recovery_window_size from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
7056  * @param event packet
7057  * @return maximum_recovery_window_size
7058  * @note: btstack_type 1
7059  */
7060 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_maximum_recovery_window_size(const uint8_t * event){
7061     return event[7];
7062 }
7063 /**
7064  * @brief Get field maximum_number_media_packets from event AVDTP_SUBEVENT_SIGNALING_RECOVERY_CAPABILITY
7065  * @param event packet
7066  * @return maximum_number_media_packets
7067  * @note: btstack_type 1
7068  */
7069 static inline uint8_t avdtp_subevent_signaling_recovery_capability_get_maximum_number_media_packets(const uint8_t * event){
7070     return event[8];
7071 }
7072 
7073 /**
7074  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
7075  * @param event packet
7076  * @return avdtp_cid
7077  * @note: btstack_type 2
7078  */
7079 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_avdtp_cid(const uint8_t * event){
7080     return little_endian_read_16(event, 3);
7081 }
7082 /**
7083  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
7084  * @param event packet
7085  * @return remote_seid
7086  * @note: btstack_type 1
7087  */
7088 static inline uint8_t avdtp_subevent_signaling_content_protection_capability_get_remote_seid(const uint8_t * event){
7089     return event[5];
7090 }
7091 /**
7092  * @brief Get field cp_type from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
7093  * @param event packet
7094  * @return cp_type
7095  * @note: btstack_type 2
7096  */
7097 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_cp_type(const uint8_t * event){
7098     return little_endian_read_16(event, 6);
7099 }
7100 /**
7101  * @brief Get field cp_type_value_len from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
7102  * @param event packet
7103  * @return cp_type_value_len
7104  * @note: btstack_type L
7105  */
7106 static inline uint16_t avdtp_subevent_signaling_content_protection_capability_get_cp_type_value_len(const uint8_t * event){
7107     return little_endian_read_16(event, 8);
7108 }
7109 /**
7110  * @brief Get field cp_type_value from event AVDTP_SUBEVENT_SIGNALING_CONTENT_PROTECTION_CAPABILITY
7111  * @param event packet
7112  * @return cp_type_value
7113  * @note: btstack_type V
7114  */
7115 static inline const uint8_t * avdtp_subevent_signaling_content_protection_capability_get_cp_type_value(const uint8_t * event){
7116     return &event[10];
7117 }
7118 
7119 /**
7120  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7121  * @param event packet
7122  * @return avdtp_cid
7123  * @note: btstack_type 2
7124  */
7125 static inline uint16_t avdtp_subevent_signaling_multiplexing_capability_get_avdtp_cid(const uint8_t * event){
7126     return little_endian_read_16(event, 3);
7127 }
7128 /**
7129  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7130  * @param event packet
7131  * @return remote_seid
7132  * @note: btstack_type 1
7133  */
7134 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_remote_seid(const uint8_t * event){
7135     return event[5];
7136 }
7137 /**
7138  * @brief Get field fragmentation from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7139  * @param event packet
7140  * @return fragmentation
7141  * @note: btstack_type 1
7142  */
7143 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_fragmentation(const uint8_t * event){
7144     return event[6];
7145 }
7146 /**
7147  * @brief Get field transport_identifiers_num from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7148  * @param event packet
7149  * @return transport_identifiers_num
7150  * @note: btstack_type 1
7151  */
7152 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_identifiers_num(const uint8_t * event){
7153     return event[7];
7154 }
7155 /**
7156  * @brief Get field transport_session_identifier_1 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7157  * @param event packet
7158  * @return transport_session_identifier_1
7159  * @note: btstack_type 1
7160  */
7161 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_1(const uint8_t * event){
7162     return event[8];
7163 }
7164 /**
7165  * @brief Get field transport_session_identifier_2 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7166  * @param event packet
7167  * @return transport_session_identifier_2
7168  * @note: btstack_type 1
7169  */
7170 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_2(const uint8_t * event){
7171     return event[9];
7172 }
7173 /**
7174  * @brief Get field transport_session_identifier_3 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7175  * @param event packet
7176  * @return transport_session_identifier_3
7177  * @note: btstack_type 1
7178  */
7179 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_transport_session_identifier_3(const uint8_t * event){
7180     return event[10];
7181 }
7182 /**
7183  * @brief Get field tcid_1 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7184  * @param event packet
7185  * @return tcid_1
7186  * @note: btstack_type 1
7187  */
7188 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_1(const uint8_t * event){
7189     return event[11];
7190 }
7191 /**
7192  * @brief Get field tcid_2 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7193  * @param event packet
7194  * @return tcid_2
7195  * @note: btstack_type 1
7196  */
7197 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_2(const uint8_t * event){
7198     return event[12];
7199 }
7200 /**
7201  * @brief Get field tcid_3 from event AVDTP_SUBEVENT_SIGNALING_MULTIPLEXING_CAPABILITY
7202  * @param event packet
7203  * @return tcid_3
7204  * @note: btstack_type 1
7205  */
7206 static inline uint8_t avdtp_subevent_signaling_multiplexing_capability_get_tcid_3(const uint8_t * event){
7207     return event[13];
7208 }
7209 
7210 /**
7211  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
7212  * @param event packet
7213  * @return avdtp_cid
7214  * @note: btstack_type 2
7215  */
7216 static inline uint16_t avdtp_subevent_signaling_delay_reporting_capability_get_avdtp_cid(const uint8_t * event){
7217     return little_endian_read_16(event, 3);
7218 }
7219 /**
7220  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
7221  * @param event packet
7222  * @return remote_seid
7223  * @note: btstack_type 1
7224  */
7225 static inline uint8_t avdtp_subevent_signaling_delay_reporting_capability_get_remote_seid(const uint8_t * event){
7226     return event[5];
7227 }
7228 
7229 /**
7230  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
7231  * @param event packet
7232  * @return avdtp_cid
7233  * @note: btstack_type 2
7234  */
7235 static inline uint16_t avdtp_subevent_signaling_header_compression_capability_get_avdtp_cid(const uint8_t * event){
7236     return little_endian_read_16(event, 3);
7237 }
7238 /**
7239  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
7240  * @param event packet
7241  * @return remote_seid
7242  * @note: btstack_type 1
7243  */
7244 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_remote_seid(const uint8_t * event){
7245     return event[5];
7246 }
7247 /**
7248  * @brief Get field back_ch from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
7249  * @param event packet
7250  * @return back_ch
7251  * @note: btstack_type 1
7252  */
7253 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_back_ch(const uint8_t * event){
7254     return event[6];
7255 }
7256 /**
7257  * @brief Get field media from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
7258  * @param event packet
7259  * @return media
7260  * @note: btstack_type 1
7261  */
7262 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_media(const uint8_t * event){
7263     return event[7];
7264 }
7265 /**
7266  * @brief Get field recovery from event AVDTP_SUBEVENT_SIGNALING_HEADER_COMPRESSION_CAPABILITY
7267  * @param event packet
7268  * @return recovery
7269  * @note: btstack_type 1
7270  */
7271 static inline uint8_t avdtp_subevent_signaling_header_compression_capability_get_recovery(const uint8_t * event){
7272     return event[8];
7273 }
7274 
7275 /**
7276  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
7277  * @param event packet
7278  * @return avdtp_cid
7279  * @note: btstack_type 2
7280  */
7281 static inline uint16_t avdtp_subevent_signaling_capabilities_done_get_avdtp_cid(const uint8_t * event){
7282     return little_endian_read_16(event, 3);
7283 }
7284 /**
7285  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
7286  * @param event packet
7287  * @return remote_seid
7288  * @note: btstack_type 1
7289  */
7290 static inline uint8_t avdtp_subevent_signaling_capabilities_done_get_remote_seid(const uint8_t * event){
7291     return event[5];
7292 }
7293 
7294 /**
7295  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7296  * @param event packet
7297  * @return avdtp_cid
7298  * @note: btstack_type 2
7299  */
7300 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_avdtp_cid(const uint8_t * event){
7301     return little_endian_read_16(event, 3);
7302 }
7303 /**
7304  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7305  * @param event packet
7306  * @return local_seid
7307  * @note: btstack_type 1
7308  */
7309 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_local_seid(const uint8_t * event){
7310     return event[5];
7311 }
7312 /**
7313  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7314  * @param event packet
7315  * @return remote_seid
7316  * @note: btstack_type 1
7317  */
7318 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_remote_seid(const uint8_t * event){
7319     return event[6];
7320 }
7321 /**
7322  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7323  * @param event packet
7324  * @return reconfigure
7325  * @note: btstack_type 1
7326  */
7327 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_reconfigure(const uint8_t * event){
7328     return event[7];
7329 }
7330 /**
7331  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7332  * @param event packet
7333  * @return media_type
7334  * @note: btstack_type 1
7335  */
7336 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_media_type(const uint8_t * event){
7337     return event[8];
7338 }
7339 /**
7340  * @brief Get field sampling_frequency from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7341  * @param event packet
7342  * @return sampling_frequency
7343  * @note: btstack_type 2
7344  */
7345 static inline uint16_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_sampling_frequency(const uint8_t * event){
7346     return little_endian_read_16(event, 9);
7347 }
7348 /**
7349  * @brief Get field channel_mode from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7350  * @param event packet
7351  * @return channel_mode
7352  * @note: btstack_type 1
7353  */
7354 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_channel_mode(const uint8_t * event){
7355     return event[11];
7356 }
7357 /**
7358  * @brief Get field num_channels from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7359  * @param event packet
7360  * @return num_channels
7361  * @note: btstack_type 1
7362  */
7363 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_num_channels(const uint8_t * event){
7364     return event[12];
7365 }
7366 /**
7367  * @brief Get field block_length from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7368  * @param event packet
7369  * @return block_length
7370  * @note: btstack_type 1
7371  */
7372 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_block_length(const uint8_t * event){
7373     return event[13];
7374 }
7375 /**
7376  * @brief Get field subbands from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7377  * @param event packet
7378  * @return subbands
7379  * @note: btstack_type 1
7380  */
7381 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_subbands(const uint8_t * event){
7382     return event[14];
7383 }
7384 /**
7385  * @brief Get field allocation_method from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7386  * @param event packet
7387  * @return allocation_method
7388  * @note: btstack_type 1
7389  */
7390 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_allocation_method(const uint8_t * event){
7391     return event[15];
7392 }
7393 /**
7394  * @brief Get field min_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7395  * @param event packet
7396  * @return min_bitpool_value
7397  * @note: btstack_type 1
7398  */
7399 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_min_bitpool_value(const uint8_t * event){
7400     return event[16];
7401 }
7402 /**
7403  * @brief Get field max_bitpool_value from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7404  * @param event packet
7405  * @return max_bitpool_value
7406  * @note: btstack_type 1
7407  */
7408 static inline uint8_t avdtp_subevent_signaling_media_codec_sbc_configuration_get_max_bitpool_value(const uint8_t * event){
7409     return event[17];
7410 }
7411 
7412 /**
7413  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7414  * @param event packet
7415  * @return avdtp_cid
7416  * @note: btstack_type 2
7417  */
7418 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_avdtp_cid(const uint8_t * event){
7419     return little_endian_read_16(event, 3);
7420 }
7421 /**
7422  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7423  * @param event packet
7424  * @return local_seid
7425  * @note: btstack_type 1
7426  */
7427 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_local_seid(const uint8_t * event){
7428     return event[5];
7429 }
7430 /**
7431  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7432  * @param event packet
7433  * @return remote_seid
7434  * @note: btstack_type 1
7435  */
7436 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_remote_seid(const uint8_t * event){
7437     return event[6];
7438 }
7439 /**
7440  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7441  * @param event packet
7442  * @return reconfigure
7443  * @note: btstack_type 1
7444  */
7445 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_reconfigure(const uint8_t * event){
7446     return event[7];
7447 }
7448 /**
7449  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7450  * @param event packet
7451  * @return media_type
7452  * @note: btstack_type 1
7453  */
7454 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_media_type(const uint8_t * event){
7455     return event[8];
7456 }
7457 /**
7458  * @brief Get field layer from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7459  * @param event packet
7460  * @return layer
7461  * @note: btstack_type 1
7462  */
7463 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_layer(const uint8_t * event){
7464     return event[9];
7465 }
7466 /**
7467  * @brief Get field crc from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7468  * @param event packet
7469  * @return crc
7470  * @note: btstack_type 1
7471  */
7472 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_crc(const uint8_t * event){
7473     return event[10];
7474 }
7475 /**
7476  * @brief Get field channel_mode from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7477  * @param event packet
7478  * @return channel_mode
7479  * @note: btstack_type 1
7480  */
7481 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_channel_mode(const uint8_t * event){
7482     return event[11];
7483 }
7484 /**
7485  * @brief Get field num_channels from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7486  * @param event packet
7487  * @return num_channels
7488  * @note: btstack_type 1
7489  */
7490 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_num_channels(const uint8_t * event){
7491     return event[12];
7492 }
7493 /**
7494  * @brief Get field media_payload_format from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7495  * @param event packet
7496  * @return media_payload_format
7497  * @note: btstack_type 1
7498  */
7499 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_media_payload_format(const uint8_t * event){
7500     return event[13];
7501 }
7502 /**
7503  * @brief Get field sampling_frequency from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7504  * @param event packet
7505  * @return sampling_frequency
7506  * @note: btstack_type 2
7507  */
7508 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_sampling_frequency(const uint8_t * event){
7509     return little_endian_read_16(event, 14);
7510 }
7511 /**
7512  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7513  * @param event packet
7514  * @return vbr
7515  * @note: btstack_type 1
7516  */
7517 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_vbr(const uint8_t * event){
7518     return event[16];
7519 }
7520 /**
7521  * @brief Get field bit_rate_index from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
7522  * @param event packet
7523  * @return bit_rate_index
7524  * @note: btstack_type 1
7525  */
7526 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_audio_configuration_get_bit_rate_index(const uint8_t * event){
7527     return event[17];
7528 }
7529 
7530 /**
7531  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7532  * @param event packet
7533  * @return avdtp_cid
7534  * @note: btstack_type 2
7535  */
7536 static inline uint16_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_avdtp_cid(const uint8_t * event){
7537     return little_endian_read_16(event, 3);
7538 }
7539 /**
7540  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7541  * @param event packet
7542  * @return local_seid
7543  * @note: btstack_type 1
7544  */
7545 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_local_seid(const uint8_t * event){
7546     return event[5];
7547 }
7548 /**
7549  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7550  * @param event packet
7551  * @return remote_seid
7552  * @note: btstack_type 1
7553  */
7554 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_remote_seid(const uint8_t * event){
7555     return event[6];
7556 }
7557 /**
7558  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7559  * @param event packet
7560  * @return reconfigure
7561  * @note: btstack_type 1
7562  */
7563 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_reconfigure(const uint8_t * event){
7564     return event[7];
7565 }
7566 /**
7567  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7568  * @param event packet
7569  * @return media_type
7570  * @note: btstack_type 1
7571  */
7572 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_media_type(const uint8_t * event){
7573     return event[8];
7574 }
7575 /**
7576  * @brief Get field object_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7577  * @param event packet
7578  * @return object_type
7579  * @note: btstack_type 1
7580  */
7581 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_object_type(const uint8_t * event){
7582     return event[9];
7583 }
7584 /**
7585  * @brief Get field sampling_frequency from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7586  * @param event packet
7587  * @return sampling_frequency
7588  * @note: btstack_type 3
7589  */
7590 static inline uint32_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_sampling_frequency(const uint8_t * event){
7591     return little_endian_read_24(event, 10);
7592 }
7593 /**
7594  * @brief Get field num_channels from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7595  * @param event packet
7596  * @return num_channels
7597  * @note: btstack_type 1
7598  */
7599 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_num_channels(const uint8_t * event){
7600     return event[13];
7601 }
7602 /**
7603  * @brief Get field bit_rate from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7604  * @param event packet
7605  * @return bit_rate
7606  * @note: btstack_type 3
7607  */
7608 static inline uint32_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_bit_rate(const uint8_t * event){
7609     return little_endian_read_24(event, 14);
7610 }
7611 /**
7612  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
7613  * @param event packet
7614  * @return vbr
7615  * @note: btstack_type 1
7616  */
7617 static inline uint8_t avdtp_subevent_signaling_media_codec_mpeg_aac_configuration_get_vbr(const uint8_t * event){
7618     return event[17];
7619 }
7620 
7621 /**
7622  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7623  * @param event packet
7624  * @return avdtp_cid
7625  * @note: btstack_type 2
7626  */
7627 static inline uint16_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_avdtp_cid(const uint8_t * event){
7628     return little_endian_read_16(event, 3);
7629 }
7630 /**
7631  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7632  * @param event packet
7633  * @return local_seid
7634  * @note: btstack_type 1
7635  */
7636 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_local_seid(const uint8_t * event){
7637     return event[5];
7638 }
7639 /**
7640  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7641  * @param event packet
7642  * @return remote_seid
7643  * @note: btstack_type 1
7644  */
7645 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_remote_seid(const uint8_t * event){
7646     return event[6];
7647 }
7648 /**
7649  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7650  * @param event packet
7651  * @return reconfigure
7652  * @note: btstack_type 1
7653  */
7654 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_reconfigure(const uint8_t * event){
7655     return event[7];
7656 }
7657 /**
7658  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7659  * @param event packet
7660  * @return media_type
7661  * @note: btstack_type 1
7662  */
7663 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_media_type(const uint8_t * event){
7664     return event[8];
7665 }
7666 /**
7667  * @brief Get field version from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7668  * @param event packet
7669  * @return version
7670  * @note: btstack_type 1
7671  */
7672 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_version(const uint8_t * event){
7673     return event[9];
7674 }
7675 /**
7676  * @brief Get field channel_mode from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7677  * @param event packet
7678  * @return channel_mode
7679  * @note: btstack_type 1
7680  */
7681 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_channel_mode(const uint8_t * event){
7682     return event[10];
7683 }
7684 /**
7685  * @brief Get field num_channels from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7686  * @param event packet
7687  * @return num_channels
7688  * @note: btstack_type 1
7689  */
7690 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_num_channels(const uint8_t * event){
7691     return event[11];
7692 }
7693 /**
7694  * @brief Get field sampling_frequency from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7695  * @param event packet
7696  * @return sampling_frequency
7697  * @note: btstack_type 2
7698  */
7699 static inline uint16_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_sampling_frequency(const uint8_t * event){
7700     return little_endian_read_16(event, 12);
7701 }
7702 /**
7703  * @brief Get field vbr from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7704  * @param event packet
7705  * @return vbr
7706  * @note: btstack_type 1
7707  */
7708 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_vbr(const uint8_t * event){
7709     return event[14];
7710 }
7711 /**
7712  * @brief Get field bit_rate_index from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7713  * @param event packet
7714  * @return bit_rate_index
7715  * @note: btstack_type 1
7716  */
7717 static inline uint8_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_bit_rate_index(const uint8_t * event){
7718     return event[15];
7719 }
7720 /**
7721  * @brief Get field maximum_sul from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
7722  * @param event packet
7723  * @return maximum_sul
7724  * @note: btstack_type 2
7725  */
7726 static inline uint16_t avdtp_subevent_signaling_media_codec_atrac_configuration_get_maximum_sul(const uint8_t * event){
7727     return little_endian_read_16(event, 16);
7728 }
7729 
7730 /**
7731  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7732  * @param event packet
7733  * @return avdtp_cid
7734  * @note: btstack_type 2
7735  */
7736 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_avdtp_cid(const uint8_t * event){
7737     return little_endian_read_16(event, 3);
7738 }
7739 /**
7740  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7741  * @param event packet
7742  * @return local_seid
7743  * @note: btstack_type 1
7744  */
7745 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_local_seid(const uint8_t * event){
7746     return event[5];
7747 }
7748 /**
7749  * @brief Get field remote_seid from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7750  * @param event packet
7751  * @return remote_seid
7752  * @note: btstack_type 1
7753  */
7754 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_remote_seid(const uint8_t * event){
7755     return event[6];
7756 }
7757 /**
7758  * @brief Get field reconfigure from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7759  * @param event packet
7760  * @return reconfigure
7761  * @note: btstack_type 1
7762  */
7763 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_reconfigure(const uint8_t * event){
7764     return event[7];
7765 }
7766 /**
7767  * @brief Get field media_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7768  * @param event packet
7769  * @return media_type
7770  * @note: btstack_type 1
7771  */
7772 static inline uint8_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_type(const uint8_t * event){
7773     return event[8];
7774 }
7775 /**
7776  * @brief Get field media_codec_type from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7777  * @param event packet
7778  * @return media_codec_type
7779  * @note: btstack_type 2
7780  */
7781 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_type(const uint8_t * event){
7782     return little_endian_read_16(event, 9);
7783 }
7784 /**
7785  * @brief Get field media_codec_information_len from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7786  * @param event packet
7787  * @return media_codec_information_len
7788  * @note: btstack_type L
7789  */
7790 static inline uint16_t avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_information_len(const uint8_t * event){
7791     return little_endian_read_16(event, 11);
7792 }
7793 /**
7794  * @brief Get field media_codec_information from event AVDTP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
7795  * @param event packet
7796  * @return media_codec_information
7797  * @note: btstack_type V
7798  */
7799 static inline const uint8_t * avdtp_subevent_signaling_media_codec_other_configuration_get_media_codec_information(const uint8_t * event){
7800     return &event[13];
7801 }
7802 
7803 /**
7804  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
7805  * @param event packet
7806  * @return avdtp_cid
7807  * @note: btstack_type 2
7808  */
7809 static inline uint16_t avdtp_subevent_streaming_connection_established_get_avdtp_cid(const uint8_t * event){
7810     return little_endian_read_16(event, 3);
7811 }
7812 /**
7813  * @brief Get field bd_addr from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
7814  * @param event packet
7815  * @param Pointer to storage for bd_addr
7816  * @note: btstack_type B
7817  */
7818 static inline void avdtp_subevent_streaming_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
7819     reverse_bytes(&event[5], bd_addr, 6);
7820 }
7821 /**
7822  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
7823  * @param event packet
7824  * @return local_seid
7825  * @note: btstack_type 1
7826  */
7827 static inline uint8_t avdtp_subevent_streaming_connection_established_get_local_seid(const uint8_t * event){
7828     return event[11];
7829 }
7830 /**
7831  * @brief Get field remote_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
7832  * @param event packet
7833  * @return remote_seid
7834  * @note: btstack_type 1
7835  */
7836 static inline uint8_t avdtp_subevent_streaming_connection_established_get_remote_seid(const uint8_t * event){
7837     return event[12];
7838 }
7839 /**
7840  * @brief Get field status from event AVDTP_SUBEVENT_STREAMING_CONNECTION_ESTABLISHED
7841  * @param event packet
7842  * @return status
7843  * @note: btstack_type 1
7844  */
7845 static inline uint8_t avdtp_subevent_streaming_connection_established_get_status(const uint8_t * event){
7846     return event[13];
7847 }
7848 
7849 /**
7850  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED
7851  * @param event packet
7852  * @return avdtp_cid
7853  * @note: btstack_type 2
7854  */
7855 static inline uint16_t avdtp_subevent_streaming_connection_released_get_avdtp_cid(const uint8_t * event){
7856     return little_endian_read_16(event, 3);
7857 }
7858 /**
7859  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CONNECTION_RELEASED
7860  * @param event packet
7861  * @return local_seid
7862  * @note: btstack_type 1
7863  */
7864 static inline uint8_t avdtp_subevent_streaming_connection_released_get_local_seid(const uint8_t * event){
7865     return event[5];
7866 }
7867 
7868 /**
7869  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
7870  * @param event packet
7871  * @return avdtp_cid
7872  * @note: btstack_type 2
7873  */
7874 static inline uint16_t avdtp_subevent_streaming_can_send_media_packet_now_get_avdtp_cid(const uint8_t * event){
7875     return little_endian_read_16(event, 3);
7876 }
7877 /**
7878  * @brief Get field local_seid from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
7879  * @param event packet
7880  * @return local_seid
7881  * @note: btstack_type 1
7882  */
7883 static inline uint8_t avdtp_subevent_streaming_can_send_media_packet_now_get_local_seid(const uint8_t * event){
7884     return event[5];
7885 }
7886 /**
7887  * @brief Get field sequence_number from event AVDTP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
7888  * @param event packet
7889  * @return sequence_number
7890  * @note: btstack_type 2
7891  */
7892 static inline uint16_t avdtp_subevent_streaming_can_send_media_packet_now_get_sequence_number(const uint8_t * event){
7893     return little_endian_read_16(event, 6);
7894 }
7895 
7896 /**
7897  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_SEP_DICOVERY_DONE
7898  * @param event packet
7899  * @return avdtp_cid
7900  * @note: btstack_type 2
7901  */
7902 static inline uint16_t avdtp_subevent_signaling_sep_dicovery_done_get_avdtp_cid(const uint8_t * event){
7903     return little_endian_read_16(event, 3);
7904 }
7905 
7906 /**
7907  * @brief Get field avdtp_cid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
7908  * @param event packet
7909  * @return avdtp_cid
7910  * @note: btstack_type 2
7911  */
7912 static inline uint16_t avdtp_subevent_signaling_delay_report_get_avdtp_cid(const uint8_t * event){
7913     return little_endian_read_16(event, 3);
7914 }
7915 /**
7916  * @brief Get field local_seid from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
7917  * @param event packet
7918  * @return local_seid
7919  * @note: btstack_type 1
7920  */
7921 static inline uint8_t avdtp_subevent_signaling_delay_report_get_local_seid(const uint8_t * event){
7922     return event[5];
7923 }
7924 /**
7925  * @brief Get field delay_100us from event AVDTP_SUBEVENT_SIGNALING_DELAY_REPORT
7926  * @param event packet
7927  * @return delay_100us
7928  * @note: btstack_type 2
7929  */
7930 static inline uint16_t avdtp_subevent_signaling_delay_report_get_delay_100us(const uint8_t * event){
7931     return little_endian_read_16(event, 6);
7932 }
7933 
7934 /**
7935  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
7936  * @param event packet
7937  * @return a2dp_cid
7938  * @note: btstack_type 2
7939  */
7940 static inline uint16_t a2dp_subevent_streaming_can_send_media_packet_now_get_a2dp_cid(const uint8_t * event){
7941     return little_endian_read_16(event, 3);
7942 }
7943 /**
7944  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAMING_CAN_SEND_MEDIA_PACKET_NOW
7945  * @param event packet
7946  * @return local_seid
7947  * @note: btstack_type 1
7948  */
7949 static inline uint8_t a2dp_subevent_streaming_can_send_media_packet_now_get_local_seid(const uint8_t * event){
7950     return event[5];
7951 }
7952 
7953 /**
7954  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7955  * @param event packet
7956  * @return a2dp_cid
7957  * @note: btstack_type 2
7958  */
7959 static inline uint16_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_a2dp_cid(const uint8_t * event){
7960     return little_endian_read_16(event, 3);
7961 }
7962 /**
7963  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7964  * @param event packet
7965  * @return local_seid
7966  * @note: btstack_type 1
7967  */
7968 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_local_seid(const uint8_t * event){
7969     return event[5];
7970 }
7971 /**
7972  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7973  * @param event packet
7974  * @return remote_seid
7975  * @note: btstack_type 1
7976  */
7977 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_remote_seid(const uint8_t * event){
7978     return event[6];
7979 }
7980 /**
7981  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7982  * @param event packet
7983  * @return reconfigure
7984  * @note: btstack_type 1
7985  */
7986 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_reconfigure(const uint8_t * event){
7987     return event[7];
7988 }
7989 /**
7990  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
7991  * @param event packet
7992  * @return media_type
7993  * @note: btstack_type 1
7994  */
7995 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_media_type(const uint8_t * event){
7996     return event[8];
7997 }
7998 /**
7999  * @brief Get field sampling_frequency from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8000  * @param event packet
8001  * @return sampling_frequency
8002  * @note: btstack_type 2
8003  */
8004 static inline uint16_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_sampling_frequency(const uint8_t * event){
8005     return little_endian_read_16(event, 9);
8006 }
8007 /**
8008  * @brief Get field channel_mode from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8009  * @param event packet
8010  * @return channel_mode
8011  * @note: btstack_type 1
8012  */
8013 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_channel_mode(const uint8_t * event){
8014     return event[11];
8015 }
8016 /**
8017  * @brief Get field num_channels from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8018  * @param event packet
8019  * @return num_channels
8020  * @note: btstack_type 1
8021  */
8022 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_num_channels(const uint8_t * event){
8023     return event[12];
8024 }
8025 /**
8026  * @brief Get field block_length from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8027  * @param event packet
8028  * @return block_length
8029  * @note: btstack_type 1
8030  */
8031 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_block_length(const uint8_t * event){
8032     return event[13];
8033 }
8034 /**
8035  * @brief Get field subbands from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8036  * @param event packet
8037  * @return subbands
8038  * @note: btstack_type 1
8039  */
8040 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_subbands(const uint8_t * event){
8041     return event[14];
8042 }
8043 /**
8044  * @brief Get field allocation_method from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8045  * @param event packet
8046  * @return allocation_method
8047  * @note: btstack_type 1
8048  */
8049 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_allocation_method(const uint8_t * event){
8050     return event[15];
8051 }
8052 /**
8053  * @brief Get field min_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8054  * @param event packet
8055  * @return min_bitpool_value
8056  * @note: btstack_type 1
8057  */
8058 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_min_bitpool_value(const uint8_t * event){
8059     return event[16];
8060 }
8061 /**
8062  * @brief Get field max_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CONFIGURATION
8063  * @param event packet
8064  * @return max_bitpool_value
8065  * @note: btstack_type 1
8066  */
8067 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_configuration_get_max_bitpool_value(const uint8_t * event){
8068     return event[17];
8069 }
8070 
8071 /**
8072  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8073  * @param event packet
8074  * @return a2dp_cid
8075  * @note: btstack_type 2
8076  */
8077 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_a2dp_cid(const uint8_t * event){
8078     return little_endian_read_16(event, 3);
8079 }
8080 /**
8081  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8082  * @param event packet
8083  * @return local_seid
8084  * @note: btstack_type 1
8085  */
8086 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_local_seid(const uint8_t * event){
8087     return event[5];
8088 }
8089 /**
8090  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8091  * @param event packet
8092  * @return remote_seid
8093  * @note: btstack_type 1
8094  */
8095 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_remote_seid(const uint8_t * event){
8096     return event[6];
8097 }
8098 /**
8099  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8100  * @param event packet
8101  * @return reconfigure
8102  * @note: btstack_type 1
8103  */
8104 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_reconfigure(const uint8_t * event){
8105     return event[7];
8106 }
8107 /**
8108  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8109  * @param event packet
8110  * @return media_type
8111  * @note: btstack_type 1
8112  */
8113 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_media_type(const uint8_t * event){
8114     return event[8];
8115 }
8116 /**
8117  * @brief Get field layer from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8118  * @param event packet
8119  * @return layer
8120  * @note: btstack_type 1
8121  */
8122 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_layer(const uint8_t * event){
8123     return event[9];
8124 }
8125 /**
8126  * @brief Get field crc from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8127  * @param event packet
8128  * @return crc
8129  * @note: btstack_type 1
8130  */
8131 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_crc(const uint8_t * event){
8132     return event[10];
8133 }
8134 /**
8135  * @brief Get field channel_mode from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8136  * @param event packet
8137  * @return channel_mode
8138  * @note: btstack_type 1
8139  */
8140 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_channel_mode(const uint8_t * event){
8141     return event[11];
8142 }
8143 /**
8144  * @brief Get field num_channels from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8145  * @param event packet
8146  * @return num_channels
8147  * @note: btstack_type 1
8148  */
8149 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_num_channels(const uint8_t * event){
8150     return event[12];
8151 }
8152 /**
8153  * @brief Get field media_payload_format from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8154  * @param event packet
8155  * @return media_payload_format
8156  * @note: btstack_type 1
8157  */
8158 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_media_payload_format(const uint8_t * event){
8159     return event[13];
8160 }
8161 /**
8162  * @brief Get field sampling_frequency from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8163  * @param event packet
8164  * @return sampling_frequency
8165  * @note: btstack_type 2
8166  */
8167 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_sampling_frequency(const uint8_t * event){
8168     return little_endian_read_16(event, 14);
8169 }
8170 /**
8171  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8172  * @param event packet
8173  * @return vbr
8174  * @note: btstack_type 1
8175  */
8176 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_vbr(const uint8_t * event){
8177     return event[16];
8178 }
8179 /**
8180  * @brief Get field bit_rate_index from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CONFIGURATION
8181  * @param event packet
8182  * @return bit_rate_index
8183  * @note: btstack_type 1
8184  */
8185 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_configuration_get_bit_rate_index(const uint8_t * event){
8186     return event[17];
8187 }
8188 
8189 /**
8190  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8191  * @param event packet
8192  * @return a2dp_cid
8193  * @note: btstack_type 2
8194  */
8195 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_a2dp_cid(const uint8_t * event){
8196     return little_endian_read_16(event, 3);
8197 }
8198 /**
8199  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8200  * @param event packet
8201  * @return local_seid
8202  * @note: btstack_type 1
8203  */
8204 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_local_seid(const uint8_t * event){
8205     return event[5];
8206 }
8207 /**
8208  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8209  * @param event packet
8210  * @return remote_seid
8211  * @note: btstack_type 1
8212  */
8213 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_remote_seid(const uint8_t * event){
8214     return event[6];
8215 }
8216 /**
8217  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8218  * @param event packet
8219  * @return reconfigure
8220  * @note: btstack_type 1
8221  */
8222 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_reconfigure(const uint8_t * event){
8223     return event[7];
8224 }
8225 /**
8226  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8227  * @param event packet
8228  * @return media_type
8229  * @note: btstack_type 1
8230  */
8231 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_media_type(const uint8_t * event){
8232     return event[8];
8233 }
8234 /**
8235  * @brief Get field object_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8236  * @param event packet
8237  * @return object_type
8238  * @note: btstack_type 1
8239  */
8240 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_object_type(const uint8_t * event){
8241     return event[9];
8242 }
8243 /**
8244  * @brief Get field sampling_frequency from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8245  * @param event packet
8246  * @return sampling_frequency
8247  * @note: btstack_type 3
8248  */
8249 static inline uint32_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_sampling_frequency(const uint8_t * event){
8250     return little_endian_read_24(event, 10);
8251 }
8252 /**
8253  * @brief Get field num_channels from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8254  * @param event packet
8255  * @return num_channels
8256  * @note: btstack_type 1
8257  */
8258 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_num_channels(const uint8_t * event){
8259     return event[13];
8260 }
8261 /**
8262  * @brief Get field bit_rate from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8263  * @param event packet
8264  * @return bit_rate
8265  * @note: btstack_type 3
8266  */
8267 static inline uint32_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_bit_rate(const uint8_t * event){
8268     return little_endian_read_24(event, 14);
8269 }
8270 /**
8271  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CONFIGURATION
8272  * @param event packet
8273  * @return vbr
8274  * @note: btstack_type 1
8275  */
8276 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_configuration_get_vbr(const uint8_t * event){
8277     return event[17];
8278 }
8279 
8280 /**
8281  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8282  * @param event packet
8283  * @return a2dp_cid
8284  * @note: btstack_type 2
8285  */
8286 static inline uint16_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_a2dp_cid(const uint8_t * event){
8287     return little_endian_read_16(event, 3);
8288 }
8289 /**
8290  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8291  * @param event packet
8292  * @return local_seid
8293  * @note: btstack_type 1
8294  */
8295 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_local_seid(const uint8_t * event){
8296     return event[5];
8297 }
8298 /**
8299  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8300  * @param event packet
8301  * @return remote_seid
8302  * @note: btstack_type 1
8303  */
8304 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_remote_seid(const uint8_t * event){
8305     return event[6];
8306 }
8307 /**
8308  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8309  * @param event packet
8310  * @return reconfigure
8311  * @note: btstack_type 1
8312  */
8313 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_reconfigure(const uint8_t * event){
8314     return event[7];
8315 }
8316 /**
8317  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8318  * @param event packet
8319  * @return media_type
8320  * @note: btstack_type 1
8321  */
8322 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_media_type(const uint8_t * event){
8323     return event[8];
8324 }
8325 /**
8326  * @brief Get field version from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8327  * @param event packet
8328  * @return version
8329  * @note: btstack_type 1
8330  */
8331 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_version(const uint8_t * event){
8332     return event[9];
8333 }
8334 /**
8335  * @brief Get field channel_mode from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8336  * @param event packet
8337  * @return channel_mode
8338  * @note: btstack_type 1
8339  */
8340 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_channel_mode(const uint8_t * event){
8341     return event[10];
8342 }
8343 /**
8344  * @brief Get field num_channels from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8345  * @param event packet
8346  * @return num_channels
8347  * @note: btstack_type 1
8348  */
8349 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_num_channels(const uint8_t * event){
8350     return event[11];
8351 }
8352 /**
8353  * @brief Get field sampling_frequency from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8354  * @param event packet
8355  * @return sampling_frequency
8356  * @note: btstack_type 2
8357  */
8358 static inline uint16_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_sampling_frequency(const uint8_t * event){
8359     return little_endian_read_16(event, 12);
8360 }
8361 /**
8362  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8363  * @param event packet
8364  * @return vbr
8365  * @note: btstack_type 1
8366  */
8367 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_vbr(const uint8_t * event){
8368     return event[14];
8369 }
8370 /**
8371  * @brief Get field bit_rate_index from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8372  * @param event packet
8373  * @return bit_rate_index
8374  * @note: btstack_type 1
8375  */
8376 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_bit_rate_index(const uint8_t * event){
8377     return event[15];
8378 }
8379 /**
8380  * @brief Get field maximum_sul from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CONFIGURATION
8381  * @param event packet
8382  * @return maximum_sul
8383  * @note: btstack_type 2
8384  */
8385 static inline uint16_t a2dp_subevent_signaling_media_codec_atrac_configuration_get_maximum_sul(const uint8_t * event){
8386     return little_endian_read_16(event, 16);
8387 }
8388 
8389 /**
8390  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8391  * @param event packet
8392  * @return a2dp_cid
8393  * @note: btstack_type 2
8394  */
8395 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_a2dp_cid(const uint8_t * event){
8396     return little_endian_read_16(event, 3);
8397 }
8398 /**
8399  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8400  * @param event packet
8401  * @return local_seid
8402  * @note: btstack_type 1
8403  */
8404 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_local_seid(const uint8_t * event){
8405     return event[5];
8406 }
8407 /**
8408  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8409  * @param event packet
8410  * @return remote_seid
8411  * @note: btstack_type 1
8412  */
8413 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_remote_seid(const uint8_t * event){
8414     return event[6];
8415 }
8416 /**
8417  * @brief Get field reconfigure from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8418  * @param event packet
8419  * @return reconfigure
8420  * @note: btstack_type 1
8421  */
8422 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_reconfigure(const uint8_t * event){
8423     return event[7];
8424 }
8425 /**
8426  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8427  * @param event packet
8428  * @return media_type
8429  * @note: btstack_type 1
8430  */
8431 static inline uint8_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_type(const uint8_t * event){
8432     return event[8];
8433 }
8434 /**
8435  * @brief Get field media_codec_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8436  * @param event packet
8437  * @return media_codec_type
8438  * @note: btstack_type 2
8439  */
8440 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_type(const uint8_t * event){
8441     return little_endian_read_16(event, 9);
8442 }
8443 /**
8444  * @brief Get field media_codec_information_len from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8445  * @param event packet
8446  * @return media_codec_information_len
8447  * @note: btstack_type L
8448  */
8449 static inline uint16_t a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_information_len(const uint8_t * event){
8450     return little_endian_read_16(event, 11);
8451 }
8452 /**
8453  * @brief Get field media_codec_information from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CONFIGURATION
8454  * @param event packet
8455  * @return media_codec_information
8456  * @note: btstack_type V
8457  */
8458 static inline const uint8_t * a2dp_subevent_signaling_media_codec_other_configuration_get_media_codec_information(const uint8_t * event){
8459     return &event[13];
8460 }
8461 
8462 /**
8463  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
8464  * @param event packet
8465  * @return a2dp_cid
8466  * @note: btstack_type 2
8467  */
8468 static inline uint16_t a2dp_subevent_stream_established_get_a2dp_cid(const uint8_t * event){
8469     return little_endian_read_16(event, 3);
8470 }
8471 /**
8472  * @brief Get field bd_addr from event A2DP_SUBEVENT_STREAM_ESTABLISHED
8473  * @param event packet
8474  * @param Pointer to storage for bd_addr
8475  * @note: btstack_type B
8476  */
8477 static inline void a2dp_subevent_stream_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
8478     reverse_bytes(&event[5], bd_addr, 6);
8479 }
8480 /**
8481  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
8482  * @param event packet
8483  * @return local_seid
8484  * @note: btstack_type 1
8485  */
8486 static inline uint8_t a2dp_subevent_stream_established_get_local_seid(const uint8_t * event){
8487     return event[11];
8488 }
8489 /**
8490  * @brief Get field remote_seid from event A2DP_SUBEVENT_STREAM_ESTABLISHED
8491  * @param event packet
8492  * @return remote_seid
8493  * @note: btstack_type 1
8494  */
8495 static inline uint8_t a2dp_subevent_stream_established_get_remote_seid(const uint8_t * event){
8496     return event[12];
8497 }
8498 /**
8499  * @brief Get field status from event A2DP_SUBEVENT_STREAM_ESTABLISHED
8500  * @param event packet
8501  * @return status
8502  * @note: btstack_type 1
8503  */
8504 static inline uint8_t a2dp_subevent_stream_established_get_status(const uint8_t * event){
8505     return event[13];
8506 }
8507 
8508 /**
8509  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_START_STREAM_REQUESTED
8510  * @param event packet
8511  * @return a2dp_cid
8512  * @note: btstack_type 2
8513  */
8514 static inline uint16_t a2dp_subevent_start_stream_requested_get_a2dp_cid(const uint8_t * event){
8515     return little_endian_read_16(event, 3);
8516 }
8517 /**
8518  * @brief Get field local_seid from event A2DP_SUBEVENT_START_STREAM_REQUESTED
8519  * @param event packet
8520  * @return local_seid
8521  * @note: btstack_type 1
8522  */
8523 static inline uint8_t a2dp_subevent_start_stream_requested_get_local_seid(const uint8_t * event){
8524     return event[5];
8525 }
8526 
8527 /**
8528  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_STARTED
8529  * @param event packet
8530  * @return a2dp_cid
8531  * @note: btstack_type 2
8532  */
8533 static inline uint16_t a2dp_subevent_stream_started_get_a2dp_cid(const uint8_t * event){
8534     return little_endian_read_16(event, 3);
8535 }
8536 /**
8537  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_STARTED
8538  * @param event packet
8539  * @return local_seid
8540  * @note: btstack_type 1
8541  */
8542 static inline uint8_t a2dp_subevent_stream_started_get_local_seid(const uint8_t * event){
8543     return event[5];
8544 }
8545 
8546 /**
8547  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_SUSPENDED
8548  * @param event packet
8549  * @return a2dp_cid
8550  * @note: btstack_type 2
8551  */
8552 static inline uint16_t a2dp_subevent_stream_suspended_get_a2dp_cid(const uint8_t * event){
8553     return little_endian_read_16(event, 3);
8554 }
8555 /**
8556  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_SUSPENDED
8557  * @param event packet
8558  * @return local_seid
8559  * @note: btstack_type 1
8560  */
8561 static inline uint8_t a2dp_subevent_stream_suspended_get_local_seid(const uint8_t * event){
8562     return event[5];
8563 }
8564 
8565 /**
8566  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_STOPPED
8567  * @param event packet
8568  * @return a2dp_cid
8569  * @note: btstack_type 2
8570  */
8571 static inline uint16_t a2dp_subevent_stream_stopped_get_a2dp_cid(const uint8_t * event){
8572     return little_endian_read_16(event, 3);
8573 }
8574 /**
8575  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_STOPPED
8576  * @param event packet
8577  * @return local_seid
8578  * @note: btstack_type 1
8579  */
8580 static inline uint8_t a2dp_subevent_stream_stopped_get_local_seid(const uint8_t * event){
8581     return event[5];
8582 }
8583 
8584 /**
8585  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_RELEASED
8586  * @param event packet
8587  * @return a2dp_cid
8588  * @note: btstack_type 2
8589  */
8590 static inline uint16_t a2dp_subevent_stream_released_get_a2dp_cid(const uint8_t * event){
8591     return little_endian_read_16(event, 3);
8592 }
8593 /**
8594  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_RELEASED
8595  * @param event packet
8596  * @return local_seid
8597  * @note: btstack_type 1
8598  */
8599 static inline uint8_t a2dp_subevent_stream_released_get_local_seid(const uint8_t * event){
8600     return event[5];
8601 }
8602 
8603 /**
8604  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_COMMAND_ACCEPTED
8605  * @param event packet
8606  * @return a2dp_cid
8607  * @note: btstack_type 2
8608  */
8609 static inline uint16_t a2dp_subevent_command_accepted_get_a2dp_cid(const uint8_t * event){
8610     return little_endian_read_16(event, 3);
8611 }
8612 /**
8613  * @brief Get field local_seid from event A2DP_SUBEVENT_COMMAND_ACCEPTED
8614  * @param event packet
8615  * @return local_seid
8616  * @note: btstack_type 1
8617  */
8618 static inline uint8_t a2dp_subevent_command_accepted_get_local_seid(const uint8_t * event){
8619     return event[5];
8620 }
8621 /**
8622  * @brief Get field signal_identifier from event A2DP_SUBEVENT_COMMAND_ACCEPTED
8623  * @param event packet
8624  * @return signal_identifier
8625  * @note: btstack_type 1
8626  */
8627 static inline uint8_t a2dp_subevent_command_accepted_get_signal_identifier(const uint8_t * event){
8628     return event[6];
8629 }
8630 
8631 /**
8632  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_COMMAND_REJECTED
8633  * @param event packet
8634  * @return a2dp_cid
8635  * @note: btstack_type 2
8636  */
8637 static inline uint16_t a2dp_subevent_command_rejected_get_a2dp_cid(const uint8_t * event){
8638     return little_endian_read_16(event, 3);
8639 }
8640 /**
8641  * @brief Get field local_seid from event A2DP_SUBEVENT_COMMAND_REJECTED
8642  * @param event packet
8643  * @return local_seid
8644  * @note: btstack_type 1
8645  */
8646 static inline uint8_t a2dp_subevent_command_rejected_get_local_seid(const uint8_t * event){
8647     return event[5];
8648 }
8649 /**
8650  * @brief Get field is_initiator from event A2DP_SUBEVENT_COMMAND_REJECTED
8651  * @param event packet
8652  * @return is_initiator
8653  * @note: btstack_type 1
8654  */
8655 static inline uint8_t a2dp_subevent_command_rejected_get_is_initiator(const uint8_t * event){
8656     return event[6];
8657 }
8658 /**
8659  * @brief Get field signal_identifier from event A2DP_SUBEVENT_COMMAND_REJECTED
8660  * @param event packet
8661  * @return signal_identifier
8662  * @note: btstack_type 1
8663  */
8664 static inline uint8_t a2dp_subevent_command_rejected_get_signal_identifier(const uint8_t * event){
8665     return event[7];
8666 }
8667 
8668 /**
8669  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
8670  * @param event packet
8671  * @return a2dp_cid
8672  * @note: btstack_type 2
8673  */
8674 static inline uint16_t a2dp_subevent_signaling_connection_established_get_a2dp_cid(const uint8_t * event){
8675     return little_endian_read_16(event, 3);
8676 }
8677 /**
8678  * @brief Get field bd_addr from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
8679  * @param event packet
8680  * @param Pointer to storage for bd_addr
8681  * @note: btstack_type B
8682  */
8683 static inline void a2dp_subevent_signaling_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
8684     reverse_bytes(&event[5], bd_addr, 6);
8685 }
8686 /**
8687  * @brief Get field con_handle from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
8688  * @param event packet
8689  * @return con_handle
8690  * @note: btstack_type 2
8691  */
8692 static inline uint16_t a2dp_subevent_signaling_connection_established_get_con_handle(const uint8_t * event){
8693     return little_endian_read_16(event, 11);
8694 }
8695 /**
8696  * @brief Get field status from event A2DP_SUBEVENT_SIGNALING_CONNECTION_ESTABLISHED
8697  * @param event packet
8698  * @return status
8699  * @note: btstack_type 1
8700  */
8701 static inline uint8_t a2dp_subevent_signaling_connection_established_get_status(const uint8_t * event){
8702     return event[13];
8703 }
8704 
8705 /**
8706  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CONNECTION_RELEASED
8707  * @param event packet
8708  * @return a2dp_cid
8709  * @note: btstack_type 2
8710  */
8711 static inline uint16_t a2dp_subevent_signaling_connection_released_get_a2dp_cid(const uint8_t * event){
8712     return little_endian_read_16(event, 3);
8713 }
8714 
8715 /**
8716  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_STREAM_RECONFIGURED
8717  * @param event packet
8718  * @return a2dp_cid
8719  * @note: btstack_type 2
8720  */
8721 static inline uint16_t a2dp_subevent_stream_reconfigured_get_a2dp_cid(const uint8_t * event){
8722     return little_endian_read_16(event, 3);
8723 }
8724 /**
8725  * @brief Get field local_seid from event A2DP_SUBEVENT_STREAM_RECONFIGURED
8726  * @param event packet
8727  * @return local_seid
8728  * @note: btstack_type 1
8729  */
8730 static inline uint8_t a2dp_subevent_stream_reconfigured_get_local_seid(const uint8_t * event){
8731     return event[5];
8732 }
8733 /**
8734  * @brief Get field status from event A2DP_SUBEVENT_STREAM_RECONFIGURED
8735  * @param event packet
8736  * @return status
8737  * @note: btstack_type 1
8738  */
8739 static inline uint8_t a2dp_subevent_stream_reconfigured_get_status(const uint8_t * event){
8740     return event[6];
8741 }
8742 
8743 /**
8744  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8745  * @param event packet
8746  * @return a2dp_cid
8747  * @note: btstack_type 2
8748  */
8749 static inline uint16_t a2dp_subevent_signaling_media_codec_sbc_capability_get_a2dp_cid(const uint8_t * event){
8750     return little_endian_read_16(event, 3);
8751 }
8752 /**
8753  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8754  * @param event packet
8755  * @return remote_seid
8756  * @note: btstack_type 1
8757  */
8758 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_remote_seid(const uint8_t * event){
8759     return event[5];
8760 }
8761 /**
8762  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8763  * @param event packet
8764  * @return media_type
8765  * @note: btstack_type 1
8766  */
8767 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_media_type(const uint8_t * event){
8768     return event[6];
8769 }
8770 /**
8771  * @brief Get field sampling_frequency_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8772  * @param event packet
8773  * @return sampling_frequency_bitmap
8774  * @note: btstack_type 1
8775  */
8776 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_sampling_frequency_bitmap(const uint8_t * event){
8777     return event[7];
8778 }
8779 /**
8780  * @brief Get field channel_mode_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8781  * @param event packet
8782  * @return channel_mode_bitmap
8783  * @note: btstack_type 1
8784  */
8785 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_channel_mode_bitmap(const uint8_t * event){
8786     return event[8];
8787 }
8788 /**
8789  * @brief Get field block_length_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8790  * @param event packet
8791  * @return block_length_bitmap
8792  * @note: btstack_type 1
8793  */
8794 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_block_length_bitmap(const uint8_t * event){
8795     return event[9];
8796 }
8797 /**
8798  * @brief Get field subbands_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8799  * @param event packet
8800  * @return subbands_bitmap
8801  * @note: btstack_type 1
8802  */
8803 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_subbands_bitmap(const uint8_t * event){
8804     return event[10];
8805 }
8806 /**
8807  * @brief Get field allocation_method_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8808  * @param event packet
8809  * @return allocation_method_bitmap
8810  * @note: btstack_type 1
8811  */
8812 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_allocation_method_bitmap(const uint8_t * event){
8813     return event[11];
8814 }
8815 /**
8816  * @brief Get field min_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8817  * @param event packet
8818  * @return min_bitpool_value
8819  * @note: btstack_type 1
8820  */
8821 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_min_bitpool_value(const uint8_t * event){
8822     return event[12];
8823 }
8824 /**
8825  * @brief Get field max_bitpool_value from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_SBC_CAPABILITY
8826  * @param event packet
8827  * @return max_bitpool_value
8828  * @note: btstack_type 1
8829  */
8830 static inline uint8_t a2dp_subevent_signaling_media_codec_sbc_capability_get_max_bitpool_value(const uint8_t * event){
8831     return event[13];
8832 }
8833 
8834 /**
8835  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8836  * @param event packet
8837  * @return a2dp_cid
8838  * @note: btstack_type 2
8839  */
8840 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_a2dp_cid(const uint8_t * event){
8841     return little_endian_read_16(event, 3);
8842 }
8843 /**
8844  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8845  * @param event packet
8846  * @return remote_seid
8847  * @note: btstack_type 1
8848  */
8849 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_remote_seid(const uint8_t * event){
8850     return event[5];
8851 }
8852 /**
8853  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8854  * @param event packet
8855  * @return media_type
8856  * @note: btstack_type 1
8857  */
8858 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_media_type(const uint8_t * event){
8859     return event[6];
8860 }
8861 /**
8862  * @brief Get field layer_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8863  * @param event packet
8864  * @return layer_bitmap
8865  * @note: btstack_type 1
8866  */
8867 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_layer_bitmap(const uint8_t * event){
8868     return event[7];
8869 }
8870 /**
8871  * @brief Get field crc from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8872  * @param event packet
8873  * @return crc
8874  * @note: btstack_type 1
8875  */
8876 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_crc(const uint8_t * event){
8877     return event[8];
8878 }
8879 /**
8880  * @brief Get field channel_mode_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8881  * @param event packet
8882  * @return channel_mode_bitmap
8883  * @note: btstack_type 1
8884  */
8885 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_channel_mode_bitmap(const uint8_t * event){
8886     return event[9];
8887 }
8888 /**
8889  * @brief Get field media_payload_format from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8890  * @param event packet
8891  * @return media_payload_format
8892  * @note: btstack_type 1
8893  */
8894 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_media_payload_format(const uint8_t * event){
8895     return event[10];
8896 }
8897 /**
8898  * @brief Get field sampling_frequency_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8899  * @param event packet
8900  * @return sampling_frequency_bitmap
8901  * @note: btstack_type 1
8902  */
8903 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_sampling_frequency_bitmap(const uint8_t * event){
8904     return event[11];
8905 }
8906 /**
8907  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8908  * @param event packet
8909  * @return vbr
8910  * @note: btstack_type 1
8911  */
8912 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_vbr(const uint8_t * event){
8913     return event[12];
8914 }
8915 /**
8916  * @brief Get field bit_rate_index_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AUDIO_CAPABILITY
8917  * @param event packet
8918  * @return bit_rate_index_bitmap
8919  * @note: btstack_type 2
8920  */
8921 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_audio_capability_get_bit_rate_index_bitmap(const uint8_t * event){
8922     return little_endian_read_16(event, 13);
8923 }
8924 
8925 /**
8926  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8927  * @param event packet
8928  * @return a2dp_cid
8929  * @note: btstack_type 2
8930  */
8931 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_a2dp_cid(const uint8_t * event){
8932     return little_endian_read_16(event, 3);
8933 }
8934 /**
8935  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8936  * @param event packet
8937  * @return remote_seid
8938  * @note: btstack_type 1
8939  */
8940 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_remote_seid(const uint8_t * event){
8941     return event[5];
8942 }
8943 /**
8944  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8945  * @param event packet
8946  * @return media_type
8947  * @note: btstack_type 1
8948  */
8949 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_media_type(const uint8_t * event){
8950     return event[6];
8951 }
8952 /**
8953  * @brief Get field object_type_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8954  * @param event packet
8955  * @return object_type_bitmap
8956  * @note: btstack_type 1
8957  */
8958 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_object_type_bitmap(const uint8_t * event){
8959     return event[7];
8960 }
8961 /**
8962  * @brief Get field sampling_frequency_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8963  * @param event packet
8964  * @return sampling_frequency_bitmap
8965  * @note: btstack_type 2
8966  */
8967 static inline uint16_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_sampling_frequency_bitmap(const uint8_t * event){
8968     return little_endian_read_16(event, 8);
8969 }
8970 /**
8971  * @brief Get field channels_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8972  * @param event packet
8973  * @return channels_bitmap
8974  * @note: btstack_type 1
8975  */
8976 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_channels_bitmap(const uint8_t * event){
8977     return event[10];
8978 }
8979 /**
8980  * @brief Get field bit_rate from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8981  * @param event packet
8982  * @return bit_rate
8983  * @note: btstack_type 3
8984  */
8985 static inline uint32_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_bit_rate(const uint8_t * event){
8986     return little_endian_read_24(event, 11);
8987 }
8988 /**
8989  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_MPEG_AAC_CAPABILITY
8990  * @param event packet
8991  * @return vbr
8992  * @note: btstack_type 1
8993  */
8994 static inline uint8_t a2dp_subevent_signaling_media_codec_mpeg_aac_capability_get_vbr(const uint8_t * event){
8995     return event[14];
8996 }
8997 
8998 /**
8999  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9000  * @param event packet
9001  * @return a2dp_cid
9002  * @note: btstack_type 2
9003  */
9004 static inline uint16_t a2dp_subevent_signaling_media_codec_atrac_capability_get_a2dp_cid(const uint8_t * event){
9005     return little_endian_read_16(event, 3);
9006 }
9007 /**
9008  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9009  * @param event packet
9010  * @return remote_seid
9011  * @note: btstack_type 1
9012  */
9013 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_remote_seid(const uint8_t * event){
9014     return event[5];
9015 }
9016 /**
9017  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9018  * @param event packet
9019  * @return media_type
9020  * @note: btstack_type 1
9021  */
9022 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_media_type(const uint8_t * event){
9023     return event[6];
9024 }
9025 /**
9026  * @brief Get field version from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9027  * @param event packet
9028  * @return version
9029  * @note: btstack_type 1
9030  */
9031 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_version(const uint8_t * event){
9032     return event[7];
9033 }
9034 /**
9035  * @brief Get field channel_mode_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9036  * @param event packet
9037  * @return channel_mode_bitmap
9038  * @note: btstack_type 1
9039  */
9040 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_channel_mode_bitmap(const uint8_t * event){
9041     return event[8];
9042 }
9043 /**
9044  * @brief Get field sampling_frequency_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9045  * @param event packet
9046  * @return sampling_frequency_bitmap
9047  * @note: btstack_type 1
9048  */
9049 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_sampling_frequency_bitmap(const uint8_t * event){
9050     return event[9];
9051 }
9052 /**
9053  * @brief Get field vbr from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9054  * @param event packet
9055  * @return vbr
9056  * @note: btstack_type 1
9057  */
9058 static inline uint8_t a2dp_subevent_signaling_media_codec_atrac_capability_get_vbr(const uint8_t * event){
9059     return event[10];
9060 }
9061 /**
9062  * @brief Get field bit_rate_index_bitmap from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9063  * @param event packet
9064  * @return bit_rate_index_bitmap
9065  * @note: btstack_type 3
9066  */
9067 static inline uint32_t a2dp_subevent_signaling_media_codec_atrac_capability_get_bit_rate_index_bitmap(const uint8_t * event){
9068     return little_endian_read_24(event, 11);
9069 }
9070 /**
9071  * @brief Get field maximum_sul from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_ATRAC_CAPABILITY
9072  * @param event packet
9073  * @return maximum_sul
9074  * @note: btstack_type 2
9075  */
9076 static inline uint16_t a2dp_subevent_signaling_media_codec_atrac_capability_get_maximum_sul(const uint8_t * event){
9077     return little_endian_read_16(event, 14);
9078 }
9079 
9080 /**
9081  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9082  * @param event packet
9083  * @return a2dp_cid
9084  * @note: btstack_type 2
9085  */
9086 static inline uint16_t a2dp_subevent_signaling_media_codec_other_capability_get_a2dp_cid(const uint8_t * event){
9087     return little_endian_read_16(event, 3);
9088 }
9089 /**
9090  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9091  * @param event packet
9092  * @return remote_seid
9093  * @note: btstack_type 1
9094  */
9095 static inline uint8_t a2dp_subevent_signaling_media_codec_other_capability_get_remote_seid(const uint8_t * event){
9096     return event[5];
9097 }
9098 /**
9099  * @brief Get field media_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9100  * @param event packet
9101  * @return media_type
9102  * @note: btstack_type 1
9103  */
9104 static inline uint8_t a2dp_subevent_signaling_media_codec_other_capability_get_media_type(const uint8_t * event){
9105     return event[6];
9106 }
9107 /**
9108  * @brief Get field media_codec_type from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9109  * @param event packet
9110  * @return media_codec_type
9111  * @note: btstack_type 2
9112  */
9113 static inline uint16_t a2dp_subevent_signaling_media_codec_other_capability_get_media_codec_type(const uint8_t * event){
9114     return little_endian_read_16(event, 7);
9115 }
9116 /**
9117  * @brief Get field media_codec_information_len from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9118  * @param event packet
9119  * @return media_codec_information_len
9120  * @note: btstack_type L
9121  */
9122 static inline uint16_t a2dp_subevent_signaling_media_codec_other_capability_get_media_codec_information_len(const uint8_t * event){
9123     return little_endian_read_16(event, 9);
9124 }
9125 /**
9126  * @brief Get field media_codec_information from event A2DP_SUBEVENT_SIGNALING_MEDIA_CODEC_OTHER_CAPABILITY
9127  * @param event packet
9128  * @return media_codec_information
9129  * @note: btstack_type V
9130  */
9131 static inline const uint8_t * a2dp_subevent_signaling_media_codec_other_capability_get_media_codec_information(const uint8_t * event){
9132     return &event[11];
9133 }
9134 
9135 /**
9136  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
9137  * @param event packet
9138  * @return a2dp_cid
9139  * @note: btstack_type 2
9140  */
9141 static inline uint16_t a2dp_subevent_signaling_delay_reporting_capability_get_a2dp_cid(const uint8_t * event){
9142     return little_endian_read_16(event, 3);
9143 }
9144 /**
9145  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORTING_CAPABILITY
9146  * @param event packet
9147  * @return remote_seid
9148  * @note: btstack_type 1
9149  */
9150 static inline uint8_t a2dp_subevent_signaling_delay_reporting_capability_get_remote_seid(const uint8_t * event){
9151     return event[5];
9152 }
9153 
9154 /**
9155  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
9156  * @param event packet
9157  * @return a2dp_cid
9158  * @note: btstack_type 2
9159  */
9160 static inline uint16_t a2dp_subevent_signaling_delay_report_get_a2dp_cid(const uint8_t * event){
9161     return little_endian_read_16(event, 3);
9162 }
9163 /**
9164  * @brief Get field local_seid from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
9165  * @param event packet
9166  * @return local_seid
9167  * @note: btstack_type 1
9168  */
9169 static inline uint8_t a2dp_subevent_signaling_delay_report_get_local_seid(const uint8_t * event){
9170     return event[5];
9171 }
9172 /**
9173  * @brief Get field delay_100us from event A2DP_SUBEVENT_SIGNALING_DELAY_REPORT
9174  * @param event packet
9175  * @return delay_100us
9176  * @note: btstack_type 2
9177  */
9178 static inline uint16_t a2dp_subevent_signaling_delay_report_get_delay_100us(const uint8_t * event){
9179     return little_endian_read_16(event, 6);
9180 }
9181 
9182 /**
9183  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
9184  * @param event packet
9185  * @return a2dp_cid
9186  * @note: btstack_type 2
9187  */
9188 static inline uint16_t a2dp_subevent_signaling_capabilities_done_get_a2dp_cid(const uint8_t * event){
9189     return little_endian_read_16(event, 3);
9190 }
9191 /**
9192  * @brief Get field remote_seid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_DONE
9193  * @param event packet
9194  * @return remote_seid
9195  * @note: btstack_type 1
9196  */
9197 static inline uint8_t a2dp_subevent_signaling_capabilities_done_get_remote_seid(const uint8_t * event){
9198     return event[5];
9199 }
9200 
9201 /**
9202  * @brief Get field a2dp_cid from event A2DP_SUBEVENT_SIGNALING_CAPABILITIES_COMPLETE
9203  * @param event packet
9204  * @return a2dp_cid
9205  * @note: btstack_type 2
9206  */
9207 static inline uint16_t a2dp_subevent_signaling_capabilities_complete_get_a2dp_cid(const uint8_t * event){
9208     return little_endian_read_16(event, 3);
9209 }
9210 
9211 /**
9212  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
9213  * @param event packet
9214  * @return avrcp_cid
9215  * @note: btstack_type 2
9216  */
9217 static inline uint16_t avrcp_subevent_notification_playback_status_changed_get_avrcp_cid(const uint8_t * event){
9218     return little_endian_read_16(event, 3);
9219 }
9220 /**
9221  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
9222  * @param event packet
9223  * @return command_type
9224  * @note: btstack_type 1
9225  */
9226 static inline uint8_t avrcp_subevent_notification_playback_status_changed_get_command_type(const uint8_t * event){
9227     return event[5];
9228 }
9229 /**
9230  * @brief Get field play_status from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_STATUS_CHANGED
9231  * @param event packet
9232  * @return play_status
9233  * @note: btstack_type 1
9234  */
9235 static inline uint8_t avrcp_subevent_notification_playback_status_changed_get_play_status(const uint8_t * event){
9236     return event[6];
9237 }
9238 
9239 /**
9240  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED
9241  * @param event packet
9242  * @return avrcp_cid
9243  * @note: btstack_type 2
9244  */
9245 static inline uint16_t avrcp_subevent_notification_track_changed_get_avrcp_cid(const uint8_t * event){
9246     return little_endian_read_16(event, 3);
9247 }
9248 /**
9249  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_TRACK_CHANGED
9250  * @param event packet
9251  * @return command_type
9252  * @note: btstack_type 1
9253  */
9254 static inline uint8_t avrcp_subevent_notification_track_changed_get_command_type(const uint8_t * event){
9255     return event[5];
9256 }
9257 
9258 /**
9259  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_END
9260  * @param event packet
9261  * @return avrcp_cid
9262  * @note: btstack_type 2
9263  */
9264 static inline uint16_t avrcp_subevent_notification_event_track_reached_end_get_avrcp_cid(const uint8_t * event){
9265     return little_endian_read_16(event, 3);
9266 }
9267 /**
9268  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_END
9269  * @param event packet
9270  * @return command_type
9271  * @note: btstack_type 1
9272  */
9273 static inline uint8_t avrcp_subevent_notification_event_track_reached_end_get_command_type(const uint8_t * event){
9274     return event[5];
9275 }
9276 
9277 /**
9278  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_START
9279  * @param event packet
9280  * @return avrcp_cid
9281  * @note: btstack_type 2
9282  */
9283 static inline uint16_t avrcp_subevent_notification_event_track_reached_start_get_avrcp_cid(const uint8_t * event){
9284     return little_endian_read_16(event, 3);
9285 }
9286 /**
9287  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_TRACK_REACHED_START
9288  * @param event packet
9289  * @return command_type
9290  * @note: btstack_type 1
9291  */
9292 static inline uint8_t avrcp_subevent_notification_event_track_reached_start_get_command_type(const uint8_t * event){
9293     return event[5];
9294 }
9295 
9296 /**
9297  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYBACK_POS_CHANGED
9298  * @param event packet
9299  * @return avrcp_cid
9300  * @note: btstack_type 2
9301  */
9302 static inline uint16_t avrcp_subevent_notification_event_playback_pos_changed_get_avrcp_cid(const uint8_t * event){
9303     return little_endian_read_16(event, 3);
9304 }
9305 /**
9306  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYBACK_POS_CHANGED
9307  * @param event packet
9308  * @return command_type
9309  * @note: btstack_type 1
9310  */
9311 static inline uint8_t avrcp_subevent_notification_event_playback_pos_changed_get_command_type(const uint8_t * event){
9312     return event[5];
9313 }
9314 /**
9315  * @brief Get field playback_position from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_PLAYBACK_POS_CHANGED
9316  * @param event packet
9317  * @return playback_position
9318  * @note: btstack_type 4
9319  */
9320 static inline uint32_t avrcp_subevent_notification_event_playback_pos_changed_get_playback_position(const uint8_t * event){
9321     return little_endian_read_32(event, 6);
9322 }
9323 
9324 /**
9325  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_BATT_STATUS_CHANGED
9326  * @param event packet
9327  * @return avrcp_cid
9328  * @note: btstack_type 2
9329  */
9330 static inline uint16_t avrcp_subevent_notification_event_batt_status_changed_get_avrcp_cid(const uint8_t * event){
9331     return little_endian_read_16(event, 3);
9332 }
9333 /**
9334  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_BATT_STATUS_CHANGED
9335  * @param event packet
9336  * @return command_type
9337  * @note: btstack_type 1
9338  */
9339 static inline uint8_t avrcp_subevent_notification_event_batt_status_changed_get_command_type(const uint8_t * event){
9340     return event[5];
9341 }
9342 /**
9343  * @brief Get field battery_status from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_BATT_STATUS_CHANGED
9344  * @param event packet
9345  * @return battery_status
9346  * @note: btstack_type 1
9347  */
9348 static inline uint8_t avrcp_subevent_notification_event_batt_status_changed_get_battery_status(const uint8_t * event){
9349     return event[6];
9350 }
9351 
9352 /**
9353  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_SYSTEM_STATUS_CHANGED
9354  * @param event packet
9355  * @return avrcp_cid
9356  * @note: btstack_type 2
9357  */
9358 static inline uint16_t avrcp_subevent_notification_event_system_status_changed_get_avrcp_cid(const uint8_t * event){
9359     return little_endian_read_16(event, 3);
9360 }
9361 /**
9362  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_SYSTEM_STATUS_CHANGED
9363  * @param event packet
9364  * @return command_type
9365  * @note: btstack_type 1
9366  */
9367 static inline uint8_t avrcp_subevent_notification_event_system_status_changed_get_command_type(const uint8_t * event){
9368     return event[5];
9369 }
9370 /**
9371  * @brief Get field system_status from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_SYSTEM_STATUS_CHANGED
9372  * @param event packet
9373  * @return system_status
9374  * @note: btstack_type 1
9375  */
9376 static inline uint8_t avrcp_subevent_notification_event_system_status_changed_get_system_status(const uint8_t * event){
9377     return event[6];
9378 }
9379 
9380 /**
9381  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED
9382  * @param event packet
9383  * @return avrcp_cid
9384  * @note: btstack_type 2
9385  */
9386 static inline uint16_t avrcp_subevent_notification_now_playing_content_changed_get_avrcp_cid(const uint8_t * event){
9387     return little_endian_read_16(event, 3);
9388 }
9389 /**
9390  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_NOW_PLAYING_CONTENT_CHANGED
9391  * @param event packet
9392  * @return command_type
9393  * @note: btstack_type 1
9394  */
9395 static inline uint8_t avrcp_subevent_notification_now_playing_content_changed_get_command_type(const uint8_t * event){
9396     return event[5];
9397 }
9398 
9399 /**
9400  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED
9401  * @param event packet
9402  * @return avrcp_cid
9403  * @note: btstack_type 2
9404  */
9405 static inline uint16_t avrcp_subevent_notification_available_players_changed_get_avrcp_cid(const uint8_t * event){
9406     return little_endian_read_16(event, 3);
9407 }
9408 /**
9409  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_AVAILABLE_PLAYERS_CHANGED
9410  * @param event packet
9411  * @return command_type
9412  * @note: btstack_type 1
9413  */
9414 static inline uint8_t avrcp_subevent_notification_available_players_changed_get_command_type(const uint8_t * event){
9415     return event[5];
9416 }
9417 
9418 /**
9419  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_UIDS_CHANGED
9420  * @param event packet
9421  * @return avrcp_cid
9422  * @note: btstack_type 2
9423  */
9424 static inline uint16_t avrcp_subevent_notification_event_uids_changed_get_avrcp_cid(const uint8_t * event){
9425     return little_endian_read_16(event, 3);
9426 }
9427 /**
9428  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_UIDS_CHANGED
9429  * @param event packet
9430  * @return command_type
9431  * @note: btstack_type 1
9432  */
9433 static inline uint8_t avrcp_subevent_notification_event_uids_changed_get_command_type(const uint8_t * event){
9434     return event[5];
9435 }
9436 /**
9437  * @brief Get field uid_counter from event AVRCP_SUBEVENT_NOTIFICATION_EVENT_UIDS_CHANGED
9438  * @param event packet
9439  * @return uid_counter
9440  * @note: btstack_type 2
9441  */
9442 static inline uint16_t avrcp_subevent_notification_event_uids_changed_get_uid_counter(const uint8_t * event){
9443     return little_endian_read_16(event, 6);
9444 }
9445 
9446 /**
9447  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
9448  * @param event packet
9449  * @return avrcp_cid
9450  * @note: btstack_type 2
9451  */
9452 static inline uint16_t avrcp_subevent_notification_volume_changed_get_avrcp_cid(const uint8_t * event){
9453     return little_endian_read_16(event, 3);
9454 }
9455 /**
9456  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
9457  * @param event packet
9458  * @return command_type
9459  * @note: btstack_type 1
9460  */
9461 static inline uint8_t avrcp_subevent_notification_volume_changed_get_command_type(const uint8_t * event){
9462     return event[5];
9463 }
9464 /**
9465  * @brief Get field absolute_volume from event AVRCP_SUBEVENT_NOTIFICATION_VOLUME_CHANGED
9466  * @param event packet
9467  * @return absolute_volume
9468  * @note: btstack_type 1
9469  */
9470 static inline uint8_t avrcp_subevent_notification_volume_changed_get_absolute_volume(const uint8_t * event){
9471     return event[6];
9472 }
9473 
9474 /**
9475  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
9476  * @param event packet
9477  * @return avrcp_cid
9478  * @note: btstack_type 2
9479  */
9480 static inline uint16_t avrcp_subevent_set_absolute_volume_response_get_avrcp_cid(const uint8_t * event){
9481     return little_endian_read_16(event, 3);
9482 }
9483 /**
9484  * @brief Get field command_type from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
9485  * @param event packet
9486  * @return command_type
9487  * @note: btstack_type 1
9488  */
9489 static inline uint8_t avrcp_subevent_set_absolute_volume_response_get_command_type(const uint8_t * event){
9490     return event[5];
9491 }
9492 /**
9493  * @brief Get field absolute_volume from event AVRCP_SUBEVENT_SET_ABSOLUTE_VOLUME_RESPONSE
9494  * @param event packet
9495  * @return absolute_volume
9496  * @note: btstack_type 1
9497  */
9498 static inline uint8_t avrcp_subevent_set_absolute_volume_response_get_absolute_volume(const uint8_t * event){
9499     return event[6];
9500 }
9501 
9502 /**
9503  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_STATE
9504  * @param event packet
9505  * @return avrcp_cid
9506  * @note: btstack_type 2
9507  */
9508 static inline uint16_t avrcp_subevent_notification_state_get_avrcp_cid(const uint8_t * event){
9509     return little_endian_read_16(event, 3);
9510 }
9511 /**
9512  * @brief Get field status from event AVRCP_SUBEVENT_NOTIFICATION_STATE
9513  * @param event packet
9514  * @return status
9515  * @note: btstack_type 1
9516  */
9517 static inline uint8_t avrcp_subevent_notification_state_get_status(const uint8_t * event){
9518     return event[5];
9519 }
9520 /**
9521  * @brief Get field enabled from event AVRCP_SUBEVENT_NOTIFICATION_STATE
9522  * @param event packet
9523  * @return enabled
9524  * @note: btstack_type 1
9525  */
9526 static inline uint8_t avrcp_subevent_notification_state_get_enabled(const uint8_t * event){
9527     return event[6];
9528 }
9529 /**
9530  * @brief Get field event_id from event AVRCP_SUBEVENT_NOTIFICATION_STATE
9531  * @param event packet
9532  * @return event_id
9533  * @note: btstack_type 1
9534  */
9535 static inline uint8_t avrcp_subevent_notification_state_get_event_id(const uint8_t * event){
9536     return event[7];
9537 }
9538 
9539 /**
9540  * @brief Get field status from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
9541  * @param event packet
9542  * @return status
9543  * @note: btstack_type 1
9544  */
9545 static inline uint8_t avrcp_subevent_connection_established_get_status(const uint8_t * event){
9546     return event[3];
9547 }
9548 /**
9549  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
9550  * @param event packet
9551  * @return avrcp_cid
9552  * @note: btstack_type 2
9553  */
9554 static inline uint16_t avrcp_subevent_connection_established_get_avrcp_cid(const uint8_t * event){
9555     return little_endian_read_16(event, 4);
9556 }
9557 /**
9558  * @brief Get field bd_addr from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
9559  * @param event packet
9560  * @param Pointer to storage for bd_addr
9561  * @note: btstack_type B
9562  */
9563 static inline void avrcp_subevent_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
9564     reverse_bytes(&event[6], bd_addr, 6);
9565 }
9566 /**
9567  * @brief Get field con_handle from event AVRCP_SUBEVENT_CONNECTION_ESTABLISHED
9568  * @param event packet
9569  * @return con_handle
9570  * @note: btstack_type 2
9571  */
9572 static inline uint16_t avrcp_subevent_connection_established_get_con_handle(const uint8_t * event){
9573     return little_endian_read_16(event, 12);
9574 }
9575 
9576 /**
9577  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_CONNECTION_RELEASED
9578  * @param event packet
9579  * @return avrcp_cid
9580  * @note: btstack_type 2
9581  */
9582 static inline uint16_t avrcp_subevent_connection_released_get_avrcp_cid(const uint8_t * event){
9583     return little_endian_read_16(event, 3);
9584 }
9585 
9586 /**
9587  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
9588  * @param event packet
9589  * @return avrcp_cid
9590  * @note: btstack_type 2
9591  */
9592 static inline uint16_t avrcp_subevent_shuffle_and_repeat_mode_get_avrcp_cid(const uint8_t * event){
9593     return little_endian_read_16(event, 3);
9594 }
9595 /**
9596  * @brief Get field command_type from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
9597  * @param event packet
9598  * @return command_type
9599  * @note: btstack_type 1
9600  */
9601 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_command_type(const uint8_t * event){
9602     return event[5];
9603 }
9604 /**
9605  * @brief Get field repeat_mode from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
9606  * @param event packet
9607  * @return repeat_mode
9608  * @note: btstack_type 1
9609  */
9610 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_repeat_mode(const uint8_t * event){
9611     return event[6];
9612 }
9613 /**
9614  * @brief Get field shuffle_mode from event AVRCP_SUBEVENT_SHUFFLE_AND_REPEAT_MODE
9615  * @param event packet
9616  * @return shuffle_mode
9617  * @note: btstack_type 1
9618  */
9619 static inline uint8_t avrcp_subevent_shuffle_and_repeat_mode_get_shuffle_mode(const uint8_t * event){
9620     return event[7];
9621 }
9622 
9623 /**
9624  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAY_STATUS
9625  * @param event packet
9626  * @return avrcp_cid
9627  * @note: btstack_type 2
9628  */
9629 static inline uint16_t avrcp_subevent_play_status_get_avrcp_cid(const uint8_t * event){
9630     return little_endian_read_16(event, 3);
9631 }
9632 /**
9633  * @brief Get field command_type from event AVRCP_SUBEVENT_PLAY_STATUS
9634  * @param event packet
9635  * @return command_type
9636  * @note: btstack_type 1
9637  */
9638 static inline uint8_t avrcp_subevent_play_status_get_command_type(const uint8_t * event){
9639     return event[5];
9640 }
9641 /**
9642  * @brief Get field song_length from event AVRCP_SUBEVENT_PLAY_STATUS
9643  * @param event packet
9644  * @return song_length
9645  * @note: btstack_type 4
9646  */
9647 static inline uint32_t avrcp_subevent_play_status_get_song_length(const uint8_t * event){
9648     return little_endian_read_32(event, 6);
9649 }
9650 /**
9651  * @brief Get field song_position from event AVRCP_SUBEVENT_PLAY_STATUS
9652  * @param event packet
9653  * @return song_position
9654  * @note: btstack_type 4
9655  */
9656 static inline uint32_t avrcp_subevent_play_status_get_song_position(const uint8_t * event){
9657     return little_endian_read_32(event, 10);
9658 }
9659 /**
9660  * @brief Get field play_status from event AVRCP_SUBEVENT_PLAY_STATUS
9661  * @param event packet
9662  * @return play_status
9663  * @note: btstack_type 1
9664  */
9665 static inline uint8_t avrcp_subevent_play_status_get_play_status(const uint8_t * event){
9666     return event[14];
9667 }
9668 
9669 /**
9670  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION_START
9671  * @param event packet
9672  * @return avrcp_cid
9673  * @note: btstack_type 2
9674  */
9675 static inline uint16_t avrcp_subevent_operation_start_get_avrcp_cid(const uint8_t * event){
9676     return little_endian_read_16(event, 3);
9677 }
9678 /**
9679  * @brief Get field command_type from event AVRCP_SUBEVENT_OPERATION_START
9680  * @param event packet
9681  * @return command_type
9682  * @note: btstack_type 1
9683  */
9684 static inline uint8_t avrcp_subevent_operation_start_get_command_type(const uint8_t * event){
9685     return event[5];
9686 }
9687 /**
9688  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION_START
9689  * @param event packet
9690  * @return operation_id
9691  * @note: btstack_type 1
9692  */
9693 static inline uint8_t avrcp_subevent_operation_start_get_operation_id(const uint8_t * event){
9694     return event[6];
9695 }
9696 
9697 /**
9698  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION_COMPLETE
9699  * @param event packet
9700  * @return avrcp_cid
9701  * @note: btstack_type 2
9702  */
9703 static inline uint16_t avrcp_subevent_operation_complete_get_avrcp_cid(const uint8_t * event){
9704     return little_endian_read_16(event, 3);
9705 }
9706 /**
9707  * @brief Get field command_type from event AVRCP_SUBEVENT_OPERATION_COMPLETE
9708  * @param event packet
9709  * @return command_type
9710  * @note: btstack_type 1
9711  */
9712 static inline uint8_t avrcp_subevent_operation_complete_get_command_type(const uint8_t * event){
9713     return event[5];
9714 }
9715 /**
9716  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION_COMPLETE
9717  * @param event packet
9718  * @return operation_id
9719  * @note: btstack_type 1
9720  */
9721 static inline uint8_t avrcp_subevent_operation_complete_get_operation_id(const uint8_t * event){
9722     return event[6];
9723 }
9724 
9725 /**
9726  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE
9727  * @param event packet
9728  * @return avrcp_cid
9729  * @note: btstack_type 2
9730  */
9731 static inline uint16_t avrcp_subevent_player_application_value_response_get_avrcp_cid(const uint8_t * event){
9732     return little_endian_read_16(event, 3);
9733 }
9734 /**
9735  * @brief Get field command_type from event AVRCP_SUBEVENT_PLAYER_APPLICATION_VALUE_RESPONSE
9736  * @param event packet
9737  * @return command_type
9738  * @note: btstack_type 1
9739  */
9740 static inline uint8_t avrcp_subevent_player_application_value_response_get_command_type(const uint8_t * event){
9741     return event[5];
9742 }
9743 
9744 /**
9745  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_PLAY_STATUS_QUERY
9746  * @param event packet
9747  * @return avrcp_cid
9748  * @note: btstack_type 2
9749  */
9750 static inline uint16_t avrcp_subevent_play_status_query_get_avrcp_cid(const uint8_t * event){
9751     return little_endian_read_16(event, 3);
9752 }
9753 
9754 /**
9755  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_OPERATION
9756  * @param event packet
9757  * @return avrcp_cid
9758  * @note: btstack_type 2
9759  */
9760 static inline uint16_t avrcp_subevent_operation_get_avrcp_cid(const uint8_t * event){
9761     return little_endian_read_16(event, 3);
9762 }
9763 /**
9764  * @brief Get field operation_id from event AVRCP_SUBEVENT_OPERATION
9765  * @param event packet
9766  * @return operation_id
9767  * @note: btstack_type 1
9768  */
9769 static inline uint8_t avrcp_subevent_operation_get_operation_id(const uint8_t * event){
9770     return event[5];
9771 }
9772 /**
9773  * @brief Get field button_pressed from event AVRCP_SUBEVENT_OPERATION
9774  * @param event packet
9775  * @return button_pressed
9776  * @note: btstack_type 1
9777  */
9778 static inline uint8_t avrcp_subevent_operation_get_button_pressed(const uint8_t * event){
9779     return event[6];
9780 }
9781 /**
9782  * @brief Get field operands_length from event AVRCP_SUBEVENT_OPERATION
9783  * @param event packet
9784  * @return operands_length
9785  * @note: btstack_type 1
9786  */
9787 static inline uint8_t avrcp_subevent_operation_get_operands_length(const uint8_t * event){
9788     return event[7];
9789 }
9790 /**
9791  * @brief Get field operand from event AVRCP_SUBEVENT_OPERATION
9792  * @param event packet
9793  * @return operand
9794  * @note: btstack_type 1
9795  */
9796 static inline uint8_t avrcp_subevent_operation_get_operand(const uint8_t * event){
9797     return event[8];
9798 }
9799 
9800 /**
9801  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
9802  * @param event packet
9803  * @return avrcp_cid
9804  * @note: btstack_type 2
9805  */
9806 static inline uint16_t avrcp_subevent_now_playing_track_info_get_avrcp_cid(const uint8_t * event){
9807     return little_endian_read_16(event, 3);
9808 }
9809 /**
9810  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
9811  * @param event packet
9812  * @return command_type
9813  * @note: btstack_type 1
9814  */
9815 static inline uint8_t avrcp_subevent_now_playing_track_info_get_command_type(const uint8_t * event){
9816     return event[5];
9817 }
9818 /**
9819  * @brief Get field track from event AVRCP_SUBEVENT_NOW_PLAYING_TRACK_INFO
9820  * @param event packet
9821  * @return track
9822  * @note: btstack_type 1
9823  */
9824 static inline uint8_t avrcp_subevent_now_playing_track_info_get_track(const uint8_t * event){
9825     return event[6];
9826 }
9827 
9828 /**
9829  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
9830  * @param event packet
9831  * @return avrcp_cid
9832  * @note: btstack_type 2
9833  */
9834 static inline uint16_t avrcp_subevent_now_playing_total_tracks_info_get_avrcp_cid(const uint8_t * event){
9835     return little_endian_read_16(event, 3);
9836 }
9837 /**
9838  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
9839  * @param event packet
9840  * @return command_type
9841  * @note: btstack_type 1
9842  */
9843 static inline uint8_t avrcp_subevent_now_playing_total_tracks_info_get_command_type(const uint8_t * event){
9844     return event[5];
9845 }
9846 /**
9847  * @brief Get field total_tracks from event AVRCP_SUBEVENT_NOW_PLAYING_TOTAL_TRACKS_INFO
9848  * @param event packet
9849  * @return total_tracks
9850  * @note: btstack_type 1
9851  */
9852 static inline uint8_t avrcp_subevent_now_playing_total_tracks_info_get_total_tracks(const uint8_t * event){
9853     return event[6];
9854 }
9855 
9856 /**
9857  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
9858  * @param event packet
9859  * @return avrcp_cid
9860  * @note: btstack_type 2
9861  */
9862 static inline uint16_t avrcp_subevent_now_playing_song_length_ms_info_get_avrcp_cid(const uint8_t * event){
9863     return little_endian_read_16(event, 3);
9864 }
9865 /**
9866  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
9867  * @param event packet
9868  * @return command_type
9869  * @note: btstack_type 1
9870  */
9871 static inline uint8_t avrcp_subevent_now_playing_song_length_ms_info_get_command_type(const uint8_t * event){
9872     return event[5];
9873 }
9874 /**
9875  * @brief Get field song_length from event AVRCP_SUBEVENT_NOW_PLAYING_SONG_LENGTH_MS_INFO
9876  * @param event packet
9877  * @return song_length
9878  * @note: btstack_type 4
9879  */
9880 static inline uint32_t avrcp_subevent_now_playing_song_length_ms_info_get_song_length(const uint8_t * event){
9881     return little_endian_read_32(event, 6);
9882 }
9883 
9884 /**
9885  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
9886  * @param event packet
9887  * @return avrcp_cid
9888  * @note: btstack_type 2
9889  */
9890 static inline uint16_t avrcp_subevent_now_playing_title_info_get_avrcp_cid(const uint8_t * event){
9891     return little_endian_read_16(event, 3);
9892 }
9893 /**
9894  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
9895  * @param event packet
9896  * @return command_type
9897  * @note: btstack_type 1
9898  */
9899 static inline uint8_t avrcp_subevent_now_playing_title_info_get_command_type(const uint8_t * event){
9900     return event[5];
9901 }
9902 /**
9903  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
9904  * @param event packet
9905  * @return value_len
9906  * @note: btstack_type J
9907  */
9908 static inline uint8_t avrcp_subevent_now_playing_title_info_get_value_len(const uint8_t * event){
9909     return event[6];
9910 }
9911 /**
9912  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_TITLE_INFO
9913  * @param event packet
9914  * @return value
9915  * @note: btstack_type V
9916  */
9917 static inline const uint8_t * avrcp_subevent_now_playing_title_info_get_value(const uint8_t * event){
9918     return &event[7];
9919 }
9920 
9921 /**
9922  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
9923  * @param event packet
9924  * @return avrcp_cid
9925  * @note: btstack_type 2
9926  */
9927 static inline uint16_t avrcp_subevent_now_playing_artist_info_get_avrcp_cid(const uint8_t * event){
9928     return little_endian_read_16(event, 3);
9929 }
9930 /**
9931  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
9932  * @param event packet
9933  * @return command_type
9934  * @note: btstack_type 1
9935  */
9936 static inline uint8_t avrcp_subevent_now_playing_artist_info_get_command_type(const uint8_t * event){
9937     return event[5];
9938 }
9939 /**
9940  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
9941  * @param event packet
9942  * @return value_len
9943  * @note: btstack_type J
9944  */
9945 static inline uint8_t avrcp_subevent_now_playing_artist_info_get_value_len(const uint8_t * event){
9946     return event[6];
9947 }
9948 /**
9949  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_ARTIST_INFO
9950  * @param event packet
9951  * @return value
9952  * @note: btstack_type V
9953  */
9954 static inline const uint8_t * avrcp_subevent_now_playing_artist_info_get_value(const uint8_t * event){
9955     return &event[7];
9956 }
9957 
9958 /**
9959  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
9960  * @param event packet
9961  * @return avrcp_cid
9962  * @note: btstack_type 2
9963  */
9964 static inline uint16_t avrcp_subevent_now_playing_album_info_get_avrcp_cid(const uint8_t * event){
9965     return little_endian_read_16(event, 3);
9966 }
9967 /**
9968  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
9969  * @param event packet
9970  * @return command_type
9971  * @note: btstack_type 1
9972  */
9973 static inline uint8_t avrcp_subevent_now_playing_album_info_get_command_type(const uint8_t * event){
9974     return event[5];
9975 }
9976 /**
9977  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
9978  * @param event packet
9979  * @return value_len
9980  * @note: btstack_type J
9981  */
9982 static inline uint8_t avrcp_subevent_now_playing_album_info_get_value_len(const uint8_t * event){
9983     return event[6];
9984 }
9985 /**
9986  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_ALBUM_INFO
9987  * @param event packet
9988  * @return value
9989  * @note: btstack_type V
9990  */
9991 static inline const uint8_t * avrcp_subevent_now_playing_album_info_get_value(const uint8_t * event){
9992     return &event[7];
9993 }
9994 
9995 /**
9996  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
9997  * @param event packet
9998  * @return avrcp_cid
9999  * @note: btstack_type 2
10000  */
10001 static inline uint16_t avrcp_subevent_now_playing_genre_info_get_avrcp_cid(const uint8_t * event){
10002     return little_endian_read_16(event, 3);
10003 }
10004 /**
10005  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
10006  * @param event packet
10007  * @return command_type
10008  * @note: btstack_type 1
10009  */
10010 static inline uint8_t avrcp_subevent_now_playing_genre_info_get_command_type(const uint8_t * event){
10011     return event[5];
10012 }
10013 /**
10014  * @brief Get field value_len from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
10015  * @param event packet
10016  * @return value_len
10017  * @note: btstack_type J
10018  */
10019 static inline uint8_t avrcp_subevent_now_playing_genre_info_get_value_len(const uint8_t * event){
10020     return event[6];
10021 }
10022 /**
10023  * @brief Get field value from event AVRCP_SUBEVENT_NOW_PLAYING_GENRE_INFO
10024  * @param event packet
10025  * @return value
10026  * @note: btstack_type V
10027  */
10028 static inline const uint8_t * avrcp_subevent_now_playing_genre_info_get_value(const uint8_t * event){
10029     return &event[7];
10030 }
10031 
10032 /**
10033  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
10034  * @param event packet
10035  * @return avrcp_cid
10036  * @note: btstack_type 2
10037  */
10038 static inline uint16_t avrcp_subevent_now_playing_info_done_get_avrcp_cid(const uint8_t * event){
10039     return little_endian_read_16(event, 3);
10040 }
10041 /**
10042  * @brief Get field command_type from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
10043  * @param event packet
10044  * @return command_type
10045  * @note: btstack_type 1
10046  */
10047 static inline uint8_t avrcp_subevent_now_playing_info_done_get_command_type(const uint8_t * event){
10048     return event[5];
10049 }
10050 /**
10051  * @brief Get field status from event AVRCP_SUBEVENT_NOW_PLAYING_INFO_DONE
10052  * @param event packet
10053  * @return status
10054  * @note: btstack_type 1
10055  */
10056 static inline uint8_t avrcp_subevent_now_playing_info_done_get_status(const uint8_t * event){
10057     return event[6];
10058 }
10059 
10060 /**
10061  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
10062  * @param event packet
10063  * @return avrcp_cid
10064  * @note: btstack_type 2
10065  */
10066 static inline uint16_t avrcp_subevent_notification_playback_pos_changed_get_avrcp_cid(const uint8_t * event){
10067     return little_endian_read_16(event, 3);
10068 }
10069 /**
10070  * @brief Get field command_type from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
10071  * @param event packet
10072  * @return command_type
10073  * @note: btstack_type 1
10074  */
10075 static inline uint8_t avrcp_subevent_notification_playback_pos_changed_get_command_type(const uint8_t * event){
10076     return event[5];
10077 }
10078 /**
10079  * @brief Get field playback_position_ms from event AVRCP_SUBEVENT_NOTIFICATION_PLAYBACK_POS_CHANGED
10080  * @param event packet
10081  * @return playback_position_ms
10082  * @note: btstack_type 4
10083  */
10084 static inline uint32_t avrcp_subevent_notification_playback_pos_changed_get_playback_position_ms(const uint8_t * event){
10085     return little_endian_read_32(event, 6);
10086 }
10087 
10088 /**
10089  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID
10090  * @param event packet
10091  * @return avrcp_cid
10092  * @note: btstack_type 2
10093  */
10094 static inline uint16_t avrcp_subevent_get_capability_event_id_get_avrcp_cid(const uint8_t * event){
10095     return little_endian_read_16(event, 3);
10096 }
10097 /**
10098  * @brief Get field command_type from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID
10099  * @param event packet
10100  * @return command_type
10101  * @note: btstack_type 1
10102  */
10103 static inline uint8_t avrcp_subevent_get_capability_event_id_get_command_type(const uint8_t * event){
10104     return event[5];
10105 }
10106 /**
10107  * @brief Get field status from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID
10108  * @param event packet
10109  * @return status
10110  * @note: btstack_type 1
10111  */
10112 static inline uint8_t avrcp_subevent_get_capability_event_id_get_status(const uint8_t * event){
10113     return event[6];
10114 }
10115 /**
10116  * @brief Get field event_id from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID
10117  * @param event packet
10118  * @return event_id
10119  * @note: btstack_type 1
10120  */
10121 static inline uint8_t avrcp_subevent_get_capability_event_id_get_event_id(const uint8_t * event){
10122     return event[7];
10123 }
10124 
10125 /**
10126  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID_DONE
10127  * @param event packet
10128  * @return avrcp_cid
10129  * @note: btstack_type 2
10130  */
10131 static inline uint16_t avrcp_subevent_get_capability_event_id_done_get_avrcp_cid(const uint8_t * event){
10132     return little_endian_read_16(event, 3);
10133 }
10134 /**
10135  * @brief Get field command_type from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID_DONE
10136  * @param event packet
10137  * @return command_type
10138  * @note: btstack_type 1
10139  */
10140 static inline uint8_t avrcp_subevent_get_capability_event_id_done_get_command_type(const uint8_t * event){
10141     return event[5];
10142 }
10143 /**
10144  * @brief Get field status from event AVRCP_SUBEVENT_GET_CAPABILITY_EVENT_ID_DONE
10145  * @param event packet
10146  * @return status
10147  * @note: btstack_type 1
10148  */
10149 static inline uint8_t avrcp_subevent_get_capability_event_id_done_get_status(const uint8_t * event){
10150     return event[6];
10151 }
10152 
10153 /**
10154  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID
10155  * @param event packet
10156  * @return avrcp_cid
10157  * @note: btstack_type 2
10158  */
10159 static inline uint16_t avrcp_subevent_get_capability_company_id_get_avrcp_cid(const uint8_t * event){
10160     return little_endian_read_16(event, 3);
10161 }
10162 /**
10163  * @brief Get field command_type from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID
10164  * @param event packet
10165  * @return command_type
10166  * @note: btstack_type 1
10167  */
10168 static inline uint8_t avrcp_subevent_get_capability_company_id_get_command_type(const uint8_t * event){
10169     return event[5];
10170 }
10171 /**
10172  * @brief Get field status from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID
10173  * @param event packet
10174  * @return status
10175  * @note: btstack_type 1
10176  */
10177 static inline uint8_t avrcp_subevent_get_capability_company_id_get_status(const uint8_t * event){
10178     return event[6];
10179 }
10180 /**
10181  * @brief Get field company_id from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID
10182  * @param event packet
10183  * @return company_id
10184  * @note: btstack_type 3
10185  */
10186 static inline uint32_t avrcp_subevent_get_capability_company_id_get_company_id(const uint8_t * event){
10187     return little_endian_read_24(event, 7);
10188 }
10189 
10190 /**
10191  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID_DONE
10192  * @param event packet
10193  * @return avrcp_cid
10194  * @note: btstack_type 2
10195  */
10196 static inline uint16_t avrcp_subevent_get_capability_company_id_done_get_avrcp_cid(const uint8_t * event){
10197     return little_endian_read_16(event, 3);
10198 }
10199 /**
10200  * @brief Get field command_type from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID_DONE
10201  * @param event packet
10202  * @return command_type
10203  * @note: btstack_type 1
10204  */
10205 static inline uint8_t avrcp_subevent_get_capability_company_id_done_get_command_type(const uint8_t * event){
10206     return event[5];
10207 }
10208 /**
10209  * @brief Get field status from event AVRCP_SUBEVENT_GET_CAPABILITY_COMPANY_ID_DONE
10210  * @param event packet
10211  * @return status
10212  * @note: btstack_type 1
10213  */
10214 static inline uint8_t avrcp_subevent_get_capability_company_id_done_get_status(const uint8_t * event){
10215     return event[6];
10216 }
10217 
10218 /**
10219  * @brief Get field avrcp_cid from event AVRCP_SUBEVENT_CUSTOM_COMMAND_RESPONSE
10220  * @param event packet
10221  * @return avrcp_cid
10222  * @note: btstack_type 2
10223  */
10224 static inline uint16_t avrcp_subevent_custom_command_response_get_avrcp_cid(const uint8_t * event){
10225     return little_endian_read_16(event, 3);
10226 }
10227 /**
10228  * @brief Get field command_type from event AVRCP_SUBEVENT_CUSTOM_COMMAND_RESPONSE
10229  * @param event packet
10230  * @return command_type
10231  * @note: btstack_type 1
10232  */
10233 static inline uint8_t avrcp_subevent_custom_command_response_get_command_type(const uint8_t * event){
10234     return event[5];
10235 }
10236 /**
10237  * @brief Get field pdu_id from event AVRCP_SUBEVENT_CUSTOM_COMMAND_RESPONSE
10238  * @param event packet
10239  * @return pdu_id
10240  * @note: btstack_type 1
10241  */
10242 static inline uint8_t avrcp_subevent_custom_command_response_get_pdu_id(const uint8_t * event){
10243     return event[6];
10244 }
10245 /**
10246  * @brief Get field params_len from event AVRCP_SUBEVENT_CUSTOM_COMMAND_RESPONSE
10247  * @param event packet
10248  * @return params_len
10249  * @note: btstack_type L
10250  */
10251 static inline uint16_t avrcp_subevent_custom_command_response_get_params_len(const uint8_t * event){
10252     return little_endian_read_16(event, 7);
10253 }
10254 /**
10255  * @brief Get field params from event AVRCP_SUBEVENT_CUSTOM_COMMAND_RESPONSE
10256  * @param event packet
10257  * @return params
10258  * @note: btstack_type V
10259  */
10260 static inline const uint8_t * avrcp_subevent_custom_command_response_get_params(const uint8_t * event){
10261     return &event[9];
10262 }
10263 
10264 /**
10265  * @brief Get field bd_addr from event AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION
10266  * @param event packet
10267  * @param Pointer to storage for bd_addr
10268  * @note: btstack_type B
10269  */
10270 static inline void avrcp_subevent_incoming_browsing_connection_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
10271     reverse_bytes(&event[3], bd_addr, 6);
10272 }
10273 /**
10274  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_INCOMING_BROWSING_CONNECTION
10275  * @param event packet
10276  * @return browsing_cid
10277  * @note: btstack_type 2
10278  */
10279 static inline uint16_t avrcp_subevent_incoming_browsing_connection_get_browsing_cid(const uint8_t * event){
10280     return little_endian_read_16(event, 9);
10281 }
10282 
10283 /**
10284  * @brief Get field status from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
10285  * @param event packet
10286  * @return status
10287  * @note: btstack_type 1
10288  */
10289 static inline uint8_t avrcp_subevent_browsing_connection_established_get_status(const uint8_t * event){
10290     return event[3];
10291 }
10292 /**
10293  * @brief Get field bd_addr from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
10294  * @param event packet
10295  * @param Pointer to storage for bd_addr
10296  * @note: btstack_type B
10297  */
10298 static inline void avrcp_subevent_browsing_connection_established_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
10299     reverse_bytes(&event[4], bd_addr, 6);
10300 }
10301 /**
10302  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_CONNECTION_ESTABLISHED
10303  * @param event packet
10304  * @return browsing_cid
10305  * @note: btstack_type 2
10306  */
10307 static inline uint16_t avrcp_subevent_browsing_connection_established_get_browsing_cid(const uint8_t * event){
10308     return little_endian_read_16(event, 10);
10309 }
10310 
10311 /**
10312  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_CONNECTION_RELEASED
10313  * @param event packet
10314  * @return browsing_cid
10315  * @note: btstack_type 2
10316  */
10317 static inline uint16_t avrcp_subevent_browsing_connection_released_get_browsing_cid(const uint8_t * event){
10318     return little_endian_read_16(event, 3);
10319 }
10320 
10321 /**
10322  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_DONE
10323  * @param event packet
10324  * @return browsing_cid
10325  * @note: btstack_type 2
10326  */
10327 static inline uint16_t avrcp_subevent_browsing_done_get_browsing_cid(const uint8_t * event){
10328     return little_endian_read_16(event, 3);
10329 }
10330 /**
10331  * @brief Get field uid_counter from event AVRCP_SUBEVENT_BROWSING_DONE
10332  * @param event packet
10333  * @return uid_counter
10334  * @note: btstack_type 2
10335  */
10336 static inline uint16_t avrcp_subevent_browsing_done_get_uid_counter(const uint8_t * event){
10337     return little_endian_read_16(event, 5);
10338 }
10339 /**
10340  * @brief Get field browsing_status from event AVRCP_SUBEVENT_BROWSING_DONE
10341  * @param event packet
10342  * @return browsing_status
10343  * @note: btstack_type 1
10344  */
10345 static inline uint8_t avrcp_subevent_browsing_done_get_browsing_status(const uint8_t * event){
10346     return event[7];
10347 }
10348 /**
10349  * @brief Get field bluetooth_status from event AVRCP_SUBEVENT_BROWSING_DONE
10350  * @param event packet
10351  * @return bluetooth_status
10352  * @note: btstack_type 1
10353  */
10354 static inline uint8_t avrcp_subevent_browsing_done_get_bluetooth_status(const uint8_t * event){
10355     return event[8];
10356 }
10357 
10358 /**
10359  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
10360  * @param event packet
10361  * @return browsing_cid
10362  * @note: btstack_type 2
10363  */
10364 static inline uint16_t avrcp_subevent_browsing_get_folder_items_get_browsing_cid(const uint8_t * event){
10365     return little_endian_read_16(event, 3);
10366 }
10367 /**
10368  * @brief Get field scope from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
10369  * @param event packet
10370  * @return scope
10371  * @note: btstack_type 1
10372  */
10373 static inline uint8_t avrcp_subevent_browsing_get_folder_items_get_scope(const uint8_t * event){
10374     return event[5];
10375 }
10376 /**
10377  * @brief Get field attr_bitmap from event AVRCP_SUBEVENT_BROWSING_GET_FOLDER_ITEMS
10378  * @param event packet
10379  * @return attr_bitmap
10380  * @note: btstack_type 4
10381  */
10382 static inline uint32_t avrcp_subevent_browsing_get_folder_items_get_attr_bitmap(const uint8_t * event){
10383     return little_endian_read_32(event, 6);
10384 }
10385 
10386 /**
10387  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS
10388  * @param event packet
10389  * @return browsing_cid
10390  * @note: btstack_type 2
10391  */
10392 static inline uint16_t avrcp_subevent_browsing_get_total_num_items_get_browsing_cid(const uint8_t * event){
10393     return little_endian_read_16(event, 3);
10394 }
10395 /**
10396  * @brief Get field scope from event AVRCP_SUBEVENT_BROWSING_GET_TOTAL_NUM_ITEMS
10397  * @param event packet
10398  * @return scope
10399  * @note: btstack_type 1
10400  */
10401 static inline uint8_t avrcp_subevent_browsing_get_total_num_items_get_scope(const uint8_t * event){
10402     return event[5];
10403 }
10404 
10405 /**
10406  * @brief Get field browsing_cid from event AVRCP_SUBEVENT_BROWSING_SET_BROWSED_PLAYER
10407  * @param event packet
10408  * @return browsing_cid
10409  * @note: btstack_type 2
10410  */
10411 static inline uint16_t avrcp_subevent_browsing_set_browsed_player_get_browsing_cid(const uint8_t * event){
10412     return little_endian_read_16(event, 3);
10413 }
10414 /**
10415  * @brief Get field player_id from event AVRCP_SUBEVENT_BROWSING_SET_BROWSED_PLAYER
10416  * @param event packet
10417  * @return player_id
10418  * @note: btstack_type 2
10419  */
10420 static inline uint16_t avrcp_subevent_browsing_set_browsed_player_get_player_id(const uint8_t * event){
10421     return little_endian_read_16(event, 5);
10422 }
10423 
10424 /**
10425  * @brief Get field goep_cid from event GOEP_SUBEVENT_CONNECTION_OPENED
10426  * @param event packet
10427  * @return goep_cid
10428  * @note: btstack_type 2
10429  */
10430 static inline uint16_t goep_subevent_connection_opened_get_goep_cid(const uint8_t * event){
10431     return little_endian_read_16(event, 3);
10432 }
10433 /**
10434  * @brief Get field status from event GOEP_SUBEVENT_CONNECTION_OPENED
10435  * @param event packet
10436  * @return status
10437  * @note: btstack_type 1
10438  */
10439 static inline uint8_t goep_subevent_connection_opened_get_status(const uint8_t * event){
10440     return event[5];
10441 }
10442 /**
10443  * @brief Get field bd_addr from event GOEP_SUBEVENT_CONNECTION_OPENED
10444  * @param event packet
10445  * @param Pointer to storage for bd_addr
10446  * @note: btstack_type B
10447  */
10448 static inline void goep_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
10449     reverse_bytes(&event[6], bd_addr, 6);
10450 }
10451 /**
10452  * @brief Get field con_handle from event GOEP_SUBEVENT_CONNECTION_OPENED
10453  * @param event packet
10454  * @return con_handle
10455  * @note: btstack_type H
10456  */
10457 static inline hci_con_handle_t goep_subevent_connection_opened_get_con_handle(const uint8_t * event){
10458     return little_endian_read_16(event, 12);
10459 }
10460 /**
10461  * @brief Get field incoming from event GOEP_SUBEVENT_CONNECTION_OPENED
10462  * @param event packet
10463  * @return incoming
10464  * @note: btstack_type 1
10465  */
10466 static inline uint8_t goep_subevent_connection_opened_get_incoming(const uint8_t * event){
10467     return event[14];
10468 }
10469 
10470 /**
10471  * @brief Get field goep_cid from event GOEP_SUBEVENT_CONNECTION_CLOSED
10472  * @param event packet
10473  * @return goep_cid
10474  * @note: btstack_type 2
10475  */
10476 static inline uint16_t goep_subevent_connection_closed_get_goep_cid(const uint8_t * event){
10477     return little_endian_read_16(event, 3);
10478 }
10479 
10480 /**
10481  * @brief Get field goep_cid from event GOEP_SUBEVENT_CAN_SEND_NOW
10482  * @param event packet
10483  * @return goep_cid
10484  * @note: btstack_type 2
10485  */
10486 static inline uint16_t goep_subevent_can_send_now_get_goep_cid(const uint8_t * event){
10487     return little_endian_read_16(event, 3);
10488 }
10489 
10490 /**
10491  * @brief Get field pbap_cid from event PBAP_SUBEVENT_CONNECTION_OPENED
10492  * @param event packet
10493  * @return pbap_cid
10494  * @note: btstack_type 2
10495  */
10496 static inline uint16_t pbap_subevent_connection_opened_get_pbap_cid(const uint8_t * event){
10497     return little_endian_read_16(event, 3);
10498 }
10499 /**
10500  * @brief Get field status from event PBAP_SUBEVENT_CONNECTION_OPENED
10501  * @param event packet
10502  * @return status
10503  * @note: btstack_type 1
10504  */
10505 static inline uint8_t pbap_subevent_connection_opened_get_status(const uint8_t * event){
10506     return event[5];
10507 }
10508 /**
10509  * @brief Get field bd_addr from event PBAP_SUBEVENT_CONNECTION_OPENED
10510  * @param event packet
10511  * @param Pointer to storage for bd_addr
10512  * @note: btstack_type B
10513  */
10514 static inline void pbap_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
10515     reverse_bytes(&event[6], bd_addr, 6);
10516 }
10517 /**
10518  * @brief Get field con_handle from event PBAP_SUBEVENT_CONNECTION_OPENED
10519  * @param event packet
10520  * @return con_handle
10521  * @note: btstack_type H
10522  */
10523 static inline hci_con_handle_t pbap_subevent_connection_opened_get_con_handle(const uint8_t * event){
10524     return little_endian_read_16(event, 12);
10525 }
10526 /**
10527  * @brief Get field incoming from event PBAP_SUBEVENT_CONNECTION_OPENED
10528  * @param event packet
10529  * @return incoming
10530  * @note: btstack_type 1
10531  */
10532 static inline uint8_t pbap_subevent_connection_opened_get_incoming(const uint8_t * event){
10533     return event[14];
10534 }
10535 
10536 /**
10537  * @brief Get field goep_cid from event PBAP_SUBEVENT_CONNECTION_CLOSED
10538  * @param event packet
10539  * @return goep_cid
10540  * @note: btstack_type 2
10541  */
10542 static inline uint16_t pbap_subevent_connection_closed_get_goep_cid(const uint8_t * event){
10543     return little_endian_read_16(event, 3);
10544 }
10545 
10546 /**
10547  * @brief Get field goep_cid from event PBAP_SUBEVENT_OPERATION_COMPLETED
10548  * @param event packet
10549  * @return goep_cid
10550  * @note: btstack_type 2
10551  */
10552 static inline uint16_t pbap_subevent_operation_completed_get_goep_cid(const uint8_t * event){
10553     return little_endian_read_16(event, 3);
10554 }
10555 /**
10556  * @brief Get field status from event PBAP_SUBEVENT_OPERATION_COMPLETED
10557  * @param event packet
10558  * @return status
10559  * @note: btstack_type 1
10560  */
10561 static inline uint8_t pbap_subevent_operation_completed_get_status(const uint8_t * event){
10562     return event[5];
10563 }
10564 
10565 /**
10566  * @brief Get field goep_cid from event PBAP_SUBEVENT_PHONEBOOK_SIZE
10567  * @param event packet
10568  * @return goep_cid
10569  * @note: btstack_type 2
10570  */
10571 static inline uint16_t pbap_subevent_phonebook_size_get_goep_cid(const uint8_t * event){
10572     return little_endian_read_16(event, 3);
10573 }
10574 /**
10575  * @brief Get field status from event PBAP_SUBEVENT_PHONEBOOK_SIZE
10576  * @param event packet
10577  * @return status
10578  * @note: btstack_type 1
10579  */
10580 static inline uint8_t pbap_subevent_phonebook_size_get_status(const uint8_t * event){
10581     return event[5];
10582 }
10583 /**
10584  * @brief Get field phonebook_size from event PBAP_SUBEVENT_PHONEBOOK_SIZE
10585  * @param event packet
10586  * @return phonebook_size
10587  * @note: btstack_type 2
10588  */
10589 static inline uint16_t pbap_subevent_phonebook_size_get_phonebook_size(const uint8_t * event){
10590     return little_endian_read_16(event, 6);
10591 }
10592 
10593 /**
10594  * @brief Get field goep_cid from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
10595  * @param event packet
10596  * @return goep_cid
10597  * @note: btstack_type 2
10598  */
10599 static inline uint16_t pbap_subevent_authentication_request_get_goep_cid(const uint8_t * event){
10600     return little_endian_read_16(event, 3);
10601 }
10602 /**
10603  * @brief Get field user_id_required from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
10604  * @param event packet
10605  * @return user_id_required
10606  * @note: btstack_type 1
10607  */
10608 static inline uint8_t pbap_subevent_authentication_request_get_user_id_required(const uint8_t * event){
10609     return event[5];
10610 }
10611 /**
10612  * @brief Get field full_access from event PBAP_SUBEVENT_AUTHENTICATION_REQUEST
10613  * @param event packet
10614  * @return full_access
10615  * @note: btstack_type 1
10616  */
10617 static inline uint8_t pbap_subevent_authentication_request_get_full_access(const uint8_t * event){
10618     return event[6];
10619 }
10620 
10621 /**
10622  * @brief Get field goep_cid from event PBAP_SUBEVENT_CARD_RESULT
10623  * @param event packet
10624  * @return goep_cid
10625  * @note: btstack_type 2
10626  */
10627 static inline uint16_t pbap_subevent_card_result_get_goep_cid(const uint8_t * event){
10628     return little_endian_read_16(event, 3);
10629 }
10630 /**
10631  * @brief Get field name_len from event PBAP_SUBEVENT_CARD_RESULT
10632  * @param event packet
10633  * @return name_len
10634  * @note: btstack_type J
10635  */
10636 static inline uint8_t pbap_subevent_card_result_get_name_len(const uint8_t * event){
10637     return event[5];
10638 }
10639 /**
10640  * @brief Get field name from event PBAP_SUBEVENT_CARD_RESULT
10641  * @param event packet
10642  * @return name
10643  * @note: btstack_type V
10644  */
10645 static inline const uint8_t * pbap_subevent_card_result_get_name(const uint8_t * event){
10646     return &event[6];
10647 }
10648 /**
10649  * @brief Get field handle_len from event PBAP_SUBEVENT_CARD_RESULT
10650  * @param event packet
10651  * @return handle_len
10652  * @note: btstack_type J
10653  */
10654 static inline uint8_t pbap_subevent_card_result_get_handle_len(const uint8_t * event){
10655     return event[6u + event[5]];
10656 }
10657 /**
10658  * @brief Get field handle from event PBAP_SUBEVENT_CARD_RESULT
10659  * @param event packet
10660  * @return handle
10661  * @note: btstack_type V
10662  */
10663 static inline const uint8_t * pbap_subevent_card_result_get_handle(const uint8_t * event){
10664     return &event[6u + event[5] + 1u];
10665 }
10666 
10667 /**
10668  * @brief Get field hid_cid from event HID_SUBEVENT_INCOMING_CONNECTION
10669  * @param event packet
10670  * @return hid_cid
10671  * @note: btstack_type 2
10672  */
10673 static inline uint16_t hid_subevent_incoming_connection_get_hid_cid(const uint8_t * event){
10674     return little_endian_read_16(event, 3);
10675 }
10676 /**
10677  * @brief Get field address from event HID_SUBEVENT_INCOMING_CONNECTION
10678  * @param event packet
10679  * @param Pointer to storage for address
10680  * @note: btstack_type B
10681  */
10682 static inline void hid_subevent_incoming_connection_get_address(const uint8_t * event, bd_addr_t address){
10683     reverse_bytes(&event[5], address, 6);
10684 }
10685 /**
10686  * @brief Get field handle from event HID_SUBEVENT_INCOMING_CONNECTION
10687  * @param event packet
10688  * @return handle
10689  * @note: btstack_type H
10690  */
10691 static inline hci_con_handle_t hid_subevent_incoming_connection_get_handle(const uint8_t * event){
10692     return little_endian_read_16(event, 11);
10693 }
10694 
10695 /**
10696  * @brief Get field hid_cid from event HID_SUBEVENT_CONNECTION_OPENED
10697  * @param event packet
10698  * @return hid_cid
10699  * @note: btstack_type 2
10700  */
10701 static inline uint16_t hid_subevent_connection_opened_get_hid_cid(const uint8_t * event){
10702     return little_endian_read_16(event, 3);
10703 }
10704 /**
10705  * @brief Get field status from event HID_SUBEVENT_CONNECTION_OPENED
10706  * @param event packet
10707  * @return status
10708  * @note: btstack_type 1
10709  */
10710 static inline uint8_t hid_subevent_connection_opened_get_status(const uint8_t * event){
10711     return event[5];
10712 }
10713 /**
10714  * @brief Get field bd_addr from event HID_SUBEVENT_CONNECTION_OPENED
10715  * @param event packet
10716  * @param Pointer to storage for bd_addr
10717  * @note: btstack_type B
10718  */
10719 static inline void hid_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
10720     reverse_bytes(&event[6], bd_addr, 6);
10721 }
10722 /**
10723  * @brief Get field con_handle from event HID_SUBEVENT_CONNECTION_OPENED
10724  * @param event packet
10725  * @return con_handle
10726  * @note: btstack_type H
10727  */
10728 static inline hci_con_handle_t hid_subevent_connection_opened_get_con_handle(const uint8_t * event){
10729     return little_endian_read_16(event, 12);
10730 }
10731 /**
10732  * @brief Get field incoming from event HID_SUBEVENT_CONNECTION_OPENED
10733  * @param event packet
10734  * @return incoming
10735  * @note: btstack_type 1
10736  */
10737 static inline uint8_t hid_subevent_connection_opened_get_incoming(const uint8_t * event){
10738     return event[14];
10739 }
10740 
10741 /**
10742  * @brief Get field hid_cid from event HID_SUBEVENT_CONNECTION_CLOSED
10743  * @param event packet
10744  * @return hid_cid
10745  * @note: btstack_type 2
10746  */
10747 static inline uint16_t hid_subevent_connection_closed_get_hid_cid(const uint8_t * event){
10748     return little_endian_read_16(event, 3);
10749 }
10750 
10751 /**
10752  * @brief Get field hid_cid from event HID_SUBEVENT_CAN_SEND_NOW
10753  * @param event packet
10754  * @return hid_cid
10755  * @note: btstack_type 2
10756  */
10757 static inline uint16_t hid_subevent_can_send_now_get_hid_cid(const uint8_t * event){
10758     return little_endian_read_16(event, 3);
10759 }
10760 
10761 /**
10762  * @brief Get field hid_cid from event HID_SUBEVENT_SUSPEND
10763  * @param event packet
10764  * @return hid_cid
10765  * @note: btstack_type 2
10766  */
10767 static inline uint16_t hid_subevent_suspend_get_hid_cid(const uint8_t * event){
10768     return little_endian_read_16(event, 3);
10769 }
10770 
10771 /**
10772  * @brief Get field hid_cid from event HID_SUBEVENT_EXIT_SUSPEND
10773  * @param event packet
10774  * @return hid_cid
10775  * @note: btstack_type 2
10776  */
10777 static inline uint16_t hid_subevent_exit_suspend_get_hid_cid(const uint8_t * event){
10778     return little_endian_read_16(event, 3);
10779 }
10780 
10781 /**
10782  * @brief Get field hid_cid from event HID_SUBEVENT_VIRTUAL_CABLE_UNPLUG
10783  * @param event packet
10784  * @return hid_cid
10785  * @note: btstack_type 2
10786  */
10787 static inline uint16_t hid_subevent_virtual_cable_unplug_get_hid_cid(const uint8_t * event){
10788     return little_endian_read_16(event, 3);
10789 }
10790 
10791 /**
10792  * @brief Get field hid_cid from event HID_SUBEVENT_GET_REPORT_RESPONSE
10793  * @param event packet
10794  * @return hid_cid
10795  * @note: btstack_type 2
10796  */
10797 static inline uint16_t hid_subevent_get_report_response_get_hid_cid(const uint8_t * event){
10798     return little_endian_read_16(event, 3);
10799 }
10800 /**
10801  * @brief Get field handshake_status from event HID_SUBEVENT_GET_REPORT_RESPONSE
10802  * @param event packet
10803  * @return handshake_status
10804  * @note: btstack_type 1
10805  */
10806 static inline uint8_t hid_subevent_get_report_response_get_handshake_status(const uint8_t * event){
10807     return event[5];
10808 }
10809 /**
10810  * @brief Get field report_len from event HID_SUBEVENT_GET_REPORT_RESPONSE
10811  * @param event packet
10812  * @return report_len
10813  * @note: btstack_type L
10814  */
10815 static inline uint16_t hid_subevent_get_report_response_get_report_len(const uint8_t * event){
10816     return little_endian_read_16(event, 6);
10817 }
10818 /**
10819  * @brief Get field report from event HID_SUBEVENT_GET_REPORT_RESPONSE
10820  * @param event packet
10821  * @return report
10822  * @note: btstack_type V
10823  */
10824 static inline const uint8_t * hid_subevent_get_report_response_get_report(const uint8_t * event){
10825     return &event[8];
10826 }
10827 
10828 /**
10829  * @brief Get field hid_cid from event HID_SUBEVENT_SET_REPORT_RESPONSE
10830  * @param event packet
10831  * @return hid_cid
10832  * @note: btstack_type 2
10833  */
10834 static inline uint16_t hid_subevent_set_report_response_get_hid_cid(const uint8_t * event){
10835     return little_endian_read_16(event, 3);
10836 }
10837 /**
10838  * @brief Get field handshake_status from event HID_SUBEVENT_SET_REPORT_RESPONSE
10839  * @param event packet
10840  * @return handshake_status
10841  * @note: btstack_type 1
10842  */
10843 static inline uint8_t hid_subevent_set_report_response_get_handshake_status(const uint8_t * event){
10844     return event[5];
10845 }
10846 
10847 /**
10848  * @brief Get field hid_cid from event HID_SUBEVENT_GET_PROTOCOL_RESPONSE
10849  * @param event packet
10850  * @return hid_cid
10851  * @note: btstack_type 2
10852  */
10853 static inline uint16_t hid_subevent_get_protocol_response_get_hid_cid(const uint8_t * event){
10854     return little_endian_read_16(event, 3);
10855 }
10856 /**
10857  * @brief Get field handshake_status from event HID_SUBEVENT_GET_PROTOCOL_RESPONSE
10858  * @param event packet
10859  * @return handshake_status
10860  * @note: btstack_type 1
10861  */
10862 static inline uint8_t hid_subevent_get_protocol_response_get_handshake_status(const uint8_t * event){
10863     return event[5];
10864 }
10865 /**
10866  * @brief Get field protocol_mode from event HID_SUBEVENT_GET_PROTOCOL_RESPONSE
10867  * @param event packet
10868  * @return protocol_mode
10869  * @note: btstack_type 1
10870  */
10871 static inline uint8_t hid_subevent_get_protocol_response_get_protocol_mode(const uint8_t * event){
10872     return event[6];
10873 }
10874 
10875 /**
10876  * @brief Get field hid_cid from event HID_SUBEVENT_SET_PROTOCOL_RESPONSE
10877  * @param event packet
10878  * @return hid_cid
10879  * @note: btstack_type 2
10880  */
10881 static inline uint16_t hid_subevent_set_protocol_response_get_hid_cid(const uint8_t * event){
10882     return little_endian_read_16(event, 3);
10883 }
10884 /**
10885  * @brief Get field handshake_status from event HID_SUBEVENT_SET_PROTOCOL_RESPONSE
10886  * @param event packet
10887  * @return handshake_status
10888  * @note: btstack_type 1
10889  */
10890 static inline uint8_t hid_subevent_set_protocol_response_get_handshake_status(const uint8_t * event){
10891     return event[5];
10892 }
10893 /**
10894  * @brief Get field protocol_mode from event HID_SUBEVENT_SET_PROTOCOL_RESPONSE
10895  * @param event packet
10896  * @return protocol_mode
10897  * @note: btstack_type 1
10898  */
10899 static inline uint8_t hid_subevent_set_protocol_response_get_protocol_mode(const uint8_t * event){
10900     return event[6];
10901 }
10902 
10903 /**
10904  * @brief Get field hid_cid from event HID_SUBEVENT_REPORT
10905  * @param event packet
10906  * @return hid_cid
10907  * @note: btstack_type 2
10908  */
10909 static inline uint16_t hid_subevent_report_get_hid_cid(const uint8_t * event){
10910     return little_endian_read_16(event, 3);
10911 }
10912 /**
10913  * @brief Get field report_len from event HID_SUBEVENT_REPORT
10914  * @param event packet
10915  * @return report_len
10916  * @note: btstack_type L
10917  */
10918 static inline uint16_t hid_subevent_report_get_report_len(const uint8_t * event){
10919     return little_endian_read_16(event, 5);
10920 }
10921 /**
10922  * @brief Get field report from event HID_SUBEVENT_REPORT
10923  * @param event packet
10924  * @return report
10925  * @note: btstack_type V
10926  */
10927 static inline const uint8_t * hid_subevent_report_get_report(const uint8_t * event){
10928     return &event[7];
10929 }
10930 
10931 /**
10932  * @brief Get field hid_cid from event HID_SUBEVENT_DESCRIPTOR_AVAILABLE
10933  * @param event packet
10934  * @return hid_cid
10935  * @note: btstack_type 2
10936  */
10937 static inline uint16_t hid_subevent_descriptor_available_get_hid_cid(const uint8_t * event){
10938     return little_endian_read_16(event, 3);
10939 }
10940 /**
10941  * @brief Get field status from event HID_SUBEVENT_DESCRIPTOR_AVAILABLE
10942  * @param event packet
10943  * @return status
10944  * @note: btstack_type 1
10945  */
10946 static inline uint8_t hid_subevent_descriptor_available_get_status(const uint8_t * event){
10947     return event[5];
10948 }
10949 
10950 /**
10951  * @brief Get field hid_cid from event HID_SUBEVENT_SNIFF_SUBRATING_PARAMS
10952  * @param event packet
10953  * @return hid_cid
10954  * @note: btstack_type 2
10955  */
10956 static inline uint16_t hid_subevent_sniff_subrating_params_get_hid_cid(const uint8_t * event){
10957     return little_endian_read_16(event, 3);
10958 }
10959 /**
10960  * @brief Get field host_max_latency from event HID_SUBEVENT_SNIFF_SUBRATING_PARAMS
10961  * @param event packet
10962  * @return host_max_latency
10963  * @note: btstack_type 2
10964  */
10965 static inline uint16_t hid_subevent_sniff_subrating_params_get_host_max_latency(const uint8_t * event){
10966     return little_endian_read_16(event, 5);
10967 }
10968 /**
10969  * @brief Get field host_min_timeout from event HID_SUBEVENT_SNIFF_SUBRATING_PARAMS
10970  * @param event packet
10971  * @return host_min_timeout
10972  * @note: btstack_type 2
10973  */
10974 static inline uint16_t hid_subevent_sniff_subrating_params_get_host_min_timeout(const uint8_t * event){
10975     return little_endian_read_16(event, 7);
10976 }
10977 
10978 /**
10979  * @brief Get field con_handle from event HIDS_SUBEVENT_CAN_SEND_NOW
10980  * @param event packet
10981  * @return con_handle
10982  * @note: btstack_type 2
10983  */
10984 static inline uint16_t hids_subevent_can_send_now_get_con_handle(const uint8_t * event){
10985     return little_endian_read_16(event, 3);
10986 }
10987 
10988 /**
10989  * @brief Get field con_handle from event HIDS_SUBEVENT_PROTOCOL_MODE
10990  * @param event packet
10991  * @return con_handle
10992  * @note: btstack_type 2
10993  */
10994 static inline uint16_t hids_subevent_protocol_mode_get_con_handle(const uint8_t * event){
10995     return little_endian_read_16(event, 3);
10996 }
10997 /**
10998  * @brief Get field protocol_mode from event HIDS_SUBEVENT_PROTOCOL_MODE
10999  * @param event packet
11000  * @return protocol_mode
11001  * @note: btstack_type 1
11002  */
11003 static inline uint8_t hids_subevent_protocol_mode_get_protocol_mode(const uint8_t * event){
11004     return event[5];
11005 }
11006 
11007 /**
11008  * @brief Get field con_handle from event HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE
11009  * @param event packet
11010  * @return con_handle
11011  * @note: btstack_type 2
11012  */
11013 static inline uint16_t hids_subevent_boot_mouse_input_report_enable_get_con_handle(const uint8_t * event){
11014     return little_endian_read_16(event, 3);
11015 }
11016 /**
11017  * @brief Get field enable from event HIDS_SUBEVENT_BOOT_MOUSE_INPUT_REPORT_ENABLE
11018  * @param event packet
11019  * @return enable
11020  * @note: btstack_type 1
11021  */
11022 static inline uint8_t hids_subevent_boot_mouse_input_report_enable_get_enable(const uint8_t * event){
11023     return event[5];
11024 }
11025 
11026 /**
11027  * @brief Get field con_handle from event HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE
11028  * @param event packet
11029  * @return con_handle
11030  * @note: btstack_type 2
11031  */
11032 static inline uint16_t hids_subevent_boot_keyboard_input_report_enable_get_con_handle(const uint8_t * event){
11033     return little_endian_read_16(event, 3);
11034 }
11035 /**
11036  * @brief Get field enable from event HIDS_SUBEVENT_BOOT_KEYBOARD_INPUT_REPORT_ENABLE
11037  * @param event packet
11038  * @return enable
11039  * @note: btstack_type 1
11040  */
11041 static inline uint8_t hids_subevent_boot_keyboard_input_report_enable_get_enable(const uint8_t * event){
11042     return event[5];
11043 }
11044 
11045 /**
11046  * @brief Get field con_handle from event HIDS_SUBEVENT_INPUT_REPORT_ENABLE
11047  * @param event packet
11048  * @return con_handle
11049  * @note: btstack_type 2
11050  */
11051 static inline uint16_t hids_subevent_input_report_enable_get_con_handle(const uint8_t * event){
11052     return little_endian_read_16(event, 3);
11053 }
11054 /**
11055  * @brief Get field enable from event HIDS_SUBEVENT_INPUT_REPORT_ENABLE
11056  * @param event packet
11057  * @return enable
11058  * @note: btstack_type 1
11059  */
11060 static inline uint8_t hids_subevent_input_report_enable_get_enable(const uint8_t * event){
11061     return event[5];
11062 }
11063 
11064 /**
11065  * @brief Get field con_handle from event HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE
11066  * @param event packet
11067  * @return con_handle
11068  * @note: btstack_type 2
11069  */
11070 static inline uint16_t hids_subevent_output_report_enable_get_con_handle(const uint8_t * event){
11071     return little_endian_read_16(event, 3);
11072 }
11073 /**
11074  * @brief Get field enable from event HIDS_SUBEVENT_OUTPUT_REPORT_ENABLE
11075  * @param event packet
11076  * @return enable
11077  * @note: btstack_type 1
11078  */
11079 static inline uint8_t hids_subevent_output_report_enable_get_enable(const uint8_t * event){
11080     return event[5];
11081 }
11082 
11083 /**
11084  * @brief Get field con_handle from event HIDS_SUBEVENT_FEATURE_REPORT_ENABLE
11085  * @param event packet
11086  * @return con_handle
11087  * @note: btstack_type 2
11088  */
11089 static inline uint16_t hids_subevent_feature_report_enable_get_con_handle(const uint8_t * event){
11090     return little_endian_read_16(event, 3);
11091 }
11092 /**
11093  * @brief Get field enable from event HIDS_SUBEVENT_FEATURE_REPORT_ENABLE
11094  * @param event packet
11095  * @return enable
11096  * @note: btstack_type 1
11097  */
11098 static inline uint8_t hids_subevent_feature_report_enable_get_enable(const uint8_t * event){
11099     return event[5];
11100 }
11101 
11102 /**
11103  * @brief Get field con_handle from event HIDS_SUBEVENT_SUSPEND
11104  * @param event packet
11105  * @return con_handle
11106  * @note: btstack_type 2
11107  */
11108 static inline uint16_t hids_subevent_suspend_get_con_handle(const uint8_t * event){
11109     return little_endian_read_16(event, 3);
11110 }
11111 
11112 /**
11113  * @brief Get field con_handle from event HIDS_SUBEVENT_EXIT_SUSPEND
11114  * @param event packet
11115  * @return con_handle
11116  * @note: btstack_type 2
11117  */
11118 static inline uint16_t hids_subevent_exit_suspend_get_con_handle(const uint8_t * event){
11119     return little_endian_read_16(event, 3);
11120 }
11121 
11122 /**
11123  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
11124  * @param event packet
11125  * @return con_handle
11126  * @note: btstack_type 2
11127  */
11128 static inline uint16_t gattservice_subevent_cycling_power_start_calibration_get_con_handle(const uint8_t * event){
11129     return little_endian_read_16(event, 3);
11130 }
11131 /**
11132  * @brief Get field measurement_type from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
11133  * @param event packet
11134  * @return measurement_type
11135  * @note: btstack_type 1
11136  */
11137 static inline uint8_t gattservice_subevent_cycling_power_start_calibration_get_measurement_type(const uint8_t * event){
11138     return event[5];
11139 }
11140 /**
11141  * @brief Get field is_enhanced from event GATTSERVICE_SUBEVENT_CYCLING_POWER_START_CALIBRATION
11142  * @param event packet
11143  * @return is_enhanced
11144  * @note: btstack_type 1
11145  */
11146 static inline uint8_t gattservice_subevent_cycling_power_start_calibration_get_is_enhanced(const uint8_t * event){
11147     return event[6];
11148 }
11149 
11150 /**
11151  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_START
11152  * @param event packet
11153  * @return con_handle
11154  * @note: btstack_type 2
11155  */
11156 static inline uint16_t gattservice_subevent_cycling_power_broadcast_start_get_con_handle(const uint8_t * event){
11157     return little_endian_read_16(event, 3);
11158 }
11159 
11160 /**
11161  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_CYCLING_POWER_BROADCAST_STOP
11162  * @param event packet
11163  * @return con_handle
11164  * @note: btstack_type 2
11165  */
11166 static inline uint16_t gattservice_subevent_cycling_power_broadcast_stop_get_con_handle(const uint8_t * event){
11167     return little_endian_read_16(event, 3);
11168 }
11169 
11170 /**
11171  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_CONNECTED
11172  * @param event packet
11173  * @return hids_cid
11174  * @note: btstack_type 2
11175  */
11176 static inline uint16_t gattservice_subevent_battery_service_connected_get_hids_cid(const uint8_t * event){
11177     return little_endian_read_16(event, 3);
11178 }
11179 /**
11180  * @brief Get field status from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_CONNECTED
11181  * @param event packet
11182  * @return status
11183  * @note: btstack_type 1
11184  */
11185 static inline uint8_t gattservice_subevent_battery_service_connected_get_status(const uint8_t * event){
11186     return event[5];
11187 }
11188 /**
11189  * @brief Get field num_instances from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_CONNECTED
11190  * @param event packet
11191  * @return num_instances
11192  * @note: btstack_type 1
11193  */
11194 static inline uint8_t gattservice_subevent_battery_service_connected_get_num_instances(const uint8_t * event){
11195     return event[6];
11196 }
11197 /**
11198  * @brief Get field poll_bitmap from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_CONNECTED
11199  * @param event packet
11200  * @return poll_bitmap
11201  * @note: btstack_type 1
11202  */
11203 static inline uint8_t gattservice_subevent_battery_service_connected_get_poll_bitmap(const uint8_t * event){
11204     return event[7];
11205 }
11206 
11207 /**
11208  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_LEVEL
11209  * @param event packet
11210  * @return hids_cid
11211  * @note: btstack_type 2
11212  */
11213 static inline uint16_t gattservice_subevent_battery_service_level_get_hids_cid(const uint8_t * event){
11214     return little_endian_read_16(event, 3);
11215 }
11216 /**
11217  * @brief Get field sevice_index from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_LEVEL
11218  * @param event packet
11219  * @return sevice_index
11220  * @note: btstack_type 1
11221  */
11222 static inline uint8_t gattservice_subevent_battery_service_level_get_sevice_index(const uint8_t * event){
11223     return event[5];
11224 }
11225 /**
11226  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_LEVEL
11227  * @param event packet
11228  * @return att_status
11229  * @note: btstack_type 1
11230  */
11231 static inline uint8_t gattservice_subevent_battery_service_level_get_att_status(const uint8_t * event){
11232     return event[6];
11233 }
11234 /**
11235  * @brief Get field level from event GATTSERVICE_SUBEVENT_BATTERY_SERVICE_LEVEL
11236  * @param event packet
11237  * @return level
11238  * @note: btstack_type 1
11239  */
11240 static inline uint8_t gattservice_subevent_battery_service_level_get_level(const uint8_t * event){
11241     return event[7];
11242 }
11243 
11244 /**
11245  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_DONE
11246  * @param event packet
11247  * @return con_handle
11248  * @note: btstack_type H
11249  */
11250 static inline hci_con_handle_t gattservice_subevent_device_information_done_get_con_handle(const uint8_t * event){
11251     return little_endian_read_16(event, 3);
11252 }
11253 /**
11254  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_DONE
11255  * @param event packet
11256  * @return att_status
11257  * @note: btstack_type 1
11258  */
11259 static inline uint8_t gattservice_subevent_device_information_done_get_att_status(const uint8_t * event){
11260     return event[5];
11261 }
11262 
11263 /**
11264  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MANUFACTURER_NAME
11265  * @param event packet
11266  * @return con_handle
11267  * @note: btstack_type H
11268  */
11269 static inline hci_con_handle_t gattservice_subevent_device_information_manufacturer_name_get_con_handle(const uint8_t * event){
11270     return little_endian_read_16(event, 3);
11271 }
11272 /**
11273  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MANUFACTURER_NAME
11274  * @param event packet
11275  * @return att_status
11276  * @note: btstack_type 1
11277  */
11278 static inline uint8_t gattservice_subevent_device_information_manufacturer_name_get_att_status(const uint8_t * event){
11279     return event[5];
11280 }
11281 /**
11282  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MANUFACTURER_NAME
11283  * @param event packet
11284  * @return value
11285  * @note: btstack_type T
11286  */
11287 static inline const char * gattservice_subevent_device_information_manufacturer_name_get_value(const uint8_t * event){
11288     return (const char *) &event[6];
11289 }
11290 
11291 /**
11292  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MODEL_NUMBER
11293  * @param event packet
11294  * @return con_handle
11295  * @note: btstack_type H
11296  */
11297 static inline hci_con_handle_t gattservice_subevent_device_information_model_number_get_con_handle(const uint8_t * event){
11298     return little_endian_read_16(event, 3);
11299 }
11300 /**
11301  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MODEL_NUMBER
11302  * @param event packet
11303  * @return att_status
11304  * @note: btstack_type 1
11305  */
11306 static inline uint8_t gattservice_subevent_device_information_model_number_get_att_status(const uint8_t * event){
11307     return event[5];
11308 }
11309 /**
11310  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_MODEL_NUMBER
11311  * @param event packet
11312  * @return value
11313  * @note: btstack_type T
11314  */
11315 static inline const char * gattservice_subevent_device_information_model_number_get_value(const uint8_t * event){
11316     return (const char *) &event[6];
11317 }
11318 
11319 /**
11320  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SERIAL_NUMBER
11321  * @param event packet
11322  * @return con_handle
11323  * @note: btstack_type H
11324  */
11325 static inline hci_con_handle_t gattservice_subevent_device_information_serial_number_get_con_handle(const uint8_t * event){
11326     return little_endian_read_16(event, 3);
11327 }
11328 /**
11329  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SERIAL_NUMBER
11330  * @param event packet
11331  * @return att_status
11332  * @note: btstack_type 1
11333  */
11334 static inline uint8_t gattservice_subevent_device_information_serial_number_get_att_status(const uint8_t * event){
11335     return event[5];
11336 }
11337 /**
11338  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SERIAL_NUMBER
11339  * @param event packet
11340  * @return value
11341  * @note: btstack_type T
11342  */
11343 static inline const char * gattservice_subevent_device_information_serial_number_get_value(const uint8_t * event){
11344     return (const char *) &event[6];
11345 }
11346 
11347 /**
11348  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_HARDWARE_REVISION
11349  * @param event packet
11350  * @return con_handle
11351  * @note: btstack_type H
11352  */
11353 static inline hci_con_handle_t gattservice_subevent_device_information_hardware_revision_get_con_handle(const uint8_t * event){
11354     return little_endian_read_16(event, 3);
11355 }
11356 /**
11357  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_HARDWARE_REVISION
11358  * @param event packet
11359  * @return att_status
11360  * @note: btstack_type 1
11361  */
11362 static inline uint8_t gattservice_subevent_device_information_hardware_revision_get_att_status(const uint8_t * event){
11363     return event[5];
11364 }
11365 /**
11366  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_HARDWARE_REVISION
11367  * @param event packet
11368  * @return value
11369  * @note: btstack_type T
11370  */
11371 static inline const char * gattservice_subevent_device_information_hardware_revision_get_value(const uint8_t * event){
11372     return (const char *) &event[6];
11373 }
11374 
11375 /**
11376  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_FIRMWARE_REVISION
11377  * @param event packet
11378  * @return con_handle
11379  * @note: btstack_type H
11380  */
11381 static inline hci_con_handle_t gattservice_subevent_device_information_firmware_revision_get_con_handle(const uint8_t * event){
11382     return little_endian_read_16(event, 3);
11383 }
11384 /**
11385  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_FIRMWARE_REVISION
11386  * @param event packet
11387  * @return att_status
11388  * @note: btstack_type 1
11389  */
11390 static inline uint8_t gattservice_subevent_device_information_firmware_revision_get_att_status(const uint8_t * event){
11391     return event[5];
11392 }
11393 /**
11394  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_FIRMWARE_REVISION
11395  * @param event packet
11396  * @return value
11397  * @note: btstack_type T
11398  */
11399 static inline const char * gattservice_subevent_device_information_firmware_revision_get_value(const uint8_t * event){
11400     return (const char *) &event[6];
11401 }
11402 
11403 /**
11404  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SOFTWARE_REVISION
11405  * @param event packet
11406  * @return con_handle
11407  * @note: btstack_type H
11408  */
11409 static inline hci_con_handle_t gattservice_subevent_device_information_software_revision_get_con_handle(const uint8_t * event){
11410     return little_endian_read_16(event, 3);
11411 }
11412 /**
11413  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SOFTWARE_REVISION
11414  * @param event packet
11415  * @return att_status
11416  * @note: btstack_type 1
11417  */
11418 static inline uint8_t gattservice_subevent_device_information_software_revision_get_att_status(const uint8_t * event){
11419     return event[5];
11420 }
11421 /**
11422  * @brief Get field value from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SOFTWARE_REVISION
11423  * @param event packet
11424  * @return value
11425  * @note: btstack_type T
11426  */
11427 static inline const char * gattservice_subevent_device_information_software_revision_get_value(const uint8_t * event){
11428     return (const char *) &event[6];
11429 }
11430 
11431 /**
11432  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID
11433  * @param event packet
11434  * @return con_handle
11435  * @note: btstack_type H
11436  */
11437 static inline hci_con_handle_t gattservice_subevent_device_information_system_id_get_con_handle(const uint8_t * event){
11438     return little_endian_read_16(event, 3);
11439 }
11440 /**
11441  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID
11442  * @param event packet
11443  * @return att_status
11444  * @note: btstack_type 1
11445  */
11446 static inline uint8_t gattservice_subevent_device_information_system_id_get_att_status(const uint8_t * event){
11447     return event[5];
11448 }
11449 /**
11450  * @brief Get field manufacturer_id_low from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID
11451  * @param event packet
11452  * @return manufacturer_id_low
11453  * @note: btstack_type 4
11454  */
11455 static inline uint32_t gattservice_subevent_device_information_system_id_get_manufacturer_id_low(const uint8_t * event){
11456     return little_endian_read_32(event, 6);
11457 }
11458 /**
11459  * @brief Get field manufacturer_id_high from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID
11460  * @param event packet
11461  * @return manufacturer_id_high
11462  * @note: btstack_type 1
11463  */
11464 static inline uint8_t gattservice_subevent_device_information_system_id_get_manufacturer_id_high(const uint8_t * event){
11465     return event[10];
11466 }
11467 /**
11468  * @brief Get field organizationally_unique_id from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_SYSTEM_ID
11469  * @param event packet
11470  * @return organizationally_unique_id
11471  * @note: btstack_type 3
11472  */
11473 static inline uint32_t gattservice_subevent_device_information_system_id_get_organizationally_unique_id(const uint8_t * event){
11474     return little_endian_read_24(event, 11);
11475 }
11476 
11477 /**
11478  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_IEEE_REGULATORY_CERTIFICATION
11479  * @param event packet
11480  * @return con_handle
11481  * @note: btstack_type H
11482  */
11483 static inline hci_con_handle_t gattservice_subevent_device_information_ieee_regulatory_certification_get_con_handle(const uint8_t * event){
11484     return little_endian_read_16(event, 3);
11485 }
11486 /**
11487  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_IEEE_REGULATORY_CERTIFICATION
11488  * @param event packet
11489  * @return att_status
11490  * @note: btstack_type 1
11491  */
11492 static inline uint8_t gattservice_subevent_device_information_ieee_regulatory_certification_get_att_status(const uint8_t * event){
11493     return event[5];
11494 }
11495 /**
11496  * @brief Get field value_a from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_IEEE_REGULATORY_CERTIFICATION
11497  * @param event packet
11498  * @return value_a
11499  * @note: btstack_type 2
11500  */
11501 static inline uint16_t gattservice_subevent_device_information_ieee_regulatory_certification_get_value_a(const uint8_t * event){
11502     return little_endian_read_16(event, 6);
11503 }
11504 /**
11505  * @brief Get field value_b from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_IEEE_REGULATORY_CERTIFICATION
11506  * @param event packet
11507  * @return value_b
11508  * @note: btstack_type 2
11509  */
11510 static inline uint16_t gattservice_subevent_device_information_ieee_regulatory_certification_get_value_b(const uint8_t * event){
11511     return little_endian_read_16(event, 8);
11512 }
11513 
11514 /**
11515  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11516  * @param event packet
11517  * @return con_handle
11518  * @note: btstack_type H
11519  */
11520 static inline hci_con_handle_t gattservice_subevent_device_information_pnp_id_get_con_handle(const uint8_t * event){
11521     return little_endian_read_16(event, 3);
11522 }
11523 /**
11524  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11525  * @param event packet
11526  * @return att_status
11527  * @note: btstack_type 1
11528  */
11529 static inline uint8_t gattservice_subevent_device_information_pnp_id_get_att_status(const uint8_t * event){
11530     return event[5];
11531 }
11532 /**
11533  * @brief Get field vendor_source_id from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11534  * @param event packet
11535  * @return vendor_source_id
11536  * @note: btstack_type 1
11537  */
11538 static inline uint8_t gattservice_subevent_device_information_pnp_id_get_vendor_source_id(const uint8_t * event){
11539     return event[6];
11540 }
11541 /**
11542  * @brief Get field vendor_id from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11543  * @param event packet
11544  * @return vendor_id
11545  * @note: btstack_type 2
11546  */
11547 static inline uint16_t gattservice_subevent_device_information_pnp_id_get_vendor_id(const uint8_t * event){
11548     return little_endian_read_16(event, 7);
11549 }
11550 /**
11551  * @brief Get field product_id from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11552  * @param event packet
11553  * @return product_id
11554  * @note: btstack_type 2
11555  */
11556 static inline uint16_t gattservice_subevent_device_information_pnp_id_get_product_id(const uint8_t * event){
11557     return little_endian_read_16(event, 9);
11558 }
11559 /**
11560  * @brief Get field product_version from event GATTSERVICE_SUBEVENT_DEVICE_INFORMATION_PNP_ID
11561  * @param event packet
11562  * @return product_version
11563  * @note: btstack_type 2
11564  */
11565 static inline uint16_t gattservice_subevent_device_information_pnp_id_get_product_version(const uint8_t * event){
11566     return little_endian_read_16(event, 11);
11567 }
11568 
11569 /**
11570  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_CONNECTED
11571  * @param event packet
11572  * @return con_handle
11573  * @note: btstack_type H
11574  */
11575 static inline hci_con_handle_t gattservice_subevent_scan_parameters_service_connected_get_con_handle(const uint8_t * event){
11576     return little_endian_read_16(event, 3);
11577 }
11578 /**
11579  * @brief Get field att_status from event GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_CONNECTED
11580  * @param event packet
11581  * @return att_status
11582  * @note: btstack_type 1
11583  */
11584 static inline uint8_t gattservice_subevent_scan_parameters_service_connected_get_att_status(const uint8_t * event){
11585     return event[5];
11586 }
11587 
11588 /**
11589  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_SPP_SERVICE_CONNECTED
11590  * @param event packet
11591  * @return con_handle
11592  * @note: btstack_type H
11593  */
11594 static inline hci_con_handle_t gattservice_subevent_spp_service_connected_get_con_handle(const uint8_t * event){
11595     return little_endian_read_16(event, 3);
11596 }
11597 
11598 /**
11599  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_SPP_SERVICE_DISCONNECTED
11600  * @param event packet
11601  * @return con_handle
11602  * @note: btstack_type H
11603  */
11604 static inline hci_con_handle_t gattservice_subevent_spp_service_disconnected_get_con_handle(const uint8_t * event){
11605     return little_endian_read_16(event, 3);
11606 }
11607 
11608 /**
11609  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_HID_SERVICE_CONNECTED
11610  * @param event packet
11611  * @return hids_cid
11612  * @note: btstack_type 2
11613  */
11614 static inline uint16_t gattservice_subevent_hid_service_connected_get_hids_cid(const uint8_t * event){
11615     return little_endian_read_16(event, 3);
11616 }
11617 /**
11618  * @brief Get field status from event GATTSERVICE_SUBEVENT_HID_SERVICE_CONNECTED
11619  * @param event packet
11620  * @return status
11621  * @note: btstack_type 1
11622  */
11623 static inline uint8_t gattservice_subevent_hid_service_connected_get_status(const uint8_t * event){
11624     return event[5];
11625 }
11626 /**
11627  * @brief Get field protocol_mode from event GATTSERVICE_SUBEVENT_HID_SERVICE_CONNECTED
11628  * @param event packet
11629  * @return protocol_mode
11630  * @note: btstack_type 1
11631  */
11632 static inline uint8_t gattservice_subevent_hid_service_connected_get_protocol_mode(const uint8_t * event){
11633     return event[6];
11634 }
11635 /**
11636  * @brief Get field num_instances from event GATTSERVICE_SUBEVENT_HID_SERVICE_CONNECTED
11637  * @param event packet
11638  * @return num_instances
11639  * @note: btstack_type 1
11640  */
11641 static inline uint8_t gattservice_subevent_hid_service_connected_get_num_instances(const uint8_t * event){
11642     return event[7];
11643 }
11644 
11645 /**
11646  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_HID_REPORT
11647  * @param event packet
11648  * @return hids_cid
11649  * @note: btstack_type 2
11650  */
11651 static inline uint16_t gattservice_subevent_hid_report_get_hids_cid(const uint8_t * event){
11652     return little_endian_read_16(event, 3);
11653 }
11654 /**
11655  * @brief Get field service_index from event GATTSERVICE_SUBEVENT_HID_REPORT
11656  * @param event packet
11657  * @return service_index
11658  * @note: btstack_type 1
11659  */
11660 static inline uint8_t gattservice_subevent_hid_report_get_service_index(const uint8_t * event){
11661     return event[5];
11662 }
11663 /**
11664  * @brief Get field report_id from event GATTSERVICE_SUBEVENT_HID_REPORT
11665  * @param event packet
11666  * @return report_id
11667  * @note: btstack_type 1
11668  */
11669 static inline uint8_t gattservice_subevent_hid_report_get_report_id(const uint8_t * event){
11670     return event[6];
11671 }
11672 /**
11673  * @brief Get field report_len from event GATTSERVICE_SUBEVENT_HID_REPORT
11674  * @param event packet
11675  * @return report_len
11676  * @note: btstack_type L
11677  */
11678 static inline uint16_t gattservice_subevent_hid_report_get_report_len(const uint8_t * event){
11679     return little_endian_read_16(event, 7);
11680 }
11681 /**
11682  * @brief Get field report from event GATTSERVICE_SUBEVENT_HID_REPORT
11683  * @param event packet
11684  * @return report
11685  * @note: btstack_type V
11686  */
11687 static inline const uint8_t * gattservice_subevent_hid_report_get_report(const uint8_t * event){
11688     return &event[9];
11689 }
11690 
11691 /**
11692  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11693  * @param event packet
11694  * @return hids_cid
11695  * @note: btstack_type 2
11696  */
11697 static inline uint16_t gattservice_subevent_hid_information_get_hids_cid(const uint8_t * event){
11698     return little_endian_read_16(event, 3);
11699 }
11700 /**
11701  * @brief Get field service_index from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11702  * @param event packet
11703  * @return service_index
11704  * @note: btstack_type 1
11705  */
11706 static inline uint8_t gattservice_subevent_hid_information_get_service_index(const uint8_t * event){
11707     return event[5];
11708 }
11709 /**
11710  * @brief Get field base_usb_hid_version from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11711  * @param event packet
11712  * @return base_usb_hid_version
11713  * @note: btstack_type 2
11714  */
11715 static inline uint16_t gattservice_subevent_hid_information_get_base_usb_hid_version(const uint8_t * event){
11716     return little_endian_read_16(event, 6);
11717 }
11718 /**
11719  * @brief Get field country_code from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11720  * @param event packet
11721  * @return country_code
11722  * @note: btstack_type 1
11723  */
11724 static inline uint8_t gattservice_subevent_hid_information_get_country_code(const uint8_t * event){
11725     return event[8];
11726 }
11727 /**
11728  * @brief Get field remote_wake from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11729  * @param event packet
11730  * @return remote_wake
11731  * @note: btstack_type 1
11732  */
11733 static inline uint8_t gattservice_subevent_hid_information_get_remote_wake(const uint8_t * event){
11734     return event[9];
11735 }
11736 /**
11737  * @brief Get field normally_connectable from event GATTSERVICE_SUBEVENT_HID_INFORMATION
11738  * @param event packet
11739  * @return normally_connectable
11740  * @note: btstack_type 1
11741  */
11742 static inline uint8_t gattservice_subevent_hid_information_get_normally_connectable(const uint8_t * event){
11743     return event[10];
11744 }
11745 
11746 /**
11747  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_HID_PROTOCOL_MODE
11748  * @param event packet
11749  * @return hids_cid
11750  * @note: btstack_type 2
11751  */
11752 static inline uint16_t gattservice_subevent_hid_protocol_mode_get_hids_cid(const uint8_t * event){
11753     return little_endian_read_16(event, 3);
11754 }
11755 /**
11756  * @brief Get field service_index from event GATTSERVICE_SUBEVENT_HID_PROTOCOL_MODE
11757  * @param event packet
11758  * @return service_index
11759  * @note: btstack_type 1
11760  */
11761 static inline uint8_t gattservice_subevent_hid_protocol_mode_get_service_index(const uint8_t * event){
11762     return event[5];
11763 }
11764 /**
11765  * @brief Get field protocol_mode from event GATTSERVICE_SUBEVENT_HID_PROTOCOL_MODE
11766  * @param event packet
11767  * @return protocol_mode
11768  * @note: btstack_type 1
11769  */
11770 static inline uint8_t gattservice_subevent_hid_protocol_mode_get_protocol_mode(const uint8_t * event){
11771     return event[6];
11772 }
11773 
11774 /**
11775  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_HID_SERVICE_REPORTS_NOTIFICATION
11776  * @param event packet
11777  * @return hids_cid
11778  * @note: btstack_type 2
11779  */
11780 static inline uint16_t gattservice_subevent_hid_service_reports_notification_get_hids_cid(const uint8_t * event){
11781     return little_endian_read_16(event, 3);
11782 }
11783 /**
11784  * @brief Get field configuration from event GATTSERVICE_SUBEVENT_HID_SERVICE_REPORTS_NOTIFICATION
11785  * @param event packet
11786  * @return configuration
11787  * @note: btstack_type 1
11788  */
11789 static inline uint8_t gattservice_subevent_hid_service_reports_notification_get_configuration(const uint8_t * event){
11790     return event[5];
11791 }
11792 
11793 /**
11794  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_SCAN_INTERVAL_UPDATE
11795  * @param event packet
11796  * @return con_handle
11797  * @note: btstack_type H
11798  */
11799 static inline hci_con_handle_t gattservice_subevent_scan_parameters_service_scan_interval_update_get_con_handle(const uint8_t * event){
11800     return little_endian_read_16(event, 3);
11801 }
11802 /**
11803  * @brief Get field max_scan_interval from event GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_SCAN_INTERVAL_UPDATE
11804  * @param event packet
11805  * @return max_scan_interval
11806  * @note: btstack_type 2
11807  */
11808 static inline uint16_t gattservice_subevent_scan_parameters_service_scan_interval_update_get_max_scan_interval(const uint8_t * event){
11809     return little_endian_read_16(event, 5);
11810 }
11811 /**
11812  * @brief Get field min_scan_window from event GATTSERVICE_SUBEVENT_SCAN_PARAMETERS_SERVICE_SCAN_INTERVAL_UPDATE
11813  * @param event packet
11814  * @return min_scan_window
11815  * @note: btstack_type 2
11816  */
11817 static inline uint16_t gattservice_subevent_scan_parameters_service_scan_interval_update_get_min_scan_window(const uint8_t * event){
11818     return little_endian_read_16(event, 7);
11819 }
11820 
11821 /**
11822  * @brief Get field hids_cid from event GATTSERVICE_SUBEVENT_MICS_CONNECTED
11823  * @param event packet
11824  * @return hids_cid
11825  * @note: btstack_type 2
11826  */
11827 static inline uint16_t gattservice_subevent_mics_connected_get_hids_cid(const uint8_t * event){
11828     return little_endian_read_16(event, 3);
11829 }
11830 /**
11831  * @brief Get field status from event GATTSERVICE_SUBEVENT_MICS_CONNECTED
11832  * @param event packet
11833  * @return status
11834  * @note: btstack_type 1
11835  */
11836 static inline uint8_t gattservice_subevent_mics_connected_get_status(const uint8_t * event){
11837     return event[5];
11838 }
11839 
11840 /**
11841  * @brief Get field cid from event GATTSERVICE_SUBEVENT_REMOTE_MICS_MUTE
11842  * @param event packet
11843  * @return cid
11844  * @note: btstack_type 2
11845  */
11846 static inline uint16_t gattservice_subevent_remote_mics_mute_get_cid(const uint8_t * event){
11847     return little_endian_read_16(event, 3);
11848 }
11849 /**
11850  * @brief Get field status from event GATTSERVICE_SUBEVENT_REMOTE_MICS_MUTE
11851  * @param event packet
11852  * @return status
11853  * @note: btstack_type 1
11854  */
11855 static inline uint8_t gattservice_subevent_remote_mics_mute_get_status(const uint8_t * event){
11856     return event[5];
11857 }
11858 /**
11859  * @brief Get field state from event GATTSERVICE_SUBEVENT_REMOTE_MICS_MUTE
11860  * @param event packet
11861  * @return state
11862  * @note: btstack_type 1
11863  */
11864 static inline uint8_t gattservice_subevent_remote_mics_mute_get_state(const uint8_t * event){
11865     return event[6];
11866 }
11867 
11868 /**
11869  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_LOCAL_MICS_MUTE
11870  * @param event packet
11871  * @return con_handle
11872  * @note: btstack_type 2
11873  */
11874 static inline uint16_t gattservice_subevent_local_mics_mute_get_con_handle(const uint8_t * event){
11875     return little_endian_read_16(event, 3);
11876 }
11877 /**
11878  * @brief Get field state from event GATTSERVICE_SUBEVENT_LOCAL_MICS_MUTE
11879  * @param event packet
11880  * @return state
11881  * @note: btstack_type 1
11882  */
11883 static inline uint8_t gattservice_subevent_local_mics_mute_get_state(const uint8_t * event){
11884     return event[5];
11885 }
11886 
11887 /**
11888  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_AICS_MUTE_MODE
11889  * @param event packet
11890  * @return con_handle
11891  * @note: btstack_type 2
11892  */
11893 static inline uint16_t gattservice_subevent_aics_mute_mode_get_con_handle(const uint8_t * event){
11894     return little_endian_read_16(event, 3);
11895 }
11896 /**
11897  * @brief Get field index from event GATTSERVICE_SUBEVENT_AICS_MUTE_MODE
11898  * @param event packet
11899  * @return index
11900  * @note: btstack_type 1
11901  */
11902 static inline uint8_t gattservice_subevent_aics_mute_mode_get_index(const uint8_t * event){
11903     return event[5];
11904 }
11905 /**
11906  * @brief Get field state from event GATTSERVICE_SUBEVENT_AICS_MUTE_MODE
11907  * @param event packet
11908  * @return state
11909  * @note: btstack_type 1
11910  */
11911 static inline uint8_t gattservice_subevent_aics_mute_mode_get_state(const uint8_t * event){
11912     return event[6];
11913 }
11914 
11915 /**
11916  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_AICS_GAIN_MODE
11917  * @param event packet
11918  * @return con_handle
11919  * @note: btstack_type 2
11920  */
11921 static inline uint16_t gattservice_subevent_aics_gain_mode_get_con_handle(const uint8_t * event){
11922     return little_endian_read_16(event, 3);
11923 }
11924 /**
11925  * @brief Get field index from event GATTSERVICE_SUBEVENT_AICS_GAIN_MODE
11926  * @param event packet
11927  * @return index
11928  * @note: btstack_type 1
11929  */
11930 static inline uint8_t gattservice_subevent_aics_gain_mode_get_index(const uint8_t * event){
11931     return event[5];
11932 }
11933 /**
11934  * @brief Get field state from event GATTSERVICE_SUBEVENT_AICS_GAIN_MODE
11935  * @param event packet
11936  * @return state
11937  * @note: btstack_type 1
11938  */
11939 static inline uint8_t gattservice_subevent_aics_gain_mode_get_state(const uint8_t * event){
11940     return event[6];
11941 }
11942 
11943 /**
11944  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_AICS_GAIN_CHANGED
11945  * @param event packet
11946  * @return con_handle
11947  * @note: btstack_type 2
11948  */
11949 static inline uint16_t gattservice_subevent_aics_gain_changed_get_con_handle(const uint8_t * event){
11950     return little_endian_read_16(event, 3);
11951 }
11952 /**
11953  * @brief Get field index from event GATTSERVICE_SUBEVENT_AICS_GAIN_CHANGED
11954  * @param event packet
11955  * @return index
11956  * @note: btstack_type 1
11957  */
11958 static inline uint8_t gattservice_subevent_aics_gain_changed_get_index(const uint8_t * event){
11959     return event[5];
11960 }
11961 /**
11962  * @brief Get field gain_db from event GATTSERVICE_SUBEVENT_AICS_GAIN_CHANGED
11963  * @param event packet
11964  * @return gain_db
11965  * @note: btstack_type 1
11966  */
11967 static inline uint8_t gattservice_subevent_aics_gain_changed_get_gain_db(const uint8_t * event){
11968     return event[6];
11969 }
11970 
11971 /**
11972  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_AICS_AUDIO_INPUT_DESC_CHANGED
11973  * @param event packet
11974  * @return con_handle
11975  * @note: btstack_type 2
11976  */
11977 static inline uint16_t gattservice_subevent_aics_audio_input_desc_changed_get_con_handle(const uint8_t * event){
11978     return little_endian_read_16(event, 3);
11979 }
11980 /**
11981  * @brief Get field index from event GATTSERVICE_SUBEVENT_AICS_AUDIO_INPUT_DESC_CHANGED
11982  * @param event packet
11983  * @return index
11984  * @note: btstack_type 1
11985  */
11986 static inline uint8_t gattservice_subevent_aics_audio_input_desc_changed_get_index(const uint8_t * event){
11987     return event[5];
11988 }
11989 /**
11990  * @brief Get field description_len from event GATTSERVICE_SUBEVENT_AICS_AUDIO_INPUT_DESC_CHANGED
11991  * @param event packet
11992  * @return description_len
11993  * @note: btstack_type J
11994  */
11995 static inline uint8_t gattservice_subevent_aics_audio_input_desc_changed_get_description_len(const uint8_t * event){
11996     return event[6];
11997 }
11998 /**
11999  * @brief Get field description from event GATTSERVICE_SUBEVENT_AICS_AUDIO_INPUT_DESC_CHANGED
12000  * @param event packet
12001  * @return description
12002  * @note: btstack_type V
12003  */
12004 static inline const uint8_t * gattservice_subevent_aics_audio_input_desc_changed_get_description(const uint8_t * event){
12005     return &event[7];
12006 }
12007 
12008 /**
12009  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_VOCS_VOLUME_OFFSET
12010  * @param event packet
12011  * @return con_handle
12012  * @note: btstack_type 2
12013  */
12014 static inline uint16_t gattservice_subevent_vocs_volume_offset_get_con_handle(const uint8_t * event){
12015     return little_endian_read_16(event, 3);
12016 }
12017 /**
12018  * @brief Get field index from event GATTSERVICE_SUBEVENT_VOCS_VOLUME_OFFSET
12019  * @param event packet
12020  * @return index
12021  * @note: btstack_type 1
12022  */
12023 static inline uint8_t gattservice_subevent_vocs_volume_offset_get_index(const uint8_t * event){
12024     return event[5];
12025 }
12026 /**
12027  * @brief Get field volume_offset from event GATTSERVICE_SUBEVENT_VOCS_VOLUME_OFFSET
12028  * @param event packet
12029  * @return volume_offset
12030  * @note: btstack_type 2
12031  */
12032 static inline uint16_t gattservice_subevent_vocs_volume_offset_get_volume_offset(const uint8_t * event){
12033     return little_endian_read_16(event, 6);
12034 }
12035 
12036 /**
12037  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_LOCATION
12038  * @param event packet
12039  * @return con_handle
12040  * @note: btstack_type 2
12041  */
12042 static inline uint16_t gattservice_subevent_vocs_audio_location_get_con_handle(const uint8_t * event){
12043     return little_endian_read_16(event, 3);
12044 }
12045 /**
12046  * @brief Get field index from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_LOCATION
12047  * @param event packet
12048  * @return index
12049  * @note: btstack_type 1
12050  */
12051 static inline uint8_t gattservice_subevent_vocs_audio_location_get_index(const uint8_t * event){
12052     return event[5];
12053 }
12054 /**
12055  * @brief Get field audio_location from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_LOCATION
12056  * @param event packet
12057  * @return audio_location
12058  * @note: btstack_type 4
12059  */
12060 static inline uint32_t gattservice_subevent_vocs_audio_location_get_audio_location(const uint8_t * event){
12061     return little_endian_read_32(event, 6);
12062 }
12063 
12064 /**
12065  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_OUTPUT_DESC_CHANGED
12066  * @param event packet
12067  * @return con_handle
12068  * @note: btstack_type 2
12069  */
12070 static inline uint16_t gattservice_subevent_vocs_audio_output_desc_changed_get_con_handle(const uint8_t * event){
12071     return little_endian_read_16(event, 3);
12072 }
12073 /**
12074  * @brief Get field index from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_OUTPUT_DESC_CHANGED
12075  * @param event packet
12076  * @return index
12077  * @note: btstack_type 1
12078  */
12079 static inline uint8_t gattservice_subevent_vocs_audio_output_desc_changed_get_index(const uint8_t * event){
12080     return event[5];
12081 }
12082 /**
12083  * @brief Get field description_len from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_OUTPUT_DESC_CHANGED
12084  * @param event packet
12085  * @return description_len
12086  * @note: btstack_type J
12087  */
12088 static inline uint8_t gattservice_subevent_vocs_audio_output_desc_changed_get_description_len(const uint8_t * event){
12089     return event[6];
12090 }
12091 /**
12092  * @brief Get field description from event GATTSERVICE_SUBEVENT_VOCS_AUDIO_OUTPUT_DESC_CHANGED
12093  * @param event packet
12094  * @return description
12095  * @note: btstack_type V
12096  */
12097 static inline const uint8_t * gattservice_subevent_vocs_audio_output_desc_changed_get_description(const uint8_t * event){
12098     return &event[7];
12099 }
12100 
12101 /**
12102  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_VCS_VOLUME_STATE
12103  * @param event packet
12104  * @return con_handle
12105  * @note: btstack_type 2
12106  */
12107 static inline uint16_t gattservice_subevent_vcs_volume_state_get_con_handle(const uint8_t * event){
12108     return little_endian_read_16(event, 3);
12109 }
12110 /**
12111  * @brief Get field volume_setting from event GATTSERVICE_SUBEVENT_VCS_VOLUME_STATE
12112  * @param event packet
12113  * @return volume_setting
12114  * @note: btstack_type 1
12115  */
12116 static inline uint8_t gattservice_subevent_vcs_volume_state_get_volume_setting(const uint8_t * event){
12117     return event[5];
12118 }
12119 /**
12120  * @brief Get field volume_change_step from event GATTSERVICE_SUBEVENT_VCS_VOLUME_STATE
12121  * @param event packet
12122  * @return volume_change_step
12123  * @note: btstack_type 1
12124  */
12125 static inline uint8_t gattservice_subevent_vcs_volume_state_get_volume_change_step(const uint8_t * event){
12126     return event[6];
12127 }
12128 /**
12129  * @brief Get field mute from event GATTSERVICE_SUBEVENT_VCS_VOLUME_STATE
12130  * @param event packet
12131  * @return mute
12132  * @note: btstack_type 1
12133  */
12134 static inline uint8_t gattservice_subevent_vcs_volume_state_get_mute(const uint8_t * event){
12135     return event[7];
12136 }
12137 
12138 /**
12139  * @brief Get field con_handle from event GATTSERVICE_SUBEVENT_VCS_VOLUME_FLAGS
12140  * @param event packet
12141  * @return con_handle
12142  * @note: btstack_type 2
12143  */
12144 static inline uint16_t gattservice_subevent_vcs_volume_flags_get_con_handle(const uint8_t * event){
12145     return little_endian_read_16(event, 3);
12146 }
12147 /**
12148  * @brief Get field flags from event GATTSERVICE_SUBEVENT_VCS_VOLUME_FLAGS
12149  * @param event packet
12150  * @return flags
12151  * @note: btstack_type 1
12152  */
12153 static inline uint8_t gattservice_subevent_vcs_volume_flags_get_flags(const uint8_t * event){
12154     return event[5];
12155 }
12156 
12157 /**
12158  * @brief Get field map_cid from event MAP_SUBEVENT_CONNECTION_OPENED
12159  * @param event packet
12160  * @return map_cid
12161  * @note: btstack_type 2
12162  */
12163 static inline uint16_t map_subevent_connection_opened_get_map_cid(const uint8_t * event){
12164     return little_endian_read_16(event, 3);
12165 }
12166 /**
12167  * @brief Get field status from event MAP_SUBEVENT_CONNECTION_OPENED
12168  * @param event packet
12169  * @return status
12170  * @note: btstack_type 1
12171  */
12172 static inline uint8_t map_subevent_connection_opened_get_status(const uint8_t * event){
12173     return event[5];
12174 }
12175 /**
12176  * @brief Get field bd_addr from event MAP_SUBEVENT_CONNECTION_OPENED
12177  * @param event packet
12178  * @param Pointer to storage for bd_addr
12179  * @note: btstack_type B
12180  */
12181 static inline void map_subevent_connection_opened_get_bd_addr(const uint8_t * event, bd_addr_t bd_addr){
12182     reverse_bytes(&event[6], bd_addr, 6);
12183 }
12184 /**
12185  * @brief Get field con_handle from event MAP_SUBEVENT_CONNECTION_OPENED
12186  * @param event packet
12187  * @return con_handle
12188  * @note: btstack_type H
12189  */
12190 static inline hci_con_handle_t map_subevent_connection_opened_get_con_handle(const uint8_t * event){
12191     return little_endian_read_16(event, 12);
12192 }
12193 /**
12194  * @brief Get field incoming from event MAP_SUBEVENT_CONNECTION_OPENED
12195  * @param event packet
12196  * @return incoming
12197  * @note: btstack_type 1
12198  */
12199 static inline uint8_t map_subevent_connection_opened_get_incoming(const uint8_t * event){
12200     return event[14];
12201 }
12202 
12203 /**
12204  * @brief Get field map_cid from event MAP_SUBEVENT_CONNECTION_CLOSED
12205  * @param event packet
12206  * @return map_cid
12207  * @note: btstack_type 2
12208  */
12209 static inline uint16_t map_subevent_connection_closed_get_map_cid(const uint8_t * event){
12210     return little_endian_read_16(event, 3);
12211 }
12212 
12213 /**
12214  * @brief Get field map_cid from event MAP_SUBEVENT_OPERATION_COMPLETED
12215  * @param event packet
12216  * @return map_cid
12217  * @note: btstack_type 2
12218  */
12219 static inline uint16_t map_subevent_operation_completed_get_map_cid(const uint8_t * event){
12220     return little_endian_read_16(event, 3);
12221 }
12222 /**
12223  * @brief Get field status from event MAP_SUBEVENT_OPERATION_COMPLETED
12224  * @param event packet
12225  * @return status
12226  * @note: btstack_type 1
12227  */
12228 static inline uint8_t map_subevent_operation_completed_get_status(const uint8_t * event){
12229     return event[5];
12230 }
12231 
12232 /**
12233  * @brief Get field map_cid from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
12234  * @param event packet
12235  * @return map_cid
12236  * @note: btstack_type 2
12237  */
12238 static inline uint16_t map_subevent_folder_listing_item_get_map_cid(const uint8_t * event){
12239     return little_endian_read_16(event, 3);
12240 }
12241 /**
12242  * @brief Get field name_len from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
12243  * @param event packet
12244  * @return name_len
12245  * @note: btstack_type L
12246  */
12247 static inline uint16_t map_subevent_folder_listing_item_get_name_len(const uint8_t * event){
12248     return little_endian_read_16(event, 5);
12249 }
12250 /**
12251  * @brief Get field name from event MAP_SUBEVENT_FOLDER_LISTING_ITEM
12252  * @param event packet
12253  * @return name
12254  * @note: btstack_type V
12255  */
12256 static inline const uint8_t * map_subevent_folder_listing_item_get_name(const uint8_t * event){
12257     return &event[7];
12258 }
12259 
12260 /**
12261  * @brief Get field map_cid from event MAP_SUBEVENT_MESSAGE_LISTING_ITEM
12262  * @param event packet
12263  * @return map_cid
12264  * @note: btstack_type 2
12265  */
12266 static inline uint16_t map_subevent_message_listing_item_get_map_cid(const uint8_t * event){
12267     return little_endian_read_16(event, 3);
12268 }
12269 /**
12270  * @brief Get field handle from event MAP_SUBEVENT_MESSAGE_LISTING_ITEM
12271  * @param event packet
12272  * @return handle
12273  * @note: btstack_type D
12274  */
12275 static inline const uint8_t * map_subevent_message_listing_item_get_handle(const uint8_t * event){
12276     return (const uint8_t *) &event[5];
12277 }
12278 
12279 /**
12280  * @brief Get field map_cid from event MAP_SUBEVENT_PARSING_DONE
12281  * @param event packet
12282  * @return map_cid
12283  * @note: btstack_type 2
12284  */
12285 static inline uint16_t map_subevent_parsing_done_get_map_cid(const uint8_t * event){
12286     return little_endian_read_16(event, 3);
12287 }
12288 
12289 
12290 /**
12291  * @brief Get field status from event MESH_SUBEVENT_PB_TRANSPORT_PDU_SENT
12292  * @param event packet
12293  * @return status
12294  * @note: btstack_type 1
12295  */
12296 static inline uint8_t mesh_subevent_pb_transport_pdu_sent_get_status(const uint8_t * event){
12297     return event[3];
12298 }
12299 
12300 /**
12301  * @brief Get field status from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
12302  * @param event packet
12303  * @return status
12304  * @note: btstack_type 1
12305  */
12306 static inline uint8_t mesh_subevent_pb_transport_link_open_get_status(const uint8_t * event){
12307     return event[3];
12308 }
12309 /**
12310  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
12311  * @param event packet
12312  * @return pb_transport_cid
12313  * @note: btstack_type 2
12314  */
12315 static inline uint16_t mesh_subevent_pb_transport_link_open_get_pb_transport_cid(const uint8_t * event){
12316     return little_endian_read_16(event, 4);
12317 }
12318 /**
12319  * @brief Get field pb_type from event MESH_SUBEVENT_PB_TRANSPORT_LINK_OPEN
12320  * @param event packet
12321  * @return pb_type
12322  * @note: btstack_type 1
12323  */
12324 static inline uint8_t mesh_subevent_pb_transport_link_open_get_pb_type(const uint8_t * event){
12325     return event[6];
12326 }
12327 
12328 /**
12329  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED
12330  * @param event packet
12331  * @return pb_transport_cid
12332  * @note: btstack_type 1
12333  */
12334 static inline uint8_t mesh_subevent_pb_transport_link_closed_get_pb_transport_cid(const uint8_t * event){
12335     return event[3];
12336 }
12337 /**
12338  * @brief Get field reason from event MESH_SUBEVENT_PB_TRANSPORT_LINK_CLOSED
12339  * @param event packet
12340  * @return reason
12341  * @note: btstack_type 2
12342  */
12343 static inline uint16_t mesh_subevent_pb_transport_link_closed_get_reason(const uint8_t * event){
12344     return little_endian_read_16(event, 4);
12345 }
12346 
12347 /**
12348  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER
12349  * @param event packet
12350  * @return pb_transport_cid
12351  * @note: btstack_type 2
12352  */
12353 static inline uint16_t mesh_subevent_pb_prov_attention_timer_get_pb_transport_cid(const uint8_t * event){
12354     return little_endian_read_16(event, 3);
12355 }
12356 /**
12357  * @brief Get field attention_time from event MESH_SUBEVENT_PB_PROV_ATTENTION_TIMER
12358  * @param event packet
12359  * @return attention_time
12360  * @note: btstack_type 1
12361  */
12362 static inline uint8_t mesh_subevent_pb_prov_attention_timer_get_attention_time(const uint8_t * event){
12363     return event[5];
12364 }
12365 
12366 /**
12367  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_PUBLIC_KEY_OOB
12368  * @param event packet
12369  * @return pb_transport_cid
12370  * @note: btstack_type 2
12371  */
12372 static inline uint16_t mesh_subevent_pb_prov_start_emit_public_key_oob_get_pb_transport_cid(const uint8_t * event){
12373     return little_endian_read_16(event, 3);
12374 }
12375 
12376 /**
12377  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_PUBLIC_KEY_OOB
12378  * @param event packet
12379  * @return pb_transport_cid
12380  * @note: btstack_type 2
12381  */
12382 static inline uint16_t mesh_subevent_pb_prov_stop_emit_public_key_oob_get_pb_transport_cid(const uint8_t * event){
12383     return little_endian_read_16(event, 3);
12384 }
12385 
12386 /**
12387  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_INPUT_OOB_REQUEST
12388  * @param event packet
12389  * @return pb_transport_cid
12390  * @note: btstack_type 2
12391  */
12392 static inline uint16_t mesh_subevent_pb_prov_input_oob_request_get_pb_transport_cid(const uint8_t * event){
12393     return little_endian_read_16(event, 3);
12394 }
12395 
12396 /**
12397  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB
12398  * @param event packet
12399  * @return pb_transport_cid
12400  * @note: btstack_type 2
12401  */
12402 static inline uint16_t mesh_subevent_pb_prov_start_emit_output_oob_get_pb_transport_cid(const uint8_t * event){
12403     return little_endian_read_16(event, 3);
12404 }
12405 /**
12406  * @brief Get field output_oob from event MESH_SUBEVENT_PB_PROV_START_EMIT_OUTPUT_OOB
12407  * @param event packet
12408  * @return output_oob
12409  * @note: btstack_type 4
12410  */
12411 static inline uint32_t mesh_subevent_pb_prov_start_emit_output_oob_get_output_oob(const uint8_t * event){
12412     return little_endian_read_32(event, 5);
12413 }
12414 
12415 /**
12416  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_OUTPUT_OOB
12417  * @param event packet
12418  * @return pb_transport_cid
12419  * @note: btstack_type 2
12420  */
12421 static inline uint16_t mesh_subevent_pb_prov_stop_emit_output_oob_get_pb_transport_cid(const uint8_t * event){
12422     return little_endian_read_16(event, 3);
12423 }
12424 
12425 /**
12426  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_RECEIVE_PUBLIC_KEY_OOB
12427  * @param event packet
12428  * @return pb_transport_cid
12429  * @note: btstack_type 2
12430  */
12431 static inline uint16_t mesh_subevent_pb_prov_start_receive_public_key_oob_get_pb_transport_cid(const uint8_t * event){
12432     return little_endian_read_16(event, 3);
12433 }
12434 
12435 /**
12436  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_RECEIVE_PUBLIC_KEY_OOB
12437  * @param event packet
12438  * @return pb_transport_cid
12439  * @note: btstack_type 2
12440  */
12441 static inline uint16_t mesh_subevent_pb_prov_stop_receive_public_key_oob_get_pb_transport_cid(const uint8_t * event){
12442     return little_endian_read_16(event, 3);
12443 }
12444 
12445 /**
12446  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_OUTPUT_OOB_REQUEST
12447  * @param event packet
12448  * @return pb_transport_cid
12449  * @note: btstack_type 2
12450  */
12451 static inline uint16_t mesh_subevent_pb_prov_output_oob_request_get_pb_transport_cid(const uint8_t * event){
12452     return little_endian_read_16(event, 3);
12453 }
12454 
12455 /**
12456  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB
12457  * @param event packet
12458  * @return pb_transport_cid
12459  * @note: btstack_type 2
12460  */
12461 static inline uint16_t mesh_subevent_pb_prov_start_emit_input_oob_get_pb_transport_cid(const uint8_t * event){
12462     return little_endian_read_16(event, 3);
12463 }
12464 /**
12465  * @brief Get field output_oob from event MESH_SUBEVENT_PB_PROV_START_EMIT_INPUT_OOB
12466  * @param event packet
12467  * @return output_oob
12468  * @note: btstack_type 4
12469  */
12470 static inline uint32_t mesh_subevent_pb_prov_start_emit_input_oob_get_output_oob(const uint8_t * event){
12471     return little_endian_read_32(event, 5);
12472 }
12473 
12474 /**
12475  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_STOP_EMIT_INPUT_OOB
12476  * @param event packet
12477  * @return pb_transport_cid
12478  * @note: btstack_type 2
12479  */
12480 static inline uint16_t mesh_subevent_pb_prov_stop_emit_input_oob_get_pb_transport_cid(const uint8_t * event){
12481     return little_endian_read_16(event, 3);
12482 }
12483 
12484 /**
12485  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12486  * @param event packet
12487  * @return pb_transport_cid
12488  * @note: btstack_type 2
12489  */
12490 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_pb_transport_cid(const uint8_t * event){
12491     return little_endian_read_16(event, 3);
12492 }
12493 /**
12494  * @brief Get field num_elements from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12495  * @param event packet
12496  * @return num_elements
12497  * @note: btstack_type 1
12498  */
12499 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_num_elements(const uint8_t * event){
12500     return event[5];
12501 }
12502 /**
12503  * @brief Get field algorithms from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12504  * @param event packet
12505  * @return algorithms
12506  * @note: btstack_type 2
12507  */
12508 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_algorithms(const uint8_t * event){
12509     return little_endian_read_16(event, 6);
12510 }
12511 /**
12512  * @brief Get field public_key from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12513  * @param event packet
12514  * @return public_key
12515  * @note: btstack_type 1
12516  */
12517 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_public_key(const uint8_t * event){
12518     return event[8];
12519 }
12520 /**
12521  * @brief Get field static_oob_type from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12522  * @param event packet
12523  * @return static_oob_type
12524  * @note: btstack_type 1
12525  */
12526 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_static_oob_type(const uint8_t * event){
12527     return event[9];
12528 }
12529 /**
12530  * @brief Get field output_oob_size from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12531  * @param event packet
12532  * @return output_oob_size
12533  * @note: btstack_type 1
12534  */
12535 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_output_oob_size(const uint8_t * event){
12536     return event[10];
12537 }
12538 /**
12539  * @brief Get field output_oob_action from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12540  * @param event packet
12541  * @return output_oob_action
12542  * @note: btstack_type 2
12543  */
12544 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_output_oob_action(const uint8_t * event){
12545     return little_endian_read_16(event, 11);
12546 }
12547 /**
12548  * @brief Get field input_oob_size from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12549  * @param event packet
12550  * @return input_oob_size
12551  * @note: btstack_type 1
12552  */
12553 static inline uint8_t mesh_subevent_pb_prov_capabilities_get_input_oob_size(const uint8_t * event){
12554     return event[13];
12555 }
12556 /**
12557  * @brief Get field input_oob_action from event MESH_SUBEVENT_PB_PROV_CAPABILITIES
12558  * @param event packet
12559  * @return input_oob_action
12560  * @note: btstack_type 2
12561  */
12562 static inline uint16_t mesh_subevent_pb_prov_capabilities_get_input_oob_action(const uint8_t * event){
12563     return little_endian_read_16(event, 14);
12564 }
12565 
12566 /**
12567  * @brief Get field pb_transport_cid from event MESH_SUBEVENT_PB_PROV_COMPLETE
12568  * @param event packet
12569  * @return pb_transport_cid
12570  * @note: btstack_type 2
12571  */
12572 static inline uint16_t mesh_subevent_pb_prov_complete_get_pb_transport_cid(const uint8_t * event){
12573     return little_endian_read_16(event, 3);
12574 }
12575 
12576 /**
12577  * @brief Get field attention_time from event MESH_SUBEVENT_ATTENTION_TIMER
12578  * @param event packet
12579  * @return attention_time
12580  * @note: btstack_type 1
12581  */
12582 static inline uint8_t mesh_subevent_attention_timer_get_attention_time(const uint8_t * event){
12583     return event[3];
12584 }
12585 
12586 /**
12587  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_CONNECTED
12588  * @param event packet
12589  * @return con_handle
12590  * @note: btstack_type H
12591  */
12592 static inline hci_con_handle_t mesh_subevent_proxy_connected_get_con_handle(const uint8_t * event){
12593     return little_endian_read_16(event, 3);
12594 }
12595 
12596 /**
12597  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_PDU_SENT
12598  * @param event packet
12599  * @return con_handle
12600  * @note: btstack_type H
12601  */
12602 static inline hci_con_handle_t mesh_subevent_proxy_pdu_sent_get_con_handle(const uint8_t * event){
12603     return little_endian_read_16(event, 3);
12604 }
12605 
12606 /**
12607  * @brief Get field con_handle from event MESH_SUBEVENT_PROXY_DISCONNECTED
12608  * @param event packet
12609  * @return con_handle
12610  * @note: btstack_type H
12611  */
12612 static inline hci_con_handle_t mesh_subevent_proxy_disconnected_get_con_handle(const uint8_t * event){
12613     return little_endian_read_16(event, 3);
12614 }
12615 
12616 /**
12617  * @brief Get field con_handle from event MESH_SUBEVENT_MESSAGE_SENT
12618  * @param event packet
12619  * @return con_handle
12620  * @note: btstack_type H
12621  */
12622 static inline hci_con_handle_t mesh_subevent_message_sent_get_con_handle(const uint8_t * event){
12623     return little_endian_read_16(event, 3);
12624 }
12625 
12626 /**
12627  * @brief Get field element_index from event MESH_SUBEVENT_STATE_UPDATE_BOOL
12628  * @param event packet
12629  * @return element_index
12630  * @note: btstack_type 1
12631  */
12632 static inline uint8_t mesh_subevent_state_update_bool_get_element_index(const uint8_t * event){
12633     return event[3];
12634 }
12635 /**
12636  * @brief Get field model_identifier from event MESH_SUBEVENT_STATE_UPDATE_BOOL
12637  * @param event packet
12638  * @return model_identifier
12639  * @note: btstack_type 4
12640  */
12641 static inline uint32_t mesh_subevent_state_update_bool_get_model_identifier(const uint8_t * event){
12642     return little_endian_read_32(event, 4);
12643 }
12644 /**
12645  * @brief Get field state_identifier from event MESH_SUBEVENT_STATE_UPDATE_BOOL
12646  * @param event packet
12647  * @return state_identifier
12648  * @note: btstack_type 4
12649  */
12650 static inline uint32_t mesh_subevent_state_update_bool_get_state_identifier(const uint8_t * event){
12651     return little_endian_read_32(event, 8);
12652 }
12653 /**
12654  * @brief Get field reason from event MESH_SUBEVENT_STATE_UPDATE_BOOL
12655  * @param event packet
12656  * @return reason
12657  * @note: btstack_type 1
12658  */
12659 static inline uint8_t mesh_subevent_state_update_bool_get_reason(const uint8_t * event){
12660     return event[12];
12661 }
12662 /**
12663  * @brief Get field value from event MESH_SUBEVENT_STATE_UPDATE_BOOL
12664  * @param event packet
12665  * @return value
12666  * @note: btstack_type 1
12667  */
12668 static inline uint8_t mesh_subevent_state_update_bool_get_value(const uint8_t * event){
12669     return event[13];
12670 }
12671 
12672 /**
12673  * @brief Get field element_index from event MESH_SUBEVENT_STATE_UPDATE_INT16
12674  * @param event packet
12675  * @return element_index
12676  * @note: btstack_type 1
12677  */
12678 static inline uint8_t mesh_subevent_state_update_int16_get_element_index(const uint8_t * event){
12679     return event[3];
12680 }
12681 /**
12682  * @brief Get field model_identifier from event MESH_SUBEVENT_STATE_UPDATE_INT16
12683  * @param event packet
12684  * @return model_identifier
12685  * @note: btstack_type 4
12686  */
12687 static inline uint32_t mesh_subevent_state_update_int16_get_model_identifier(const uint8_t * event){
12688     return little_endian_read_32(event, 4);
12689 }
12690 /**
12691  * @brief Get field state_identifier from event MESH_SUBEVENT_STATE_UPDATE_INT16
12692  * @param event packet
12693  * @return state_identifier
12694  * @note: btstack_type 4
12695  */
12696 static inline uint32_t mesh_subevent_state_update_int16_get_state_identifier(const uint8_t * event){
12697     return little_endian_read_32(event, 8);
12698 }
12699 /**
12700  * @brief Get field reason from event MESH_SUBEVENT_STATE_UPDATE_INT16
12701  * @param event packet
12702  * @return reason
12703  * @note: btstack_type 1
12704  */
12705 static inline uint8_t mesh_subevent_state_update_int16_get_reason(const uint8_t * event){
12706     return event[12];
12707 }
12708 /**
12709  * @brief Get field value from event MESH_SUBEVENT_STATE_UPDATE_INT16
12710  * @param event packet
12711  * @return value
12712  * @note: btstack_type 2
12713  */
12714 static inline uint16_t mesh_subevent_state_update_int16_get_value(const uint8_t * event){
12715     return little_endian_read_16(event, 13);
12716 }
12717 
12718 /**
12719  * @brief Get field element_index from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
12720  * @param event packet
12721  * @return element_index
12722  * @note: btstack_type 1
12723  */
12724 static inline uint8_t mesh_subevent_message_not_acknowledged_get_element_index(const uint8_t * event){
12725     return event[3];
12726 }
12727 /**
12728  * @brief Get field model_identifier from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
12729  * @param event packet
12730  * @return model_identifier
12731  * @note: btstack_type 4
12732  */
12733 static inline uint32_t mesh_subevent_message_not_acknowledged_get_model_identifier(const uint8_t * event){
12734     return little_endian_read_32(event, 4);
12735 }
12736 /**
12737  * @brief Get field opcode from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
12738  * @param event packet
12739  * @return opcode
12740  * @note: btstack_type 4
12741  */
12742 static inline uint32_t mesh_subevent_message_not_acknowledged_get_opcode(const uint8_t * event){
12743     return little_endian_read_32(event, 8);
12744 }
12745 /**
12746  * @brief Get field dest from event MESH_SUBEVENT_MESSAGE_NOT_ACKNOWLEDGED
12747  * @param event packet
12748  * @return dest
12749  * @note: btstack_type 2
12750  */
12751 static inline uint16_t mesh_subevent_message_not_acknowledged_get_dest(const uint8_t * event){
12752     return little_endian_read_16(event, 12);
12753 }
12754 
12755 /**
12756  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_ON_OFF
12757  * @param event packet
12758  * @return dest
12759  * @note: btstack_type 2
12760  */
12761 static inline uint16_t mesh_subevent_generic_on_off_get_dest(const uint8_t * event){
12762     return little_endian_read_16(event, 3);
12763 }
12764 /**
12765  * @brief Get field status from event MESH_SUBEVENT_GENERIC_ON_OFF
12766  * @param event packet
12767  * @return status
12768  * @note: btstack_type 1
12769  */
12770 static inline uint8_t mesh_subevent_generic_on_off_get_status(const uint8_t * event){
12771     return event[5];
12772 }
12773 /**
12774  * @brief Get field present_value from event MESH_SUBEVENT_GENERIC_ON_OFF
12775  * @param event packet
12776  * @return present_value
12777  * @note: btstack_type 1
12778  */
12779 static inline uint8_t mesh_subevent_generic_on_off_get_present_value(const uint8_t * event){
12780     return event[6];
12781 }
12782 /**
12783  * @brief Get field target_value from event MESH_SUBEVENT_GENERIC_ON_OFF
12784  * @param event packet
12785  * @return target_value
12786  * @note: btstack_type 1
12787  */
12788 static inline uint8_t mesh_subevent_generic_on_off_get_target_value(const uint8_t * event){
12789     return event[7];
12790 }
12791 /**
12792  * @brief Get field remaining_time_ms from event MESH_SUBEVENT_GENERIC_ON_OFF
12793  * @param event packet
12794  * @return remaining_time_ms
12795  * @note: btstack_type 4
12796  */
12797 static inline uint32_t mesh_subevent_generic_on_off_get_remaining_time_ms(const uint8_t * event){
12798     return little_endian_read_32(event, 8);
12799 }
12800 
12801 /**
12802  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_LEVEL
12803  * @param event packet
12804  * @return dest
12805  * @note: btstack_type 2
12806  */
12807 static inline uint16_t mesh_subevent_generic_level_get_dest(const uint8_t * event){
12808     return little_endian_read_16(event, 3);
12809 }
12810 /**
12811  * @brief Get field status from event MESH_SUBEVENT_GENERIC_LEVEL
12812  * @param event packet
12813  * @return status
12814  * @note: btstack_type 1
12815  */
12816 static inline uint8_t mesh_subevent_generic_level_get_status(const uint8_t * event){
12817     return event[5];
12818 }
12819 /**
12820  * @brief Get field present_value from event MESH_SUBEVENT_GENERIC_LEVEL
12821  * @param event packet
12822  * @return present_value
12823  * @note: btstack_type 2
12824  */
12825 static inline uint16_t mesh_subevent_generic_level_get_present_value(const uint8_t * event){
12826     return little_endian_read_16(event, 6);
12827 }
12828 /**
12829  * @brief Get field target_value from event MESH_SUBEVENT_GENERIC_LEVEL
12830  * @param event packet
12831  * @return target_value
12832  * @note: btstack_type 2
12833  */
12834 static inline uint16_t mesh_subevent_generic_level_get_target_value(const uint8_t * event){
12835     return little_endian_read_16(event, 8);
12836 }
12837 /**
12838  * @brief Get field remaining_time_ms from event MESH_SUBEVENT_GENERIC_LEVEL
12839  * @param event packet
12840  * @return remaining_time_ms
12841  * @note: btstack_type 4
12842  */
12843 static inline uint32_t mesh_subevent_generic_level_get_remaining_time_ms(const uint8_t * event){
12844     return little_endian_read_32(event, 10);
12845 }
12846 
12847 /**
12848  * @brief Get field dest from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12849  * @param event packet
12850  * @return dest
12851  * @note: btstack_type 2
12852  */
12853 static inline uint16_t mesh_subevent_health_perform_test_get_dest(const uint8_t * event){
12854     return little_endian_read_16(event, 3);
12855 }
12856 /**
12857  * @brief Get field netkey_index from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12858  * @param event packet
12859  * @return netkey_index
12860  * @note: btstack_type 2
12861  */
12862 static inline uint16_t mesh_subevent_health_perform_test_get_netkey_index(const uint8_t * event){
12863     return little_endian_read_16(event, 5);
12864 }
12865 /**
12866  * @brief Get field appkey_index from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12867  * @param event packet
12868  * @return appkey_index
12869  * @note: btstack_type 2
12870  */
12871 static inline uint16_t mesh_subevent_health_perform_test_get_appkey_index(const uint8_t * event){
12872     return little_endian_read_16(event, 7);
12873 }
12874 /**
12875  * @brief Get field company_id from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12876  * @param event packet
12877  * @return company_id
12878  * @note: btstack_type 2
12879  */
12880 static inline uint16_t mesh_subevent_health_perform_test_get_company_id(const uint8_t * event){
12881     return little_endian_read_16(event, 9);
12882 }
12883 /**
12884  * @brief Get field test_id from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12885  * @param event packet
12886  * @return test_id
12887  * @note: btstack_type 1
12888  */
12889 static inline uint8_t mesh_subevent_health_perform_test_get_test_id(const uint8_t * event){
12890     return event[11];
12891 }
12892 /**
12893  * @brief Get field acknowledged from event MESH_SUBEVENT_HEALTH_PERFORM_TEST
12894  * @param event packet
12895  * @return acknowledged
12896  * @note: btstack_type 1
12897  */
12898 static inline uint8_t mesh_subevent_health_perform_test_get_acknowledged(const uint8_t * event){
12899     return event[12];
12900 }
12901 
12902 /**
12903  * @brief Get field element_index from event MESH_SUBEVENT_HEALTH_ATTENTION_TIMER_CHANGED
12904  * @param event packet
12905  * @return element_index
12906  * @note: btstack_type 1
12907  */
12908 static inline uint8_t mesh_subevent_health_attention_timer_changed_get_element_index(const uint8_t * event){
12909     return event[3];
12910 }
12911 
12912 /**
12913  * @brief Get field dest from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
12914  * @param event packet
12915  * @return dest
12916  * @note: btstack_type 2
12917  */
12918 static inline uint16_t mesh_subevent_generic_default_transition_time_get_dest(const uint8_t * event){
12919     return little_endian_read_16(event, 3);
12920 }
12921 /**
12922  * @brief Get field status from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
12923  * @param event packet
12924  * @return status
12925  * @note: btstack_type 1
12926  */
12927 static inline uint8_t mesh_subevent_generic_default_transition_time_get_status(const uint8_t * event){
12928     return event[5];
12929 }
12930 /**
12931  * @brief Get field transition_time_gdtt from event MESH_SUBEVENT_GENERIC_DEFAULT_TRANSITION_TIME
12932  * @param event packet
12933  * @return transition_time_gdtt
12934  * @note: btstack_type 1
12935  */
12936 static inline uint8_t mesh_subevent_generic_default_transition_time_get_transition_time_gdtt(const uint8_t * event){
12937     return event[6];
12938 }
12939 
12940 /**
12941  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_BEACON
12942  * @param event packet
12943  * @return dest
12944  * @note: btstack_type 2
12945  */
12946 static inline uint16_t mesh_subevent_configuration_beacon_get_dest(const uint8_t * event){
12947     return little_endian_read_16(event, 3);
12948 }
12949 /**
12950  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_BEACON
12951  * @param event packet
12952  * @return foundation_status
12953  * @note: btstack_type 1
12954  */
12955 static inline uint8_t mesh_subevent_configuration_beacon_get_foundation_status(const uint8_t * event){
12956     return event[5];
12957 }
12958 /**
12959  * @brief Get field secure_network_beacon_state from event MESH_SUBEVENT_CONFIGURATION_BEACON
12960  * @param event packet
12961  * @return secure_network_beacon_state
12962  * @note: btstack_type 1
12963  */
12964 static inline uint8_t mesh_subevent_configuration_beacon_get_secure_network_beacon_state(const uint8_t * event){
12965     return event[6];
12966 }
12967 
12968 /**
12969  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
12970  * @param event packet
12971  * @return dest
12972  * @note: btstack_type 2
12973  */
12974 static inline uint16_t mesh_subevent_configuration_default_ttl_get_dest(const uint8_t * event){
12975     return little_endian_read_16(event, 3);
12976 }
12977 /**
12978  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
12979  * @param event packet
12980  * @return foundation_status
12981  * @note: btstack_type 1
12982  */
12983 static inline uint8_t mesh_subevent_configuration_default_ttl_get_foundation_status(const uint8_t * event){
12984     return event[5];
12985 }
12986 /**
12987  * @brief Get field default_ttl from event MESH_SUBEVENT_CONFIGURATION_DEFAULT_TTL
12988  * @param event packet
12989  * @return default_ttl
12990  * @note: btstack_type 1
12991  */
12992 static inline uint8_t mesh_subevent_configuration_default_ttl_get_default_ttl(const uint8_t * event){
12993     return event[6];
12994 }
12995 
12996 /**
12997  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
12998  * @param event packet
12999  * @return dest
13000  * @note: btstack_type 2
13001  */
13002 static inline uint16_t mesh_subevent_configuration_gatt_proxy_get_dest(const uint8_t * event){
13003     return little_endian_read_16(event, 3);
13004 }
13005 /**
13006  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
13007  * @param event packet
13008  * @return foundation_status
13009  * @note: btstack_type 1
13010  */
13011 static inline uint8_t mesh_subevent_configuration_gatt_proxy_get_foundation_status(const uint8_t * event){
13012     return event[5];
13013 }
13014 /**
13015  * @brief Get field gatt_proxy_state from event MESH_SUBEVENT_CONFIGURATION_GATT_PROXY
13016  * @param event packet
13017  * @return gatt_proxy_state
13018  * @note: btstack_type 1
13019  */
13020 static inline uint8_t mesh_subevent_configuration_gatt_proxy_get_gatt_proxy_state(const uint8_t * event){
13021     return event[6];
13022 }
13023 
13024 /**
13025  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_RELAY
13026  * @param event packet
13027  * @return dest
13028  * @note: btstack_type 2
13029  */
13030 static inline uint16_t mesh_subevent_configuration_relay_get_dest(const uint8_t * event){
13031     return little_endian_read_16(event, 3);
13032 }
13033 /**
13034  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_RELAY
13035  * @param event packet
13036  * @return foundation_status
13037  * @note: btstack_type 1
13038  */
13039 static inline uint8_t mesh_subevent_configuration_relay_get_foundation_status(const uint8_t * event){
13040     return event[5];
13041 }
13042 /**
13043  * @brief Get field relay from event MESH_SUBEVENT_CONFIGURATION_RELAY
13044  * @param event packet
13045  * @return relay
13046  * @note: btstack_type 1
13047  */
13048 static inline uint8_t mesh_subevent_configuration_relay_get_relay(const uint8_t * event){
13049     return event[6];
13050 }
13051 /**
13052  * @brief Get field retransmit_count from event MESH_SUBEVENT_CONFIGURATION_RELAY
13053  * @param event packet
13054  * @return retransmit_count
13055  * @note: btstack_type 1
13056  */
13057 static inline uint8_t mesh_subevent_configuration_relay_get_retransmit_count(const uint8_t * event){
13058     return event[7];
13059 }
13060 /**
13061  * @brief Get field retransmit_interval_ms from event MESH_SUBEVENT_CONFIGURATION_RELAY
13062  * @param event packet
13063  * @return retransmit_interval_ms
13064  * @note: btstack_type 1
13065  */
13066 static inline uint8_t mesh_subevent_configuration_relay_get_retransmit_interval_ms(const uint8_t * event){
13067     return event[8];
13068 }
13069 
13070 /**
13071  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13072  * @param event packet
13073  * @return dest
13074  * @note: btstack_type 2
13075  */
13076 static inline uint16_t mesh_subevent_configuration_model_publication_get_dest(const uint8_t * event){
13077     return little_endian_read_16(event, 3);
13078 }
13079 /**
13080  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13081  * @param event packet
13082  * @return foundation_status
13083  * @note: btstack_type 1
13084  */
13085 static inline uint8_t mesh_subevent_configuration_model_publication_get_foundation_status(const uint8_t * event){
13086     return event[5];
13087 }
13088 /**
13089  * @brief Get field publish_address from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13090  * @param event packet
13091  * @return publish_address
13092  * @note: btstack_type 2
13093  */
13094 static inline uint16_t mesh_subevent_configuration_model_publication_get_publish_address(const uint8_t * event){
13095     return little_endian_read_16(event, 6);
13096 }
13097 /**
13098  * @brief Get field appkey_index from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13099  * @param event packet
13100  * @return appkey_index
13101  * @note: btstack_type 2
13102  */
13103 static inline uint16_t mesh_subevent_configuration_model_publication_get_appkey_index(const uint8_t * event){
13104     return little_endian_read_16(event, 8);
13105 }
13106 /**
13107  * @brief Get field credential_flag from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13108  * @param event packet
13109  * @return credential_flag
13110  * @note: btstack_type 1
13111  */
13112 static inline uint8_t mesh_subevent_configuration_model_publication_get_credential_flag(const uint8_t * event){
13113     return event[10];
13114 }
13115 /**
13116  * @brief Get field publish_ttl from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13117  * @param event packet
13118  * @return publish_ttl
13119  * @note: btstack_type 1
13120  */
13121 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_ttl(const uint8_t * event){
13122     return event[11];
13123 }
13124 /**
13125  * @brief Get field publish_period from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13126  * @param event packet
13127  * @return publish_period
13128  * @note: btstack_type 1
13129  */
13130 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_period(const uint8_t * event){
13131     return event[12];
13132 }
13133 /**
13134  * @brief Get field publish_retransmit_count from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13135  * @param event packet
13136  * @return publish_retransmit_count
13137  * @note: btstack_type 1
13138  */
13139 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_retransmit_count(const uint8_t * event){
13140     return event[13];
13141 }
13142 /**
13143  * @brief Get field publish_retransmit_interval_steps from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13144  * @param event packet
13145  * @return publish_retransmit_interval_steps
13146  * @note: btstack_type 1
13147  */
13148 static inline uint8_t mesh_subevent_configuration_model_publication_get_publish_retransmit_interval_steps(const uint8_t * event){
13149     return event[14];
13150 }
13151 /**
13152  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_PUBLICATION
13153  * @param event packet
13154  * @return model_identifier
13155  * @note: btstack_type 4
13156  */
13157 static inline uint32_t mesh_subevent_configuration_model_publication_get_model_identifier(const uint8_t * event){
13158     return little_endian_read_32(event, 15);
13159 }
13160 
13161 /**
13162  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
13163  * @param event packet
13164  * @return dest
13165  * @note: btstack_type 2
13166  */
13167 static inline uint16_t mesh_subevent_configuration_model_subscription_get_dest(const uint8_t * event){
13168     return little_endian_read_16(event, 3);
13169 }
13170 /**
13171  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
13172  * @param event packet
13173  * @return foundation_status
13174  * @note: btstack_type 1
13175  */
13176 static inline uint8_t mesh_subevent_configuration_model_subscription_get_foundation_status(const uint8_t * event){
13177     return event[5];
13178 }
13179 /**
13180  * @brief Get field address from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
13181  * @param event packet
13182  * @return address
13183  * @note: btstack_type 2
13184  */
13185 static inline uint16_t mesh_subevent_configuration_model_subscription_get_address(const uint8_t * event){
13186     return little_endian_read_16(event, 6);
13187 }
13188 /**
13189  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION
13190  * @param event packet
13191  * @return model_identifier
13192  * @note: btstack_type 4
13193  */
13194 static inline uint32_t mesh_subevent_configuration_model_subscription_get_model_identifier(const uint8_t * event){
13195     return little_endian_read_32(event, 8);
13196 }
13197 
13198 /**
13199  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13200  * @param event packet
13201  * @return dest
13202  * @note: btstack_type 2
13203  */
13204 static inline uint16_t mesh_subevent_configuration_model_subscription_list_item_get_dest(const uint8_t * event){
13205     return little_endian_read_16(event, 3);
13206 }
13207 /**
13208  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13209  * @param event packet
13210  * @return foundation_status
13211  * @note: btstack_type 1
13212  */
13213 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_foundation_status(const uint8_t * event){
13214     return event[5];
13215 }
13216 /**
13217  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13218  * @param event packet
13219  * @return model_identifier
13220  * @note: btstack_type 4
13221  */
13222 static inline uint32_t mesh_subevent_configuration_model_subscription_list_item_get_model_identifier(const uint8_t * event){
13223     return little_endian_read_32(event, 6);
13224 }
13225 /**
13226  * @brief Get field num_subscription_addresses from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13227  * @param event packet
13228  * @return num_subscription_addresses
13229  * @note: btstack_type 1
13230  */
13231 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_num_subscription_addresses(const uint8_t * event){
13232     return event[10];
13233 }
13234 /**
13235  * @brief Get field subscription_address_pos from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13236  * @param event packet
13237  * @return subscription_address_pos
13238  * @note: btstack_type 1
13239  */
13240 static inline uint8_t mesh_subevent_configuration_model_subscription_list_item_get_subscription_address_pos(const uint8_t * event){
13241     return event[11];
13242 }
13243 /**
13244  * @brief Get field subscription_address_item from event MESH_SUBEVENT_CONFIGURATION_MODEL_SUBSCRIPTION_LIST_ITEM
13245  * @param event packet
13246  * @return subscription_address_item
13247  * @note: btstack_type 2
13248  */
13249 static inline uint16_t mesh_subevent_configuration_model_subscription_list_item_get_subscription_address_item(const uint8_t * event){
13250     return little_endian_read_16(event, 12);
13251 }
13252 
13253 /**
13254  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX
13255  * @param event packet
13256  * @return dest
13257  * @note: btstack_type 2
13258  */
13259 static inline uint16_t mesh_subevent_configuration_netkey_index_get_dest(const uint8_t * event){
13260     return little_endian_read_16(event, 3);
13261 }
13262 /**
13263  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX
13264  * @param event packet
13265  * @return foundation_status
13266  * @note: btstack_type 1
13267  */
13268 static inline uint8_t mesh_subevent_configuration_netkey_index_get_foundation_status(const uint8_t * event){
13269     return event[5];
13270 }
13271 
13272 /**
13273  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
13274  * @param event packet
13275  * @return dest
13276  * @note: btstack_type 2
13277  */
13278 static inline uint16_t mesh_subevent_configuration_netkey_index_list_item_get_dest(const uint8_t * event){
13279     return little_endian_read_16(event, 3);
13280 }
13281 /**
13282  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
13283  * @param event packet
13284  * @return foundation_status
13285  * @note: btstack_type 1
13286  */
13287 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_foundation_status(const uint8_t * event){
13288     return event[5];
13289 }
13290 /**
13291  * @brief Get field num_netkey_indexes from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
13292  * @param event packet
13293  * @return num_netkey_indexes
13294  * @note: btstack_type 1
13295  */
13296 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_num_netkey_indexes(const uint8_t * event){
13297     return event[6];
13298 }
13299 /**
13300  * @brief Get field netkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
13301  * @param event packet
13302  * @return netkey_index_pos
13303  * @note: btstack_type 1
13304  */
13305 static inline uint8_t mesh_subevent_configuration_netkey_index_list_item_get_netkey_index_pos(const uint8_t * event){
13306     return event[7];
13307 }
13308 /**
13309  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_NETKEY_INDEX_LIST_ITEM
13310  * @param event packet
13311  * @return netkey_index_item
13312  * @note: btstack_type 2
13313  */
13314 static inline uint16_t mesh_subevent_configuration_netkey_index_list_item_get_netkey_index_item(const uint8_t * event){
13315     return little_endian_read_16(event, 8);
13316 }
13317 
13318 /**
13319  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
13320  * @param event packet
13321  * @return dest
13322  * @note: btstack_type 2
13323  */
13324 static inline uint16_t mesh_subevent_configuration_appkey_index_get_dest(const uint8_t * event){
13325     return little_endian_read_16(event, 3);
13326 }
13327 /**
13328  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
13329  * @param event packet
13330  * @return foundation_status
13331  * @note: btstack_type 1
13332  */
13333 static inline uint8_t mesh_subevent_configuration_appkey_index_get_foundation_status(const uint8_t * event){
13334     return event[5];
13335 }
13336 /**
13337  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
13338  * @param event packet
13339  * @return netkey_index_item
13340  * @note: btstack_type 2
13341  */
13342 static inline uint16_t mesh_subevent_configuration_appkey_index_get_netkey_index_item(const uint8_t * event){
13343     return little_endian_read_16(event, 6);
13344 }
13345 /**
13346  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX
13347  * @param event packet
13348  * @return appkey_index_item
13349  * @note: btstack_type 2
13350  */
13351 static inline uint16_t mesh_subevent_configuration_appkey_index_get_appkey_index_item(const uint8_t * event){
13352     return little_endian_read_16(event, 8);
13353 }
13354 
13355 /**
13356  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13357  * @param event packet
13358  * @return dest
13359  * @note: btstack_type 2
13360  */
13361 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_dest(const uint8_t * event){
13362     return little_endian_read_16(event, 3);
13363 }
13364 /**
13365  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13366  * @param event packet
13367  * @return foundation_status
13368  * @note: btstack_type 1
13369  */
13370 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_foundation_status(const uint8_t * event){
13371     return event[5];
13372 }
13373 /**
13374  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13375  * @param event packet
13376  * @return netkey_index
13377  * @note: btstack_type 2
13378  */
13379 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_netkey_index(const uint8_t * event){
13380     return little_endian_read_16(event, 6);
13381 }
13382 /**
13383  * @brief Get field num_appkey_indexes from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13384  * @param event packet
13385  * @return num_appkey_indexes
13386  * @note: btstack_type 1
13387  */
13388 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_num_appkey_indexes(const uint8_t * event){
13389     return event[8];
13390 }
13391 /**
13392  * @brief Get field appkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13393  * @param event packet
13394  * @return appkey_index_pos
13395  * @note: btstack_type 1
13396  */
13397 static inline uint8_t mesh_subevent_configuration_appkey_index_list_item_get_appkey_index_pos(const uint8_t * event){
13398     return event[9];
13399 }
13400 /**
13401  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13402  * @param event packet
13403  * @return netkey_index_item
13404  * @note: btstack_type 2
13405  */
13406 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_netkey_index_item(const uint8_t * event){
13407     return little_endian_read_16(event, 10);
13408 }
13409 /**
13410  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_APPKEY_INDEX_LIST_ITEM
13411  * @param event packet
13412  * @return appkey_index_item
13413  * @note: btstack_type 2
13414  */
13415 static inline uint16_t mesh_subevent_configuration_appkey_index_list_item_get_appkey_index_item(const uint8_t * event){
13416     return little_endian_read_16(event, 12);
13417 }
13418 
13419 /**
13420  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
13421  * @param event packet
13422  * @return dest
13423  * @note: btstack_type 2
13424  */
13425 static inline uint16_t mesh_subevent_configuration_node_identity_get_dest(const uint8_t * event){
13426     return little_endian_read_16(event, 3);
13427 }
13428 /**
13429  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
13430  * @param event packet
13431  * @return foundation_status
13432  * @note: btstack_type 1
13433  */
13434 static inline uint8_t mesh_subevent_configuration_node_identity_get_foundation_status(const uint8_t * event){
13435     return event[5];
13436 }
13437 /**
13438  * @brief Get field netkey_index_item from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
13439  * @param event packet
13440  * @return netkey_index_item
13441  * @note: btstack_type 2
13442  */
13443 static inline uint16_t mesh_subevent_configuration_node_identity_get_netkey_index_item(const uint8_t * event){
13444     return little_endian_read_16(event, 6);
13445 }
13446 /**
13447  * @brief Get field identity_status from event MESH_SUBEVENT_CONFIGURATION_NODE_IDENTITY
13448  * @param event packet
13449  * @return identity_status
13450  * @note: btstack_type 1
13451  */
13452 static inline uint8_t mesh_subevent_configuration_node_identity_get_identity_status(const uint8_t * event){
13453     return event[8];
13454 }
13455 
13456 /**
13457  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
13458  * @param event packet
13459  * @return dest
13460  * @note: btstack_type 2
13461  */
13462 static inline uint16_t mesh_subevent_configuration_model_app_get_dest(const uint8_t * event){
13463     return little_endian_read_16(event, 3);
13464 }
13465 /**
13466  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
13467  * @param event packet
13468  * @return foundation_status
13469  * @note: btstack_type 1
13470  */
13471 static inline uint8_t mesh_subevent_configuration_model_app_get_foundation_status(const uint8_t * event){
13472     return event[5];
13473 }
13474 /**
13475  * @brief Get field appkey_index from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
13476  * @param event packet
13477  * @return appkey_index
13478  * @note: btstack_type 2
13479  */
13480 static inline uint16_t mesh_subevent_configuration_model_app_get_appkey_index(const uint8_t * event){
13481     return little_endian_read_16(event, 6);
13482 }
13483 /**
13484  * @brief Get field model_identifier from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP
13485  * @param event packet
13486  * @return model_identifier
13487  * @note: btstack_type 4
13488  */
13489 static inline uint32_t mesh_subevent_configuration_model_app_get_model_identifier(const uint8_t * event){
13490     return little_endian_read_32(event, 8);
13491 }
13492 
13493 /**
13494  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13495  * @param event packet
13496  * @return dest
13497  * @note: btstack_type 2
13498  */
13499 static inline uint16_t mesh_subevent_configuration_model_app_list_item_get_dest(const uint8_t * event){
13500     return little_endian_read_16(event, 3);
13501 }
13502 /**
13503  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13504  * @param event packet
13505  * @return foundation_status
13506  * @note: btstack_type 1
13507  */
13508 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_foundation_status(const uint8_t * event){
13509     return event[5];
13510 }
13511 /**
13512  * @brief Get field model_id from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13513  * @param event packet
13514  * @return model_id
13515  * @note: btstack_type 4
13516  */
13517 static inline uint32_t mesh_subevent_configuration_model_app_list_item_get_model_id(const uint8_t * event){
13518     return little_endian_read_32(event, 6);
13519 }
13520 /**
13521  * @brief Get field num_appkey_indexes from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13522  * @param event packet
13523  * @return num_appkey_indexes
13524  * @note: btstack_type 1
13525  */
13526 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_num_appkey_indexes(const uint8_t * event){
13527     return event[10];
13528 }
13529 /**
13530  * @brief Get field appkey_index_pos from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13531  * @param event packet
13532  * @return appkey_index_pos
13533  * @note: btstack_type 1
13534  */
13535 static inline uint8_t mesh_subevent_configuration_model_app_list_item_get_appkey_index_pos(const uint8_t * event){
13536     return event[11];
13537 }
13538 /**
13539  * @brief Get field appkey_index_item from event MESH_SUBEVENT_CONFIGURATION_MODEL_APP_LIST_ITEM
13540  * @param event packet
13541  * @return appkey_index_item
13542  * @note: btstack_type 2
13543  */
13544 static inline uint16_t mesh_subevent_configuration_model_app_list_item_get_appkey_index_item(const uint8_t * event){
13545     return little_endian_read_16(event, 12);
13546 }
13547 
13548 /**
13549  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NODE_RESET
13550  * @param event packet
13551  * @return dest
13552  * @note: btstack_type 2
13553  */
13554 static inline uint16_t mesh_subevent_configuration_node_reset_get_dest(const uint8_t * event){
13555     return little_endian_read_16(event, 3);
13556 }
13557 /**
13558  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NODE_RESET
13559  * @param event packet
13560  * @return foundation_status
13561  * @note: btstack_type 1
13562  */
13563 static inline uint8_t mesh_subevent_configuration_node_reset_get_foundation_status(const uint8_t * event){
13564     return event[5];
13565 }
13566 
13567 /**
13568  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_FRIEND
13569  * @param event packet
13570  * @return dest
13571  * @note: btstack_type 2
13572  */
13573 static inline uint16_t mesh_subevent_configuration_friend_get_dest(const uint8_t * event){
13574     return little_endian_read_16(event, 3);
13575 }
13576 /**
13577  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_FRIEND
13578  * @param event packet
13579  * @return foundation_status
13580  * @note: btstack_type 1
13581  */
13582 static inline uint8_t mesh_subevent_configuration_friend_get_foundation_status(const uint8_t * event){
13583     return event[5];
13584 }
13585 /**
13586  * @brief Get field friend_state from event MESH_SUBEVENT_CONFIGURATION_FRIEND
13587  * @param event packet
13588  * @return friend_state
13589  * @note: btstack_type 1
13590  */
13591 static inline uint8_t mesh_subevent_configuration_friend_get_friend_state(const uint8_t * event){
13592     return event[6];
13593 }
13594 
13595 /**
13596  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
13597  * @param event packet
13598  * @return dest
13599  * @note: btstack_type 2
13600  */
13601 static inline uint16_t mesh_subevent_configuration_key_refresh_phase_get_dest(const uint8_t * event){
13602     return little_endian_read_16(event, 3);
13603 }
13604 /**
13605  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
13606  * @param event packet
13607  * @return foundation_status
13608  * @note: btstack_type 1
13609  */
13610 static inline uint8_t mesh_subevent_configuration_key_refresh_phase_get_foundation_status(const uint8_t * event){
13611     return event[5];
13612 }
13613 /**
13614  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
13615  * @param event packet
13616  * @return netkey_index
13617  * @note: btstack_type 2
13618  */
13619 static inline uint16_t mesh_subevent_configuration_key_refresh_phase_get_netkey_index(const uint8_t * event){
13620     return little_endian_read_16(event, 6);
13621 }
13622 /**
13623  * @brief Get field phase from event MESH_SUBEVENT_CONFIGURATION_KEY_REFRESH_PHASE
13624  * @param event packet
13625  * @return phase
13626  * @note: btstack_type 1
13627  */
13628 static inline uint8_t mesh_subevent_configuration_key_refresh_phase_get_phase(const uint8_t * event){
13629     return event[8];
13630 }
13631 
13632 /**
13633  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13634  * @param event packet
13635  * @return dest
13636  * @note: btstack_type 2
13637  */
13638 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_dest(const uint8_t * event){
13639     return little_endian_read_16(event, 3);
13640 }
13641 /**
13642  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13643  * @param event packet
13644  * @return foundation_status
13645  * @note: btstack_type 1
13646  */
13647 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_foundation_status(const uint8_t * event){
13648     return event[5];
13649 }
13650 /**
13651  * @brief Get field heartbeat_destination from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13652  * @param event packet
13653  * @return heartbeat_destination
13654  * @note: btstack_type 2
13655  */
13656 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_heartbeat_destination(const uint8_t * event){
13657     return little_endian_read_16(event, 6);
13658 }
13659 /**
13660  * @brief Get field count_S from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13661  * @param event packet
13662  * @return count_S
13663  * @note: btstack_type 2
13664  */
13665 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_count_S(const uint8_t * event){
13666     return little_endian_read_16(event, 8);
13667 }
13668 /**
13669  * @brief Get field period_S from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13670  * @param event packet
13671  * @return period_S
13672  * @note: btstack_type 2
13673  */
13674 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_period_S(const uint8_t * event){
13675     return little_endian_read_16(event, 10);
13676 }
13677 /**
13678  * @brief Get field ttl from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13679  * @param event packet
13680  * @return ttl
13681  * @note: btstack_type 1
13682  */
13683 static inline uint8_t mesh_subevent_configuration_heartbeat_publication_get_ttl(const uint8_t * event){
13684     return event[12];
13685 }
13686 /**
13687  * @brief Get field features from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13688  * @param event packet
13689  * @return features
13690  * @note: btstack_type 2
13691  */
13692 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_features(const uint8_t * event){
13693     return little_endian_read_16(event, 13);
13694 }
13695 /**
13696  * @brief Get field netkey_index from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_PUBLICATION
13697  * @param event packet
13698  * @return netkey_index
13699  * @note: btstack_type 2
13700  */
13701 static inline uint16_t mesh_subevent_configuration_heartbeat_publication_get_netkey_index(const uint8_t * event){
13702     return little_endian_read_16(event, 15);
13703 }
13704 
13705 /**
13706  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13707  * @param event packet
13708  * @return dest
13709  * @note: btstack_type 2
13710  */
13711 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_dest(const uint8_t * event){
13712     return little_endian_read_16(event, 3);
13713 }
13714 /**
13715  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13716  * @param event packet
13717  * @return foundation_status
13718  * @note: btstack_type 1
13719  */
13720 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_foundation_status(const uint8_t * event){
13721     return event[5];
13722 }
13723 /**
13724  * @brief Get field heartbeat_destination from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13725  * @param event packet
13726  * @return heartbeat_destination
13727  * @note: btstack_type 2
13728  */
13729 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_heartbeat_destination(const uint8_t * event){
13730     return little_endian_read_16(event, 6);
13731 }
13732 /**
13733  * @brief Get field heartbeat_source from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13734  * @param event packet
13735  * @return heartbeat_source
13736  * @note: btstack_type 2
13737  */
13738 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_heartbeat_source(const uint8_t * event){
13739     return little_endian_read_16(event, 8);
13740 }
13741 /**
13742  * @brief Get field count_S from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13743  * @param event packet
13744  * @return count_S
13745  * @note: btstack_type 2
13746  */
13747 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_count_S(const uint8_t * event){
13748     return little_endian_read_16(event, 10);
13749 }
13750 /**
13751  * @brief Get field period_S from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13752  * @param event packet
13753  * @return period_S
13754  * @note: btstack_type 2
13755  */
13756 static inline uint16_t mesh_subevent_configuration_heartbeat_subscription_get_period_S(const uint8_t * event){
13757     return little_endian_read_16(event, 12);
13758 }
13759 /**
13760  * @brief Get field min_hops from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13761  * @param event packet
13762  * @return min_hops
13763  * @note: btstack_type 1
13764  */
13765 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_min_hops(const uint8_t * event){
13766     return event[14];
13767 }
13768 /**
13769  * @brief Get field max_hops from event MESH_SUBEVENT_CONFIGURATION_HEARTBEAT_SUBSCRIPTION
13770  * @param event packet
13771  * @return max_hops
13772  * @note: btstack_type 1
13773  */
13774 static inline uint8_t mesh_subevent_configuration_heartbeat_subscription_get_max_hops(const uint8_t * event){
13775     return event[15];
13776 }
13777 
13778 /**
13779  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
13780  * @param event packet
13781  * @return dest
13782  * @note: btstack_type 2
13783  */
13784 static inline uint16_t mesh_subevent_configuration_low_power_node_poll_timeout_get_dest(const uint8_t * event){
13785     return little_endian_read_16(event, 3);
13786 }
13787 /**
13788  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
13789  * @param event packet
13790  * @return foundation_status
13791  * @note: btstack_type 1
13792  */
13793 static inline uint8_t mesh_subevent_configuration_low_power_node_poll_timeout_get_foundation_status(const uint8_t * event){
13794     return event[5];
13795 }
13796 /**
13797  * @brief Get field lpn_address from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
13798  * @param event packet
13799  * @return lpn_address
13800  * @note: btstack_type 2
13801  */
13802 static inline uint16_t mesh_subevent_configuration_low_power_node_poll_timeout_get_lpn_address(const uint8_t * event){
13803     return little_endian_read_16(event, 6);
13804 }
13805 /**
13806  * @brief Get field poll_timeout from event MESH_SUBEVENT_CONFIGURATION_LOW_POWER_NODE_POLL_TIMEOUT
13807  * @param event packet
13808  * @return poll_timeout
13809  * @note: btstack_type 3
13810  */
13811 static inline uint32_t mesh_subevent_configuration_low_power_node_poll_timeout_get_poll_timeout(const uint8_t * event){
13812     return little_endian_read_24(event, 8);
13813 }
13814 
13815 /**
13816  * @brief Get field dest from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
13817  * @param event packet
13818  * @return dest
13819  * @note: btstack_type 2
13820  */
13821 static inline uint16_t mesh_subevent_configuration_network_transmit_get_dest(const uint8_t * event){
13822     return little_endian_read_16(event, 3);
13823 }
13824 /**
13825  * @brief Get field foundation_status from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
13826  * @param event packet
13827  * @return foundation_status
13828  * @note: btstack_type 1
13829  */
13830 static inline uint8_t mesh_subevent_configuration_network_transmit_get_foundation_status(const uint8_t * event){
13831     return event[5];
13832 }
13833 /**
13834  * @brief Get field transmit_count from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
13835  * @param event packet
13836  * @return transmit_count
13837  * @note: btstack_type 1
13838  */
13839 static inline uint8_t mesh_subevent_configuration_network_transmit_get_transmit_count(const uint8_t * event){
13840     return event[6];
13841 }
13842 /**
13843  * @brief Get field transmit_interval_steps_ms from event MESH_SUBEVENT_CONFIGURATION_NETWORK_TRANSMIT
13844  * @param event packet
13845  * @return transmit_interval_steps_ms
13846  * @note: btstack_type 2
13847  */
13848 static inline uint16_t mesh_subevent_configuration_network_transmit_get_transmit_interval_steps_ms(const uint8_t * event){
13849     return little_endian_read_16(event, 7);
13850 }
13851 
13852 
13853 
13854 /* API_END */
13855 
13856 #if defined __cplusplus
13857 }
13858 #endif
13859 
13860 #endif // BTSTACK_EVENT_H
13861