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