Merge "Fix clang-tidy performance warnings in libhardware."
diff --git a/include/hardware/bt_common_types.h b/include/hardware/bt_common_types.h
index 01b5256..1e6be6b 100644
--- a/include/hardware/bt_common_types.h
+++ b/include/hardware/bt_common_types.h
@@ -70,6 +70,7 @@
* the characteristic.
*/
uint8_t properties;
+ uint16_t permissions;
} btgatt_db_element_t;
#endif /* ANDROID_INCLUDE_BT_COMMON_TYPES_H */
diff --git a/include/hardware/bt_gatt_client.h b/include/hardware/bt_gatt_client.h
index 68dc3c7..f5df21c 100644
--- a/include/hardware/bt_gatt_client.h
+++ b/include/hardware/bt_gatt_client.h
@@ -315,8 +315,7 @@
/** Write a remote descriptor for a given characteristic */
bt_status_t (*write_descriptor)( int conn_id, uint16_t handle,
- int write_type, int auth_req,
- vector<uint8_t> value);
+ int auth_req, vector<uint8_t> value);
/** Execute a prepared write operation */
bt_status_t (*execute_write)(int conn_id, int execute);
diff --git a/include/hardware/bt_gatt_server.h b/include/hardware/bt_gatt_server.h
index f0eb1b2..92af285 100644
--- a/include/hardware/bt_gatt_server.h
+++ b/include/hardware/bt_gatt_server.h
@@ -56,23 +56,7 @@
/** Callback invoked in response to create_service */
typedef void (*service_added_callback)(int status, int server_if,
- btgatt_srvc_id_t *srvc_id, int srvc_handle);
-
-/** Callback indicating that an included service has been added to a service */
-typedef void (*included_service_added_callback)(int status, int server_if,
- int srvc_handle, int incl_srvc_handle);
-
-/** Callback invoked when a characteristic has been added to a service */
-typedef void (*characteristic_added_callback)(int status, int server_if,
- bt_uuid_t *uuid, int srvc_handle, int char_handle);
-
-/** Callback invoked when a descriptor has been added to a characteristic */
-typedef void (*descriptor_added_callback)(int status, int server_if,
- bt_uuid_t *uuid, int srvc_handle, int descr_handle);
-
-/** Callback invoked in response to start_service */
-typedef void (*service_started_callback)(int status, int server_if,
- int srvc_handle);
+ vector<btgatt_db_element_t> service);
/** Callback invoked in response to stop_service */
typedef void (*service_stopped_callback)(int status, int server_if,
@@ -127,14 +111,12 @@
register_server_callback register_server_cb;
connection_callback connection_cb;
service_added_callback service_added_cb;
- included_service_added_callback included_service_added_cb;
- characteristic_added_callback characteristic_added_cb;
- descriptor_added_callback descriptor_added_cb;
- service_started_callback service_started_cb;
service_stopped_callback service_stopped_cb;
service_deleted_callback service_deleted_cb;
- request_read_callback request_read_cb;
- request_write_callback request_write_cb;
+ request_read_callback request_read_characteristic_cb;
+ request_read_callback request_read_descriptor_cb;
+ request_write_callback request_write_characteristic_cb;
+ request_write_callback request_write_descriptor_cb;
request_exec_write_callback request_exec_write_cb;
response_confirmation_callback response_confirmation_cb;
indication_sent_callback indication_sent_cb;
@@ -159,23 +141,7 @@
int conn_id );
/** Create a new service */
- bt_status_t (*add_service)( int server_if, btgatt_srvc_id_t *srvc_id, int num_handles);
-
- /** Assign an included service to it's parent service */
- bt_status_t (*add_included_service)( int server_if, int service_handle, int included_handle);
-
- /** Add a characteristic to a service */
- bt_status_t (*add_characteristic)( int server_if,
- int service_handle, bt_uuid_t *uuid,
- int properties, int permissions);
-
- /** Add a descriptor to a given service */
- bt_status_t (*add_descriptor)(int server_if, int service_handle,
- bt_uuid_t *uuid, int permissions);
-
- /** Starts a local service */
- bt_status_t (*start_service)(int server_if, int service_handle,
- int transport);
+ bt_status_t (*add_service)(int server_if, vector<btgatt_db_element_t> service);
/** Stops a local service */
bt_status_t (*stop_service)(int server_if, int service_handle);
diff --git a/include/hardware/bt_hf.h b/include/hardware/bt_hf.h
index 7dcb40a..0a77675 100644
--- a/include/hardware/bt_hf.h
+++ b/include/hardware/bt_hf.h
@@ -74,6 +74,20 @@
BTHF_CHLD_TYPE_ADDHELDTOCONF, // Add all held calls to a conference
} bthf_chld_type_t;
+
+/* HF Indicators HFP 1.7 */
+typedef enum
+{
+ BTHF_HF_IND_ENHANCED_DRIVER_SAFETY = 1,
+ BTHF_HF_IND_BATTERY_LEVEL_STATUS = 2,
+} bthf_hf_ind_type_t;
+
+typedef enum
+{
+ BTHF_HF_IND_DISABLED = 0,
+ BTHF_HF_IND_ENABLED,
+} bthf_hf_ind_status_t;
+
/** Callback for connection state change.
* state will have one of the values from BtHfConnectionState
*/
@@ -152,6 +166,15 @@
*/
typedef void (* bthf_key_pressed_cmd_callback)(bt_bdaddr_t *bd_addr);
+/** Callback for BIND. Pass the remote HF Indicators supported.
+ */
+typedef void (* bthf_bind_cmd_callback)(char *at_string, bt_bdaddr_t *bd_addr);
+
+/** Callback for BIEV. Pass the change in the Remote HF indicator values
+ */
+typedef void (* bthf_biev_cmd_callback)(bthf_hf_ind_type_t ind_id, int ind_value,
+ bt_bdaddr_t *bd_addr);
+
/** BT-HF callback structure. */
typedef struct {
/** set to sizeof(BtHfCallbacks) */
@@ -172,6 +195,8 @@
bthf_cops_cmd_callback cops_cmd_cb;
bthf_clcc_cmd_callback clcc_cmd_cb;
bthf_unknown_at_cmd_callback unknown_at_cmd_cb;
+ bthf_bind_cmd_callback bind_cb;
+ bthf_biev_cmd_callback biev_cb;
bthf_key_pressed_cmd_callback key_pressed_cmd_cb;
} bthf_callbacks_t;
@@ -294,6 +319,10 @@
/** configureation for the SCO codec */
bt_status_t (*configure_wbs)( bt_bdaddr_t *bd_addr ,bthf_wbs_config_t config );
+
+ /** Response for HF Indicator change (+BIND) */
+ bt_status_t (*bind_response)(bthf_hf_ind_type_t ind_id, bthf_hf_ind_status_t ind_status,
+ bt_bdaddr_t *bd_addr);
} bthf_interface_t;
__END_DECLS