component_class: HAL_CONVENTIONAL_SUBMODULE component_type: BLUETOOTH component_type_version: 1.0 header: "<hardware/hardware.h>" header: "<hardware/bluetooth.h>" original_data_structure_name: "bt_interface_t" interface: { api: { name: "init" return_type: { type: TYPE_SCALAR scalar_type: "int32_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_callbacks_t*" is_const: true is_callback: true } } attribute: { name: "bt_callbacks_t" type: TYPE_FUNCTION_POINTER function_pointer: { function_name: "adapter_state_changed_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_state_t" } } function_pointer: { function_name: "adapter_properties_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_status_t" } arg: { type: TYPE_SCALAR scalar_type: "int32_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_property_t*" } } function_pointer: { function_name: "remote_device_properties_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_status_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdaddr_t*" } arg: { type: TYPE_SCALAR scalar_type: "int32_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_property_t*" } } function_pointer: { function_name: "device_found_cb" arg: { type: TYPE_SCALAR scalar_type: "int32_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_property_t*" } } function_pointer: { function_name: "discovery_state_changed_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_discovery_state_t" } } function_pointer: { function_name: "pin_request_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdaddr_t*" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdname_t*" } arg: { type: TYPE_SCALAR scalar_type: "uint32_t" } arg: { type: TYPE_SCALAR scalar_type: "bool_t" } } function_pointer: { function_name: "ssp_request_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdaddr_t*" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdname_t*" } arg: { type: TYPE_SCALAR scalar_type: "uint32_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_ssp_variant_t" } arg: { type: TYPE_SCALAR scalar_type: "uint32_t" } } function_pointer: { function_name: "bond_state_changed_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_status_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdaddr_t*" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bond_state_t" } } function_pointer: { function_name: "acl_state_changed_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_status_t" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_bdaddr_t*" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_acl_state_t" } } function_pointer: { function_name: "thread_evt_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_cb_thread_evt" } } function_pointer: { function_name: "dut_mode_recv_cb" arg: { type: TYPE_SCALAR scalar_type: "uint16_t" } arg: { type: TYPE_SCALAR scalar_type: "uchar_pointer" } arg: { type: TYPE_SCALAR scalar_type: "uint8_t" } } function_pointer: { function_name: "le_test_mode_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_status_t" } arg: { type: TYPE_SCALAR scalar_type: "uint16_t" } } function_pointer: { function_name: "energy_info_cb" arg: { type: TYPE_PREDEFINED predefined_type: "bt_activity_energy_info*" } arg: { type: TYPE_PREDEFINED predefined_type: "bt_uid_traffic_t*" } } is_callback: true } }