赞
踩
- typedef struct {
- /** set to sizeof(bt_interface_t) */
- size_t size;
- /**
- * Opens the interface and provides the callback routines
- * to the implemenation of this interface.
- */
- int (*init)(bt_callbacks_t* callbacks );
-
- /** Enable Bluetooth. */
- int (*enable)(void);
-
- /** Disable Bluetooth. */
- int (*disable)(void);
-
- /** Closes the interface. */
- void (*cleanup)(void);
-
- /** Get all Bluetooth Adapter properties at init */
- int (*get_adapter_properties)(void);
-
- /** Get Bluetooth Adapter property of 'type' */
- int (*get_adapter_property)(bt_property_type_t type);
-
- /** Set Bluetooth Adapter property of 'type' */
- /* Based on the type, val shall be one of
- * bt_bdaddr_t or bt_bdname_t or bt_scanmode_t etc
- */
- int (*set_adapter_property)(const bt_property_t *property);
-
- /** Get all Remote Device properties */
- int (*get_remote_device_properties)(bt_bdaddr_t *remote_addr);
-
- /** Get Remote Device property of 'type' */
- int (*get_remote_device_property)(bt_bdaddr_t *remote_addr,
- bt_property_type_t type);
-
- /** Set Remote Device property of 'type' */
- int (*set_remote_device_property)(bt_bdaddr_t *remote_addr,
- const bt_property_t *property);
-
- /** Get Remote Device's service record for the given UUID */
- int (*get_remote_service_record)(bt_bdaddr_t *remote_addr,
- bt_uuid_t *uuid);
-
- /** Start SDP to get remote services */
- int (*get_remote_services)(bt_bdaddr_t *remote_addr);
-
- /** Start Discovery */
- int (*start_discovery)(void);
-
- /** Cancel Discovery */
- int (*cancel_discovery)(void);
-
- /** Create Bluetooth Bonding */
- int (*create_bond)(const bt_bdaddr_t *bd_addr, int transport);
-
- /** Remove Bond */
- int (*remove_bond)(const bt_bdaddr_t *bd_addr);
-
- /** Cancel Bond */
- int (*cancel_bond)(const bt_bdaddr_t *bd_addr);
-
- /**
- * Get the connection status for a given remote device.
- * return value of 0 means the device is not connected,
- * non-zero return status indicates an active connection.
- */
- int (*get_connection_state)(const bt_bdaddr_t *bd_addr);
-
- /** BT Legacy PinKey Reply */
- /** If accept==FALSE, then pin_len and pin_code shall be 0x0 */
- int (*pin_reply)(const bt_bdaddr_t *bd_addr, uint8_t accept,
- uint8_t pin_len, bt_pin_code_t *pin_code);
-
- /** BT SSP Reply - Just Works, Numeric Comparison and Passkey
- * passkey shall be zero for BT_SSP_VARIANT_PASSKEY_COMPARISON &
- * BT_SSP_VARIANT_CONSENT
- * For BT_SSP_VARIANT_PASSKEY_ENTRY, if accept==FALSE, then passkey
- * shall be zero */
- int (*ssp_reply)(const bt_bdaddr_t *bd_addr, bt_ssp_variant_t variant,
- uint8_t accept, uint32_t passkey);
-
- /** Get Bluetooth profile interface */
- const void* (*get_profile_interface) (const char *profile_id);
-
- /** Bluetooth Test Mode APIs - Bluetooth must be enabled for these APIs */
- /* Configure DUT Mode - Use this mode to enter/exit DUT mode */
- int (*dut_mode_configure)(uint8_t enable);
-
- /* Send any test HCI (vendor-specific) command to the controller. Must be in DUT Mode */
- int (*dut_mode_send)(uint16_t opcode, uint8_t *buf, uint8_t len);
- /** BLE Test Mode APIs */
- /* opcode MUST be one of: LE_Receiver_Test, LE_Transmitter_Test, LE_Test_End */
- int (*le_test_mode)(uint16_t opcode, uint8_t *buf, uint8_t len);
-
- /* enable or disable bluetooth HCI snoop log */
- int (*config_hci_snoop_log)(uint8_t enable);
-
- /** Sets the OS call-out functions that bluedroid needs for alarms and wake locks.
- * This should be called immediately after a successful |init|.
- */
- int (*set_os_callouts)(bt_os_callouts_t *callouts);
-
- /** Read Energy info details - return value indicates BT_STATUS_SUCCESS or BT_STATUS_NOT_READY
- * Success indicates that the VSC command was sent to controller
- */
- int (*read_energy_info)();
-
- // MStar Android Patch Begin
- /** This ensures the chip is Powered ON to support other radios in the combo chip.
- * If the chip is OFF it set the chip to ON, if it is already ON it just increases the radio ref count
- * to keep track when to Power OFF */
- int (*enableRadio)(void);
-
- /** This decreases radio ref count and ensures that chip is Powered OFF
- * when the radio ref count becomes zero. */
- int (*disableRadio)(void);
-
- /* Send any test HCI (vendor-specific) command */
- int (*send_vsc)(uint16_t opcode, uint8_t *buf, uint8_t len);
-
- /**Set secure mode configurations*/
- int (*secure_mode_configure)(uint8_t secure_mode, uint8_t scans_disabled,
- uint8_t insec_pair_disabled);
-
- /**Force disable bluetooth*/
- void (*force_disable) ();
-
- /** Add/remove SDP record */
- int (*set_sdp_record)(uint8_t enable, uint16_t uuid);
- // MStar Android Patch End
- } bt_interface_t;
- typedef struct {
- /** Set to sizeof(bt_vndor_interface_t) */
- size_t size;
-
- /*
- * Functions need to be implemented in Vendor libray (libbt-vendor.so).
- */
-
- /**
- * Caller will open the interface and pass in the callback routines
- * to the implemenation of this interface.
- */
- int (*init)(const bt_vendor_callbacks_t* p_cb, unsigned char *local_bdaddr);
-
- /** Vendor specific operations */
- int (*op)(bt_vendor_opcode_t opcode, void *param);
-
- /** Closes the interface */
- void (*cleanup)(void);
- } bt_vendor_interface_t;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。