summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPyun DoHyun <dh79.pyun@samsung.com>2016-12-04 21:30:34 -0800
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>2016-12-04 21:30:34 -0800
commit4998067018fb5029a387cf868ed62dd1faa815de (patch)
treebd210c64b01c50b081bd2e93dbf334a4f6a4cc06
parentef9bd1390126028919dd09350a8c068a86f53d3c (diff)
parentebdb6d1c4559c3384f25a60226b796bb8c43961a (diff)
downloadbluetooth-4998067018fb5029a387cf868ed62dd1faa815de.tar.gz
bluetooth-4998067018fb5029a387cf868ed62dd1faa815de.tar.bz2
bluetooth-4998067018fb5029a387cf868ed62dd1faa815de.zip
Merge changes I2d80c474,I4b17e6da into tizen
* changes: Remove Profile Build Dependency: do it at runtime Defragment CAPI for Profiles (2/2)
-rw-r--r--CMakeLists.txt70
-rw-r--r--include/bluetooth.h (renamed from include/mobile/bluetooth.h)0
-rw-r--r--include/bluetooth_extension.h (renamed from include/mobile/bluetooth_extension.h)0
-rw-r--r--include/bluetooth_internal.h (renamed from include/tv/bluetooth_internal.h)0
-rw-r--r--include/bluetooth_private.h62
-rw-r--r--include/bluetooth_type.h (renamed from include/tv/bluetooth_type.h)1
-rw-r--r--include/bluetooth_type_extension.h (renamed from include/mobile/bluetooth_type_extension.h)0
-rw-r--r--include/bluetooth_type_internal.h (renamed from include/wearable/bluetooth_type_internal.h)0
-rw-r--r--include/mobile/bluetooth_internal.h3752
-rw-r--r--include/mobile/bluetooth_type.h2250
-rw-r--r--include/mobile/bluetooth_type_internal.h737
-rw-r--r--include/tv/bluetooth.h5865
-rw-r--r--include/tv/bluetooth_extension.h292
-rw-r--r--include/tv/bluetooth_type_extension.h55
-rw-r--r--include/tv/bluetooth_type_internal.h737
-rw-r--r--include/wearable/bluetooth.h5311
-rw-r--r--include/wearable/bluetooth_extension.h292
-rw-r--r--include/wearable/bluetooth_internal.h3467
-rw-r--r--include/wearable/bluetooth_type.h2031
-rw-r--r--include/wearable/bluetooth_type_extension.h55
-rw-r--r--packaging/capi-network-bluetooth.spec41
-rw-r--r--src/bluetooth-adapter.c8
-rw-r--r--src/bluetooth-audio.c58
-rw-r--r--src/bluetooth-common.c245
-rw-r--r--src/bluetooth-gatt.c2
-rw-r--r--test/bt_unit_test.c165
-rw-r--r--test/bt_unit_test.h14
27 files changed, 326 insertions, 25184 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8a95c78..4cac390 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,23 +7,9 @@ SET(CMAKE_INSTALL_PREFIX /usr)
SET(PREFIX ${CMAKE_INSTALL_PREFIX})
SET(INC_DIR include)
-IF (TIZEN_PROFILE_TV)
- INCLUDE_DIRECTORIES(${INC_DIR})
- INCLUDE_DIRECTORIES(${INC_DIR}/tv)
-ELSE ()
- INCLUDE_DIRECTORIES(${INC_DIR})
- IF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
- INCLUDE_DIRECTORIES(${INC_DIR}/wearable)
- ELSE ()
- INCLUDE_DIRECTORIES(${INC_DIR}/mobile)
- ENDIF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
-ENDIF (TIZEN_PROFILE_TV)
-
-IF (TIZEN_PROFILE_TV)
- SET(dependents "dlog glib-2.0 capi-base-common capi-system-info bluetooth-api db-util")
-ELSE ()
- SET(dependents "dlog glib-2.0 capi-base-common capi-system-info bluetooth-api")
-ENDIF (TIZEN_PROFILE_TV)
+INCLUDE_DIRECTORIES(${INC_DIR})
+
+SET(dependents "dlog glib-2.0 capi-base-common capi-system-info bluetooth-api db-util")
SET(pc_dependents "capi-base-common glib-2.0")
INCLUDE(FindPkgConfig)
@@ -44,25 +30,7 @@ ADD_DEFINITIONS("-DTIZEN_DEBUG")
SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=${LIB_INSTALL_DIR}")
-IF (TIZEN_PROFILE_TV)
-SET(SOURCES
-src/bluetooth-common.c
-src/bluetooth-adapter.c
-src/bluetooth-device.c
-src/bluetooth-socket.c
-src/bluetooth-opp-server.c
-src/bluetooth-opp-client.c
-src/bluetooth-pan.c
-src/bluetooth-hdp.c
-src/bluetooth-hid.c
-src/bluetooth-audio.c
-src/bluetooth-avrcp.c
-src/bluetooth-gatt.c
-src/bluetooth-ipsp.c
-src/bluetooth-dpm.c
-src/bluetooth-proximity.c
-)
-ELSE ()
+
SET(SOURCES
src/bluetooth-common.c
src/bluetooth-adapter.c
@@ -80,10 +48,9 @@ src/bluetooth-ipsp.c
src/bluetooth-dpm.c
src/bluetooth-proximity.c
)
-IF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
+
+LIST(APPEND SOURCES src/bluetooth-proximity.c)
LIST(APPEND SOURCES src/bluetooth-pbap.c)
-ENDIF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
-ENDIF (TIZEN_PROFILE_TV)
ADD_LIBRARY(${fw_name} SHARED ${SOURCES})
@@ -104,28 +71,6 @@ INSTALL(
PATTERN "*_private.h" EXCLUDE
PATTERN "${INC_DIR}/*.h"
)
-IF (TIZEN_PROFILE_TV)
-INSTALL(
- DIRECTORY ${INC_DIR}/tv/ DESTINATION include/network
- FILES_MATCHING
- PATTERN "${INC_DIR}/tv/*.h"
- )
-
-ELSE ()
- IF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
- INSTALL(
- DIRECTORY ${INC_DIR}/wearable/ DESTINATION include/network
- FILES_MATCHING
- PATTERN "${INC_DIR}/wearable/*.h"
- )
- ELSE ()
- INSTALL(
- DIRECTORY ${INC_DIR}/mobile/ DESTINATION include/network
- FILES_MATCHING
- PATTERN "${INC_DIR}/mobile/*.h"
- )
- ENDIF (TIZEN_PROFILE_WEARABLE OR TIZEN_PROFILE_IVI)
-ENDIF (TIZEN_PROFILE_TV)
SET(PC_NAME ${fw_name})
SET(PC_REQUIRED ${pc_dependents})
@@ -138,10 +83,7 @@ CONFIGURE_FILE(
)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
-IF (TIZEN_PROFILE_TV)
-ELSE ()
ADD_SUBDIRECTORY(test)
-ENDIF (TIZEN_PROFILE_TV)
IF(UNIX)
diff --git a/include/mobile/bluetooth.h b/include/bluetooth.h
index deaa0c2..deaa0c2 100644
--- a/include/mobile/bluetooth.h
+++ b/include/bluetooth.h
diff --git a/include/mobile/bluetooth_extension.h b/include/bluetooth_extension.h
index 64c76c8..64c76c8 100644
--- a/include/mobile/bluetooth_extension.h
+++ b/include/bluetooth_extension.h
diff --git a/include/tv/bluetooth_internal.h b/include/bluetooth_internal.h
index ecc73e4..ecc73e4 100644
--- a/include/tv/bluetooth_internal.h
+++ b/include/bluetooth_internal.h
diff --git a/include/bluetooth_private.h b/include/bluetooth_private.h
index 7b4b552..2ce25d9 100644
--- a/include/bluetooth_private.h
+++ b/include/bluetooth_private.h
@@ -115,13 +115,11 @@ typedef enum {
BT_EVENT_GATT_CLIENT_READ_DESCRIPTOR, /**< GATT descriptor value read callback */
BT_EVENT_GATT_CLIENT_WRITE_DESCRIPTOR, /**< GATT descriptor value write callback */
BT_EVENT_GATT_SERVER_READ_REQUESTED, /**< GATT Characteristic/Descriptor Read Requested callback*/
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DISCOVERED_LEGACY, /**< GATT characteristic discovered callback */
BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DESCRIPTOR_DISCOVERED_LEGACY, /**< GATT characteristic descriptor discovered callback */
BT_EVENT_GATT_CLIENT_VALUE_CHANGED_LEGACY, /**< GATT characteristic value changed callback */
BT_EVENT_GATT_CLIENT_READ_CHARACTERISTIC_LEGACY, /**< GATT characteristic value read callback */
BT_EVENT_GATT_CLIENT_WRITE_CHARACTERISTIC_LEGACY, /**< GATT characteristic value write callback */
-#endif
BT_EVENT_IPSP_INIT_STATE_CHANGED, /**< IPSP Init status changed callback */
BT_EVENT_IPSP_CONNECTION_STATUS, /**< IPSP connection status callback */
BT_EVENT_LE_DATA_LENGTH_CHANGED, /** LE data length changed callback */
@@ -136,7 +134,6 @@ typedef enum {
BT_EVENT_SUPPORTED_TRUSTED_PROFILE_EVENT, /**< Trusted Profile callback */
BT_EVENT_PROXIMITY_CONNECTION_STATE_CHANGED, /**< Proximity Monitor/Reporter Connection sgate changed */
BT_EVENT_PROXIMITY_REPORTER_PROPERTY_CHANGED, /**< Proximity property changed */
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
BT_EVENT_PBAP_CONNECTION_STATUS, /**< PBAP connection status callback */
BT_EVENT_PBAP_PHONEBOOK_SIZE, /**< PBAP Phonebook Size status callback */
BT_EVENT_PBAP_PHONEBOOK_PULL, /**< PBAP Phonebook Pull status callback */
@@ -151,7 +148,6 @@ typedef enum {
BT_EVENT_HF_CALL_STATUS_UPDATED_EVENT, /**< Audio - HF call status updated callback */
BT_EVENT_HF_REMOTE_CALL_EVENT, /**< Audio - HF : call state event callback */
BT_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED, /**< Audio - HF : device state changed callback */
-#endif
BT_EVENT_MAX
} bt_event_e;
@@ -160,35 +156,6 @@ typedef enum {
BT_GATT_ROLE_CLIENT = 0x02,
} bt_gatt_role_e;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
-/**
- * @internal
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE = 0x00, /**< Connectable undirected advertising (ADV_IND) */
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE_DIRECT_HIGH = 0x01, /* @Deprecated since Tizen 2.4 */
- BT_ADAPTER_LE_ADVERTISING_SCANNABLE = 0x02, /**< Scannable undirected advertising (ADV_SCAN_IND) */
- BT_ADAPTER_LE_ADVERTISING_NON_CONNECTABLE = 0x03, /**< Non connectable undirected advertising (ADV_NONCOND_IND) */
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE_DIRECT_LOW = 0x04, /* @Deprecated since Tizen 2.4 */
-} bt_adapter_le_advertising_type_e;
-
-/**
- * @internal
- */
-typedef enum {
- BT_ADAPTER_LE_PACKET_DATA_INCOMP_LIST_16_BIT_SERVICE_CLASS_UUIDS = 0x02, /**<Incomplete list of 16 bit UUIDs */
- BT_ADAPTER_LE_PACKET_DATA_COMP_LIST_16_BIT_SERVICE_CLASS_UUIDS = 0x03, /**< Complete list of 16 bit UUIDs */
- BT_ADAPTER_LE_PACKET_DATA_INCOMP_LIST_128_BIT_SERVICE_CLASS_UUIDS = 0x06, /**< Incomplete list of 128 bit UUIDs */
- BT_ADAPTER_LE_PACKET_DATA_COMP_LIST_128_BIT_SERVICE_CLASS_UUIDS = 0x07, /**< Complete list of 128 bit UUID */
- BT_ADAPTER_LE_PACKET_DATA_LOCAL_NAME = 0x09, /**<local device name */
- BT_ADAPTER_LE_PACKET_DATA_TX_POWER_LEVEL = 0x0a, /**< TX-Power level*/
- BT_ADAPTER_LE_PACKET_DATA_16_BIT_SERVICE_SOLICITATION_UUIDS = 0x14, /**< List of 16-bit Service Solicitation UUIDs*/
- BT_ADAPTER_LE_PACKET_DATA_128_BIT_SERVICE_SOLICITATION_UUIDS = 0x15, /**< List of 128-bit Service Solicitation UUIDs*/
- BT_ADAPTER_LE_PACKET_DATA_SERVICE_DATA = 0x16, /**< Service data */
- BT_ADAPTER_LE_PACKET_DATA_APPEARANCE = 0x19, /**< Appearance*/
- BT_ADAPTER_LE_PACKET_DATA_MANUFACTURER_SPECIFIC_DATA = 0xff, /**< Manufacturer data */
-} bt_adapter_le_packet_data_type_e;
-#endif
/**
* @internal
@@ -713,7 +680,6 @@ bt_adapter_visibility_mode_e _bt_get_bt_visibility_mode_e(bluetooth_discoverable
*/
void _bt_audio_event_proxy(int event, bt_audio_event_param_t *param, void *user_data);
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
/**
* @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
* @brief Enumerations for the device state event from Audio-Gateway device
@@ -793,7 +759,6 @@ typedef void (*bt_hf_vendor_dep_cmd_event_cb) (bt_hf_vendor_dep_at_cmd_s cmd, vo
* @brief Since the HF call back and event proxy call backs have different prototype it is wrapper function.
*/
void _bt_hf_event_proxy(int event, bt_hf_event_param_t *param, void *user_data);
-#endif
/**
* @internal
@@ -815,9 +780,7 @@ void _bt_hid_event_proxy(int event, hid_event_param_t *param, void *user_data);
void _bt_adapter_le_invoke_advertising_state_cb(int handle, int result, bt_adapter_le_advertising_state_e adv_state);
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
bool _bt_gatt_is_legacy_client_mode(void);
-#endif
bt_gatt_client_h _bt_gatt_get_client(const char *remote_addr);
@@ -914,6 +877,31 @@ int _bt_check_proximity_is_initialized(bool *is_initialized);
*/
int _bt_proximity_connection_set_state_changed(int result, const char *remote_address, bool connected);
+typedef enum {
+ _PROFILE_UNKNOWN = 0,
+ _PROFILE_MOBILE = 0x1,
+ _PROFILE_WEARABLE = 0x2,
+ _PROFILE_TV = 0x4,
+ _PROFILE_IVI = 0x8,
+ _PROFILE_COMMON = 0x10,
+} tizen_profile_t;
+extern tizen_profile_t _get_tizen_profile();
+extern tizen_profile_t profile;
+
+#define TIZEN_PROFILE_(x) (( (__builtin_expect(profile != _PROFILE_UNKNOWN, 1)) ? \
+ (profile) : _get_tizen_profile()) \
+ & (x))
+
+#define TIZEN_PROFILE_MOBILE TIZEN_PROFILE_(_PROFILE_MOBILE)
+#define TIZEN_PROFILE_COMMON TIZEN_PROFILE_(_PROFILE_COMMON)
+#define TIZEN_PROFILE_TV TIZEN_PROFILE_(_PROFILE_TV)
+#define TIZEN_PROFILE_WEARABLE TIZEN_PROFILE_(_PROFILE_WEARABLE)
+#define TIZEN_PROFILE_IVI TIZEN_PROFILE_(_PROFILE_IVI)
+
+#define TIZEN_PROFILE_WEARABLE_IVI TIZEN_PROFILE_(_PROFILE_WEARABLE | _PROFILE_IVI)
+
+#define TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT TIZEN_PROFILE_MOBILE
+
#ifdef __cplusplus
}
#endif
diff --git a/include/tv/bluetooth_type.h b/include/bluetooth_type.h
index aff0170..8c547fe 100644
--- a/include/tv/bluetooth_type.h
+++ b/include/bluetooth_type.h
@@ -221,6 +221,7 @@ typedef enum {
*/
typedef enum {
BT_ADAPTER_LE_PACKET_DATA_COMP_LIST_16_BIT_SERVICE_CLASS_UUIDS = 0x03, /**< Complete list of 16 bit UUIDs */
+ BT_ADAPTER_LE_PACKET_DATA_LOCAL_NAME = 0x09, /**<local device name. unit-test uses this. */
BT_ADAPTER_LE_PACKET_DATA_MANUFACTURER_SPECIFIC_DATA = 0xff, /**< Manufacturer data */
} bt_adapter_le_packet_data_type_e;
diff --git a/include/mobile/bluetooth_type_extension.h b/include/bluetooth_type_extension.h
index 3bb2434..3bb2434 100644
--- a/include/mobile/bluetooth_type_extension.h
+++ b/include/bluetooth_type_extension.h
diff --git a/include/wearable/bluetooth_type_internal.h b/include/bluetooth_type_internal.h
index c3c2343..c3c2343 100644
--- a/include/wearable/bluetooth_type_internal.h
+++ b/include/bluetooth_type_internal.h
diff --git a/include/mobile/bluetooth_internal.h b/include/mobile/bluetooth_internal.h
deleted file mode 100644
index fb34bdc..0000000
--- a/include/mobile/bluetooth_internal.h
+++ /dev/null
@@ -1,3752 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__
-#define __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__
-
-#include <glib.h>
-#include "bluetooth_type.h"
-#include "bluetooth_type_internal.h"
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_internal.h
- */
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enables the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function enables Bluetooth protocol stack and hardware.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_ALREADY_DONE Already enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @pre The state of local Bluetooth must be #BT_ADAPTER_DISABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_adapter_get_state()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- * @see bt_adapter_state_changed_cb()
- *
- */
-int bt_adapter_enable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Disables the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function disables Bluetooth protocol stack and hardware.
- *
- * @remarks You should disable Bluetooth adapter, which is helpful for saving power.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_adapter_get_state()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb ()
- *
- */
-int bt_adapter_disable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Recover the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function does recovery logic, disables Bluetooth protocol stack and hardware, then enables after a few seconds.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_adapter_get_state()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb ()
- *
- */
-int bt_adapter_recover(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Reset the local Bluetooth adapter, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function resets Bluetooth protocol and values.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_state_changed_cb() will be invoked if The state of local Bluetooth was #BT_ADAPTER_ENABLED.
- *
- * @see bt_initialize()
- * @see bt_adapter_get_state()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- * @see bt_adapter_state_changed_cb()
- *
- */
-int bt_adapter_reset(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the version of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a local_version must be released with free() by you.
- *
- * @param[out] local_version The version of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_version(char **local_version);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the information regarding local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a all parameters must be released with free() by you.
- *
- * @param[out] chipset Chipset name of local Bluetooth adapter
- * @param[out] firmware Firmware info. of local Bluetooth adapter
- * @param[out] stack_version Bluetooth stack version
- * @param[out] profiles The profile list of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_local_info(char **chipset, char **firmware, char **stack_version, char **profiles);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the visibility mode.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE will change to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE
- * after the given @a duration goes.
- *
- * @param[in] discoverable_mode The Bluetooth visibility mode to set
- * @param[in] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds).
- * @a duration is used only for #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE mode.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_visibility_mode_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_visibility()
- * @see bt_adapter_visibility_mode_changed_cb()
- * @see bt_adapter_set_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-int bt_adapter_set_visibility(bt_adapter_visibility_mode_e discoverable_mode, int duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function that will be invoked when remote device requests authentication.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @param[in] callback callback function to be set when a request is received.
- * @param[in] user_data data from application which will be provided in callback.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @see bt_initialize()
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_set_authentication_req_cb(bt_adapter_authentication_req_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters a callback function that will be invoked when remote device requests authentication.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @see bt_initialize()
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_unset_authentication_req_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief API to reply with PIN or PASSKEY with authentication type - TRUE or FALSE.
- * @remarks This function can be called by application when remote device requests PIN or PASSKEY from
- * local adapter.
- * @param[in] passkey The passkey to be provided by application when remote devices requests for it.
- * @param[in] authentication_reply This indicates whether application wants to accept or cancel the on-going pairing
- * @pre This function can only be called when application receieves authentication event (BT_AUTH_PIN_REQUEST)
- * from remote device.
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_passkey_reply(char *passkey, bool authentication_reply);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief API to reply to the PASSKEY confirmation for on-going pairing with remote device.
- * @remarks This function can be called by application, when local adapter wants PASSKEY confirmation from user.
- * @param[in] confirmation_reply This indicates whether application wants to accepts or cancels the on-going pairing
- * confirmation_reply : TRUE will indicate that Application has confirmed the PASSKEY
- * confirmation_reply : FALSE will indicate that Application has failed to confirm the PASSKEY. In this situation
- * the pairing will be failed.
- * @pre This function can only be called when application receives authentication event (BT_AUTH_PASSKEY_CONFIRM_REQUEST)
- * from remote device.
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_passkey_confirmation_reply(bool confirmation_reply);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the connectable state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_connectable_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-int bt_adapter_set_connectable_changed_cb(bt_adapter_connectable_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_connectable_changed_cb()
- */
-int bt_adapter_unset_connectable_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the connectable state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks When connectable state is false, no device can connect to this device and visibility mode cannot be changed.
- *
- * @param[out] connectable The connectable state of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_set_connectable()
- */
-int bt_adapter_get_connectable(bool *connectable);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the connectable state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks When connectable state is false, no device can connect to this device and visibility mode cannot be changed.
- *
- * @param[in] connectable The connectable state to set
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_connectable_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_connectable()
- * @see bt_adapter_connectable_changed_cb()
- * @see bt_adapter_set_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-int bt_adapter_set_connectable(bool connectable);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the manufacturer data of local Bluetooth adapter.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] data The manufacturer specific data of the Bluetooth device.
- * @param[in] len The length of @a data.Maximaum length is 240 bytes.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_manufacturer_data_changed_cb() will be invoked
- * if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_manufacturer_data_changed_cb
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-int bt_adapter_set_manufacturer_data(char *data, int len);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked
- * when the manufacturer data of Bluetooth adapter changes.
- * @since_tizen 2.3
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_manufacturer_data_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-int bt_adapter_set_manufacturer_data_changed_cb(
- bt_adapter_manufacturer_data_changed_cb callback,
- void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen 2.3
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- */
-int bt_adapter_unset_manufacturer_data_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enables the local Bluetooth le adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function enables Bluetooth protocol stack and hardware.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_ALREADY_DONE Already enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @post This function invokes bt_adapter_le_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_adapter_le_get_state()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- * @see bt_adapter_le_state_changed_cb()
- *
- */
-int bt_adapter_le_enable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Disables the local Bluetooth le adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function disables Bluetooth le protocol stack and hardware.
- *
- * @remarks
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_LE_ENABLED
- * @post This function invokes bt_adapter_le_state_changed_cb().
- *
- * @see bt_adapter_le_get_state()
- * @see bt_adapter_le_state_changed_cb()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb ()
- *
- */
-int bt_adapter_le_disable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the current state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] adapter_le_state The current adapter le state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_adapter_le_get_state(bt_adapter_le_state_e *adapter_le_state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Registers a callback function to be invoked when the Bluetooth adapter le state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_le_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_le_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- */
-int bt_adapter_le_set_state_changed_cb(bt_adapter_le_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_le_set_state_changed_cb()
- */
-int bt_adapter_le_unset_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief add address to whitelist for accepting scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks If the adress is in the whitelist then other LE devices are able to
- * search this device. Before calling this API, make sure that the adapter is
- * enabled. There is no callback event for this API.
-
- * @param[in] address The other device's address
- * @param[in] address_type The other device's address type
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-int bt_adapter_le_add_white_list(const char *address, bt_device_address_type_e address_type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief remove address from the whitelist for not accepting scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks If the adress is in the whitelist then other LE devices are able to
- * search this device. Before calling this API, make sure that the adapter is
- * enabled. There is no callback event for this API.
- *
- * @param[in] address The other device's address
- * @param[in] address_type The other device's address type
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-int bt_adapter_le_remove_white_list(const char *address, bt_device_address_type_e address_type);
-
-/**
- * @internal
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief clear address from the whitelist for not accepting scanning request.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks If the adress is in the whitelist then other LE devices are able to
- * search this device. Before calling this API, make sure that the adapter is
- * enabled. There is no callback event for this API.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-int bt_adapter_le_clear_white_list(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets the Privacy feature state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] enable_privacy The privacy feature to set/unset.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The state of local Bluetooth must be #BT_ADAPTER_LE_ENABLED.
- *
- */
-int bt_adapter_le_enable_privacy(bool enable_privacy);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Creates scan filter to find only LE advertisement which has specific data.
- * @since_tizen 2.4
- *
- * @param[out] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_destroy_scan_filter()
- */
-int bt_adapter_le_create_scan_filter(bt_scan_filter_h *scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Destroys scan filter.
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_create_scan_filter()
- */
-int bt_adapter_le_destroy_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the device address to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] address The device address to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_device_address(bt_scan_filter_h scan_filter, const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the device name to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] name The device name to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_device_name(bt_scan_filter_h scan_filter, const char *name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service UUID to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_uuid(bt_scan_filter_h scan_filter, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service uuid and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] mask The mask to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_uuid_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *mask);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service solicitation UUID to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service solicitation UUID to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_solicitation_uuid(bt_scan_filter_h scan_filter, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service solicitation uuid and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service solicitation uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service solicitation UUID to filter advertisements
- * @param[in] mask The mask to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_solicitation_uuid_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *mask);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service data to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] data The service data to filter advertisements
- * @param[in] data_len The length of the service data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_data(bt_scan_filter_h scan_filter,
- const char *uuid, const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service data and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service data.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] data The service data to filter advertisements
- * @param[in] data_len The length of the service data
- * @param[in] mask The mask to filter advertisements
- * @param[in] mask_len The length of the mask to be set.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_data_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *data, unsigned int data_len, const char *mask, unsigned int mask_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the manufacturer data to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] manufacturer_id The manufacturer ID (0x0000 ~ 0xFFFF)
- * @param[in] data The manufacturer data (byte array)
- * @param[in] data_len The length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_manufacturer_data(bt_scan_filter_h scan_filter,
- int manufacturer_id, const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the manufacturer data and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] manufacturer_id The manufacturer ID (0x0000 ~ 0xFFFF)
- * @param[in] data The manufacturer data (byte array)
- * @param[in] data_len The length of manufacturer data
- * @param[in] mask The mask to filter advertisements
- * @param[in] mask_len The length of the mask to be set.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_manufacturer_data_with_mask(bt_scan_filter_h scan_filter,
- int manufacturer_id, const char *data, unsigned int data_len, const char *mask, unsigned int mask_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Registers the scan filter to use for scanning
- * @since_tizen 2.4
- *
- * @remarks Several scan filters can be registered. And the specific advertisements, satisfy the one of scan filters, will be found.
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_register_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters the scan filter to be registered
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_unregister_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters all scan filters to be registered
- * @since_tizen 2.4
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_unregister_all_scan_filters(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set advertising filter policy to use white list
- * @since_tizen 2.4
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] filter_policy The filter policy of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_filter_policy(bt_advertiser_h advertiser, bt_adapter_le_advertising_filter_policy_e filter_policy);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets a connection state
- * @since_tizen @if WEARABLE Unsupported @else 2.4 @endif
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] link_type The link type to get a connection state
- * @param[out] connected The connection state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- */
-int bt_device_get_connection_state(const char *remote_address, bt_device_connection_link_type_e link_type, bool *connected);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Creates a bond with a remote Bluetooth device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks A bond can be destroyed by bt_device_destroy_bond().\n
- * The bonding request can be cancelled by bt_device_cancel_bonding().
- *
- * @param[in] remote_address The address of the remote Bluetooth device with which the bond should be created
- * @param[in] conn_type The connection type(LE or BREDR) to create bond with remote device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @post This function invokes bt_device_bond_created_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_cancel_bonding()
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_create_bond_by_type(const char *remote_address,
- bt_device_connection_link_type_e conn_type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Cancels service search process.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The service search must be in progress by bt_device_start_service_search().
- *
- * @see bt_device_start_service_search()
- * @see bt_device_service_searched_cb()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_cancel_service_search(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets a connection state
- * @since_tizen @if WEARABLE 2.4 @endif
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] link_type The link type to get a connection state
- * @param[out] connected The connection state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- */
-int bt_device_get_connection_state(const char *remote_address, bt_device_connection_link_type_e link_type, bool *connected);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets a profile restricted connection for a device
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_set_profile_restricted(const char *device_address, bt_restricted_profile_t profile, bool restricted);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets a profile restricted connection for a device
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_get_profile_restricted(const char *device_address, bt_restricted_profile_t profile, int *restricted);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Request to change ATT MTU value
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] mtu New MTU value to be changed
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_request_att_mtu(const char *remote_address, unsigned int mtu);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the ATT MTU value set for a connection
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[ot] mtu MTU value set for a connection
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_get_att_mtu(const char *remote_address, unsigned int *mtu);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the ATT MTU is changed.
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_unset_att_mtu_changed_cb()
- */
-int bt_device_set_att_mtu_changed_cb(bt_device_att_mtu_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function to be invoked when the ATT MTU is changed.
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_att_mtu_changed_cb()
- */
-int bt_device_unset_att_mtu_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Registers a rfcomm server socket with a specific UUID. Activation by dbus is possible when the profile is connected.
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks A socket can be destroyed by bt_socket_destroy_rfcomm_ex().
- * Application should call this API to receive a connection event when launched again by dbus.
- *
- * @param[in] uuid The UUID of service to provide
- * @param[in] bus_name bus_name of the application which is provided in service file.
- * @param[in] object_path dbus of the application
- * @return 0 on success, otherwise a negative error value.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Already registered
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_socket_listen_and_accept_rfcomm_ex()
- * @see bt_socket_destroy_rfcomm_ex()
- */
-int bt_socket_create_rfcomm_ex(const char *uuid, const char *bus_name, const char *object_path);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Removes the rfcomm server socket which was created using bt_socket_create_rfcomm_ex().
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @remarks If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called when this function is finished successfully.
- *
- * @param[in] uuid The UUID (which was created using bt_socket_create_rfcomm()) to destroy
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm_ex().
- * @post If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called.
- * @see bt_socket_create_rfcomm_ex()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_destroy_rfcomm_ex(const char *uuid);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket and accepts connection requests. Activation by dbus is possible when the profile is connected.
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details Pop-up is shown automatically when a RFCOMM connection is requested.
- * bt_socket_connection_state_changed_cb() will be called with
- * #BT_SOCKET_CONNECTED if you click "yes" and connection is finished successfully.
- * @param[in] uuid The UUID of service to provide
- * @param[in] max_pending_connections The maximum number of pending connections
- * @param[in] bus_name bus_name of the application which is provided in service file.
- * @param[in] object_path dbus of the application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm_ex().
- * @post If callback function bt_socket_connection_state_changed_cb() is set,
- * then bt_socket_connection_state_changed_cb() will be called when the remote Bluetooth device is connected.
- * @see bt_socket_create_rfcomm_ex()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_listen_and_accept_rfcomm_ex(const char *uuid, int max_pending_connections, const char* bus_name, const char *object_path);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details bt_socket_connection_requested_cb() will be called when a RFCOMM connection is requested.
- *
- * @param[in] socket_fd The file descriptor socket on which start to listen
- * @param[in] max_pending_connections The number of pending connections
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post This function invokes bt_socket_connection_state_changed_cb().
- *
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_set_connection_requested_cb()
- * @see bt_socket_unset_connection_requested_cb()
- * @see bt_socket_connection_requested_cb()
- */
-int bt_socket_listen(int socket_fd, int max_pending_connections);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Accepts a connection request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] requested_socket_fd The file descriptor of socket on which a connection is requested
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection is requested by bt_socket_connection_requested_cb().
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_requested_cb()
- * @see bt_socket_listen()
- * @see bt_socket_reject()
-*/
-int bt_socket_accept(int requested_socket_fd);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Rejects a connection request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] socket_fd The file descriptor of socket on which a connection is requested
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection is requested by bt_socket_connection_requested_cb().
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_requested_cb()
- * @see bt_socket_listen()
- * @see bt_socket_accept()
- */
-int bt_socket_reject(int socket_fd);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Initializes the Bluetooth OPP server requested by bt_opp_server_push_requested_cb().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @details The popup appears when an OPP connection is requested from a remote device.
- * If you accept the request, then connection will be established and bt_opp_server_push_requested_cb() will be called.
- * At that time, you can call either bt_opp_server_accept() or bt_opp_server_reject().
- * @remarks This function must be called to start Bluetooth OPP server. You must free all resources of the Bluetooth service
- * by calling bt_opp_server_deinitialize() if Bluetooth OPP service is no longer needed.
- * @param[in] destination The destination path
- * @param[in] push_requested_cb The callback called when a push is requested
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_push_requested_cb()
- * @see bt_opp_server_deinitialize()
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_initialize(const char *destination, bt_opp_server_push_requested_cb push_requested_cb, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_MODULE
- * @brief Gets the percentage progress for ongoing transfers.
- * @since_tizen 3.0
- * @exception None
- * @param[in] transfer_type Transfer Type: (@c BLUETOOTH_TRANSFER_INBOUND = receiving , @c BLUETOOTH_TRANSFER_OUTBOUND = sending)
- * @param[in] transfer_id Transfer ID
- * @param[out] progress Percentage Progress
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- */
-int bt_opp_get_transfer_progress(bt_opp_transfer_type_t transfer_type,
- int transfer_id, unsigned char *progress);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the call event to the remote bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @remarks Before notifying #BT_AG_CALL_EVENT_ANSWERED or #BT_AG_CALL_EVENT_DIALING, you should open SCO(Synchronous Connection Oriented link)
- * if Bluetooth Hands-Free need SCO connection.
- * @param[in] event The call event
- * @param[in] call_id The call ID
- * @param[in] phone_number The phone number. You must set this value in case of #BT_AG_CALL_EVENT_DIALING and #BT_AG_CALL_EVENT_INCOMING.
- * In other cases, this value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_call_event(bt_ag_call_event_e event, unsigned int call_id, const char *phone_number);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the call list to the remote bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] list The call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_call_list(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_voice_recognition_state(bool state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-int bt_ag_set_call_handling_event_cb(bt_ag_call_handling_event_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_set_call_handling_event_cb()
- */
-int bt_ag_unset_call_handling_event_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-int bt_ag_set_multi_call_handling_event_cb(bt_ag_multi_call_handling_event_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_set_multi_call_handling_event_cb()
- */
-int bt_ag_unset_multi_call_handling_event_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_dtmf_transmitted_cb()
- * @see bt_ag_unset_dtmf_transmitted_cb()
- */
-int bt_ag_set_dtmf_transmitted_cb(bt_ag_dtmf_transmitted_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_dtmf_transmitted_cb()
- * @see bt_ag_set_dtmf_transmitted_cb()
- */
-int bt_ag_unset_dtmf_transmitted_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether the remoted device enables NREC(Noise Reduction and Echo Canceling) or not.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] enabled The NREC status: (@c true = enabled, @c false = not enabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_audio_connect()
- */
-int bt_ag_is_nrec_enabled(bool *enabled);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Creates a handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_destroy()
- */
-int bt_call_list_create(bt_call_list_h *list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Destroys the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_destroy(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Resets the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_reset(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Adds a call to the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @param[in] call_id The call ID
- * @param[in] state The state of audio gate call
- * @param[in] phone_number The phone number. You must set this value in case of #BT_AG_CALL_EVENT_DIALING and #BT_AG_CALL_EVENT_INCOMING.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_add(bt_call_list_h list, unsigned int call_id, bt_ag_call_state_e state, const char *phone_number);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether the remoted device is wbs (Wide Band Speech) mode or not.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @param[out] wbs_mode The wbs status: (@c true = wide band speech, @c false = narrow band speech)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_audio_connect()
- */
-int bt_ag_is_wbs_mode(bool *wbs_mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Gets the HF(Hands-Free) profile connected status for AG role.
- * @since_tizen 2.4
- * @param[out] connected the connected status: (@c true = connected , @c false = not connected )
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_ag_is_connected(bool *connected);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- */
-int bt_hf_set_sco_state_changed_cb(bt_hf_sco_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_set_sco_state_changed_cb()
- */
-int bt_hf_unset_sco_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-int bt_hf_set_call_handling_event_cb(bt_hf_call_handling_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_set_call_handling_event_cb()
- */
-int bt_hf_unset_call_handling_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-int bt_hf_set_multi_call_handling_event_cb(bt_hf_multi_call_handling_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_set_multi_call_handling_event_cb()
- */
-int bt_hf_unset_multi_call_handling_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Initializes the Bluetooth HF profile related with audio.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks This function must be called before Bluetooth profiles related with audio starts.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hf_deinitialize()
- */
-int bt_hf_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Deinitializes the Bluetooth HF profile related with audio.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- */
-int bt_hf_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the call event to the remote bluetooth device.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @remarks Before notifying #BT_HF_CALL_EVENT_ANSWERED or #BT_HF_CALL_EVENT_DIALING, you should open SCO(Synchronous Connection Oriented link)
- * if Bluetooth Hands-Free need SCO connection.
- * @param[in] event The call event
- * @param[in] call_id The call ID
- * @param[in] phone_number The phone number. You must set this value in case of #BT_HF_CALL_EVENT_DIALING and #BT_HF_CALL_EVENT_INCOMING.
- * In other cases, this value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_notify_call_event(bt_hf_call_event_e event, char *phone_number);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the speaker gain to the remote device.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @details This function sends a signal to the remote device. This signal has the gain value.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * When the speaker gain of remote device is changed to the requested gain, bt_audio_speaker_gain_changed_cb() will be called.
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_hf_get_speaker_gain()
- * @see bt_hf_set_speaker_gain_changed_cb()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-int bt_hf_notify_speaker_gain(int gain);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @details This function let you know the change of the speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-int bt_hf_set_speaker_gain_changed_cb(bt_hf_speaker_gain_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_set_speaker_gain_changed_cb()
- */
-int bt_hf_unset_speaker_gain_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_notify_voice_recognition_state(bool state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a call status event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_unset_call_status_updated_event_cb()
- */
-int bt_hf_set_call_status_updated_event_cb(bt_hf_call_status_updated_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a call status event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_set_call_status_updated_event_cb()
- */
-int bt_hf_unset_call_status_updated_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Closes an opened SCO(Synchronous Connection Oriented link), synchronously.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_hf_close_sco(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Sends the DTMF(Dual Tone Multi Frequency).
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @param[in] dtmf The DTMF to send
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_send_dtmf(char *dtmf);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the HF(Hands-Free) profile connected status for HF role.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[out] connected the connected status: (@c true = connected , @c false = not connected )
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_hf_is_connected(bool *connected);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Checks whether an opened SCO(Synchronous Connection Oriented link) exists or not.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- *
- * @param[out] opened The SCO status: (@c true = opened, @c false = not opened)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_is_sco_opened(bool *opened);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the codec ID.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks The @a codec_id must be released with free() by you.
- *
- * @param[out] codec_id The codec ID
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_get_codec_id(unsigned int *codec_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the call status information list.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks The @a call_list must be released with bt_hf_free_call_status_info_list() by you.
- * @remarks call_info_list has elements which consist of bt_hf_call_status_info_s
- *
- * @param[out] call_list The call status information list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_hf_call_status_info_s
- * @see bt_audio_connect()
- */
-int bt_hf_get_call_status_info_list(GSList **call_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Frees the call status information list.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] call_list The call status information list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hf_get_call_status_info_list()
- */
-int bt_hf_free_call_status_info_list(GSList *call_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_A2DP_MODULE
- * @brief Sets copy protection. streaming application that needs to have the copy protection for the streaming data, shall invoke this API.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] status - TRUE/FALSE
- * @return 0 on success, otherwise negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_OPERATION_FAILED on failure
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_a2dp_set_content_protection(bool status);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the specification name from the UUID
- * @since_tizen 2.4
- *
- * @remarks @a name must be released with free() by you.
- *
- * @param[in] uuid The UUID
- * @param[out] name The specification name which defined from www.bluetooth.org
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_get_uuid()
- */
-int bt_gatt_get_uuid_specification_name(const char *uuid, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Updates the permissions which a characteristic or descriptor's GATT handle has.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] permissions The permissions to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_set_permissions(bt_gatt_h gatt_handle, int permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Updates the properties which a characteristic's GATT handle has.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] properties The properties to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_property_e
- */
-int bt_gatt_characteristic_set_properties(bt_gatt_h characteristic, int properties);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Destroys the GATT handle
- * @since_tizen 2.4
- *
- * @param[in] gatt_handle The handle of service, characteristic or descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Registers a callback function that will be invoked when the A2DP Source connection state is changed.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_a2dp_source_audio_set_connection_state_changed_cb(bt_audio_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Unregisters a callback function that will be invoked when the A2DP Source connection state is changed.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- * @see bt_audio_set_connection_state_changed_cb()
- */
-int bt_a2dp_source_audio_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Activates the NAP(Network Access Point).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @see bt_nap_deactivate()
- */
-int bt_nap_activate(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Deactivates the NAP(Network Access Point).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_deactivate(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Disconnects the all PANUs(Personal Area Networking User) which are connected to you.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_disconnect_all(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Disconnects the specified PANU(Personal Area Networking User) which is connected to you.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_disconnect(const char *remote_address);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_nap_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-int bt_nap_set_connection_state_changed_cb(bt_nap_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_nap_connection_state_changed_cb()
- * @see bt_nap_set_connection_state_changed_cb()
- */
-int bt_nap_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Registers a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_panu_connection_state_changed_cb()
- * @see bt_panu_unset_connection_state_changed_cb()
- */
-int bt_panu_set_connection_state_changed_cb(bt_panu_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_panu_connection_state_changed_cb()
- * @see bt_panu_set_connection_state_changed_cb()
- */
-int bt_panu_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Connects the remote device with the PAN(Personal Area Networking) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] type The type of PAN service
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_panu_connection_state_changed_cb() will be invoked.
- * @see bt_panu_disconnect()
- * @see bt_panu_connection_state_changed_cb()
- */
-int bt_panu_connect(const char *remote_address, bt_panu_service_type_e type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Disconnects the remote device with the PAN(Personal Area Networking) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_panu_connect().
- * @post bt_panu_connection_state_changed_cb() will be invoked.
- * @see bt_panu_connect()
- * @see bt_panu_connection_state_changed_cb()
- */
-int bt_panu_disconnect(const char *remote_address);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief update LE connection.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @pre The remote device must be connected with bt_gatt_connect().
- */
-int bt_device_le_conn_update(const char *device_address,
- const bt_le_conn_update_s *parameters);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the is_alias_set property of a bonded device.
- * @since_tizen 3.0
- *
- * @param [in] remote_address The address of remote device
- * @param [out] is_alias_set The is_alias_set property of device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_bonded_device_is_alias_set(const char *remote_address, gboolean *is_alias_set);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Registers the method for HID Device role
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks This function must be called to register HID UUID
- * then only remote device could be able identify this one as HID device
- *
- * @param[in] callback The callback called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Already activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_deactivate()
- */
-int bt_hid_device_activate(bt_hid_device_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Unregisters the method for HID Device role
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks This function must be called to deregister HID UUID
- *
- * @param[in] socket_fd on which uuid need to be deregistered.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_deactivate(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Initiates HID device Connection with device role, asynchronously.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks This function must be called to Initiate Hid device role connection
- *
- * @param[in] remote_address device address of remote device.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_ALREADY_DONE Already connected
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_connect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Disconnects the connection with HID Host device, asynchronously.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sends the mouse event data.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] mouse_data mouse data that need to be passed to remote device
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_mouse_event(const char *remote_address,
- const bt_hid_mouse_data_s *mouse_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sends the keyboard event data.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] key_data key data the need to be passed to remote device
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_key_event(const char *remote_address,
- const bt_hid_key_data_s *key_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sets the callback when device gets some data from HID Host.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- *
- * @param[in] callback callback function to be set when data is received.
- * @param[in] user_data data from application which will be provided in callback.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_set_data_received_cb(bt_hid_device_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Unsets the callback when device gets some data from HID Host.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Responds to the reports from HID Host.
- * @since_tizen @if WEAREABLE @else 2.3.1 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] header_type Header type to be there in response
- * @param[in] param_type Parameter type to be there in response.
- * @param[in] data Data to be present in data payload of response.
- * @param[in] data_len The length of the response data
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_reply_to_report(const char *remote_address,
- bt_hid_header_type_e header_type, bt_hid_param_type_e param_type,
- const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sends the custom event data.
- * @since_tizen @if WEAREABLE @else 3.0 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] report_id reoport id need to be passed to remote device
- * @param[in] data The data need to be passed to remote device
- * @param[in] data_len The length of the data
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_custom_event(const char *remote_address,
- unsigned char report_id, const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets Restriction for BT mode(BT allowed or not).
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - BT Allow value.
- * BT_DPM_ERROR = -1, < bluetooth allowance error
- * BT_DPM_BT_ALLOWED, < bluetooth allowance allowed
- * BT_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
- * BT_DPM_BT_RESTRICTED, < bluetooth allowance restricted
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre none.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_allow_bluetooth_mode(bt_dpm_allow_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads Restriction for BT mode(BT allowed or not).
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @param[out] value - BT Allow value.
- * BT_DPM_ERROR = -1, < bluetooth allowance error
- * BT_DPM_BT_ALLOWED, < bluetooth allowance allowed
- * BT_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
- * BT_DPM_BT_RESTRICTED, < bluetooth allowance restricted
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre none.
- * @see bt_dpm_set_allow_bluetooth_mode()
- */
-int bt_dpm_get_allow_bluetooth_mode(bt_dpm_allow_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for device.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_activate_device_restriction(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for device.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_is_device_restriction_active(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for uuid.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_activate_uuid_restriction(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for uuid.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_is_uuid_restriction_active(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the device to blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_devices_to_blacklist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the device to whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_devices_to_whitelist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the uuids to blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_uuids_to_blacklist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the uuid to whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_uuids_to_whitelist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the device from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_devices_from_blacklist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the device from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_devices_from_whitelist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_uuids_from_blacklist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_uuids_from_whitelist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the devices from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] device_list - list of devices
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_devices_from_blacklist(bt_dpm_device_list_s **device_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the devices from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] device_list - list of devices
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_devices_from_whitelist(bt_dpm_device_list_s **device_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] uuid_list - list of uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_uuids_from_blacklist(bt_dpm_uuids_list_s **uuid_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] uuid_list - list of uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_uuids_from_whitelist(bt_dpm_uuids_list_s **uuid_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the devices from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_device_from_whitelist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the devices from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_device_from_blacklist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_uuid_from_whitelist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_uuid_from_blacklist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for outgoing call.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_allow_outgoing_call(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for outgoing call.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_allow_outgoing_call(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for pairing.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_pairing_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for pairing.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_pairing_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for profiles.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in]profile - Profile.
- * BT_DPM_POLICY_A2DP_PROFILE_STATE,
- * BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- * BT_DPM_POLICY_BPP_PROFILE_STATE,
- * BT_DPM_POLICY_DUN_PROFILE_STATE,
- * BT_DPM_POLICY_FTP_PROFILE_STATE,
- * BT_DPM_POLICY_HFP_PROFILE_STATE,
- * BT_DPM_POLICY_HSP_PROFILE_STATE,
- * BT_DPM_POLICY_PBAP_PROFILE_STATE,
- * BT_DPM_POLICY_SAP_PROFILE_STATE,
- * BT_DPM_POLICY_SPP_PROFILE_STATE,
- * BT_DPM_PROFILE_NONE
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_profile_state(bt_dpm_profile_e profile, bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for profiles.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in]profile - Profile.
- * BT_DPM_POLICY_A2DP_PROFILE_STATE,
- * BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- * BT_DPM_POLICY_BPP_PROFILE_STATE,
- * BT_DPM_POLICY_DUN_PROFILE_STATE,
- * BT_DPM_POLICY_FTP_PROFILE_STATE,
- * BT_DPM_POLICY_HFP_PROFILE_STATE,
- * BT_DPM_POLICY_HSP_PROFILE_STATE,
- * BT_DPM_POLICY_PBAP_PROFILE_STATE,
- * BT_DPM_POLICY_SAP_PROFILE_STATE,
- * BT_DPM_POLICY_SPP_PROFILE_STATE,
- * BT_DPM_PROFILE_NONE
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_profile_state(bt_dpm_profile_e profile, bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for desktop connectivity.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_desktop_connectivity_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for desktop connectivity.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_desktop_connectivity_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_discoverable_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_discoverable_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for limited discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-
-int bt_dpm_set_limited_discoverable_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for limited discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_limited_discoverable_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for Data transfer.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_data_transfer_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for Data transfer.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_data_transfer_state(bt_dpm_status_e *value);
-
-/**
- * @internal
- * @brief Initialize Bluetooth IPSP service and set the callback
- */
-int bt_ipsp_initialize(bt_ipsp_init_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief De-Initialize Bluetooth IPSP service and unset the callback
- */
-int bt_ipsp_deinitialize(void);
-
-/**
- * @internal
- * @brief Connect to a IPSP service over LE to remote device.
- */
-int bt_ipsp_connect(const char *address);
-
-/**
- * @internal
- * @brief Disconnect to a IPSP service over LE to remote device.
- */
-int bt_ipsp_disconnect(const char *address);
-
-/**
- * @internal
- * @brief Set IPSP connection state event change callback.
- */
-int bt_ipsp_set_connection_state_changed_cb(bt_ipsp_connection_state_changed_cb callback,
- void *user_data);
-
-/**
- * @internal
- * @brief Unset IPSP connection state event change callback.
- */
-int bt_ipsp_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets the pbap connected status.
- * @since_tizen 3.0
- * @param[in] remote_address The address of the remote device
- * @param[out] connected_status the connected status
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_pbap_client_is_connected(const char *address, bool *connected_status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sends the custom event data.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] report_id reoport id need to be passed to remote device
- * @param[in] data The data need to be passed to remote device
- * @param[in] data_len The length of the data
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_custom_event(const char *remote_address,
- unsigned char report_id, const char *data, unsigned int data_len);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Reporter Role.
- */
-int bt_proximity_reporter_create(bt_proximity_reporter_h *reporter);
-
-/**
- * @internal
- * @brief Destroys the Proximity Profile Monitor Role.
- */
-int bt_proximity_reporter_destroy(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Reporter Role.
- */
-int bt_proximity_monitor_create(const char *remote_address, bt_proximity_monitor_h *monitor);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Monitor Role.
- */
-int bt_proximity_monitor_destroy(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Proximity Monitor initiates the connection to remote reporter device.
- */
-int bt_proximity_monitor_connect(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Proximity Monitor disconnects with the remote reporter device.
- */
-int bt_proximity_monitor_disconnect(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Sets proximity monitor connection state changed event change callback.
- */
-int bt_proximity_monitor_set_connection_state_changed_cb(bt_proximity_monitor_h monitor,
- bt_proximity_monitor_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity monitor connection state changed event change callback.
- */
-int bt_proximity_monitor_unset_connection_state_changed_cb(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Sets proximity reporter connection state changed event change callback.
- */
-int bt_proximity_reporter_set_connection_state_changed_cb(bt_proximity_reporter_h reporter,
- bt_proximity_reporter_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity reporter connection state changed event change callback.
- */
-int bt_proximity_reporter_unset_connection_state_changed_cb(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Sets proximity reporter properties change callback.
- */
-int bt_proximity_reporter_set_property_changed_cb(bt_proximity_reporter_h reporter,
- bt_proximity_reporter_property_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity reporter properties change callback.
- */
-int bt_proximity_reporter_unset_property_changed_cb(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Set the Proximity Profile monitor linkloss alert value.
- */
-int bt_proximity_monitor_set_linkloss_alert(bt_proximity_monitor_h monitor, int value);
-
-/**
- * @internal
- * @brief Set the Proximity Profile monitor immediate alert value.
- */
-int bt_proximity_monitor_set_immediate_alert(bt_proximity_monitor_h monitor, int value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor linkloss alert value.
- */
-int bt_proximity_monitor_get_linkloss_alert(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor immediate alert value.
- */
-int bt_proximity_monitor_get_immediate_alert(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor Signal level value.
- */
-int bt_proximity_monitor_get_signal_level(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile reporter linkloss alert value.
- */
-int bt_proximity_reporter_get_linkloss_alert(const char *remote_address, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile reporter immediate alert value.
- */
-int bt_proximity_reporter_get_immediate_alert(const char *remote_address, int *value);
-
-/**
- * @internal
- * @brief API to set scan filter for iBeacons reports
- */
-int bt_adapter_le_scan_filter_set_ibeacon(bt_scan_filter_h scan_filter);
-
-/**
- * @internal
- * @brief API to read iBeacon report from LE scan result information
- */
-int bt_adapter_le_get_scan_result_ibeacon_report(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_ibeacon_scan_result_info_s **ibeacon_info);
-
-/**
- * @internal
- * @brief API to clear the iBeacon report
- */
-int bt_adapter_le_free_ibeacon_report(bt_adapter_ibeacon_scan_result_info_s *ibeacon_info);
-
-/**
- * @internal
- * @brief API to Set the Proximity uuids scan report
- */
-int bt_adapter_le_scan_filter_set_proximity_uuid(bt_scan_filter_h scan_filter);
-
-/**
- * @internal
- * @brief API to Unset the Proximity uuids scan report
- */
-int bt_adapter_le_scan_filter_unset_proximity_uuid(bt_scan_filter_h scan_filter);
-
-/**
- * @}
- */
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__ */
diff --git a/include/mobile/bluetooth_type.h b/include/mobile/bluetooth_type.h
deleted file mode 100644
index aff0170..0000000
--- a/include/mobile/bluetooth_type.h
+++ /dev/null
@@ -1,2250 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_H__
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <stdbool.h>
-#include <tizen_error.h>
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type.h
- * @brief API to control the Bluetooth adapter, devices and communications.
- * @ingroup CAPI_NETWORK_BLUETOOTH_TYPE_MODULE
- */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of PBAP fields.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_FIELD_ALL = (0xFFFFFFFFU), /**< All field */
- BT_PBAP_FIELD_VERSION = (1U << 0), /**< vCard Version */
- BT_PBAP_FIELD_FN = (1U << 1), /**< Formatted Name */
- BT_PBAP_FIELD_N = (1U << 2), /**< Structured Presentation of Name */
- BT_PBAP_FIELD_PHOTO = (1U << 3), /**< Associated Image or Photo */
- BT_PBAP_FIELD_BDAY = (1U << 4), /**< Birthday */
- BT_PBAP_FIELD_ADR = (1U << 5), /**< Delivery Address */
- BT_PBAP_FIELD_LABEL = (1U << 6), /**< Delivery */
- BT_PBAP_FIELD_TEL = (1U << 7), /**< Telephone Number */
- BT_PBAP_FIELD_EMAIL = (1U << 8), /**< Electronic Mail Address */
- BT_PBAP_FIELD_MAILER = (1U << 9), /**< Electronic Mail */
- BT_PBAP_FIELD_TZ = (1U << 10), /**< Time Zone */
- BT_PBAP_FIELD_GEO = (1U << 11), /**< Geographic Position */
- BT_PBAP_FIELD_TITLE = (1U << 12), /**< Job */
- BT_PBAP_FIELD_ROLE = (1U << 13), /**< Role within the Organization */
- BT_PBAP_FIELD_LOGO = (1U << 14), /**< Organization Logo */
- BT_PBAP_FIELD_AGENT = (1U << 15), /**< vCard of Person Representing */
- BT_PBAP_FIELD_ORG = (1U << 16), /**< Name of Organization */
- BT_PBAP_FIELD_NOTE = (1U << 17), /**< Comments */
- BT_PBAP_FIELD_REV = (1U << 18), /**< Revision */
- BT_PBAP_FIELD_SOUND = (1U << 19), /**< Pronunciation of Name */
- BT_PBAP_FIELD_URL = (1U << 20), /**< Uniform Resource Locator */
- BT_PBAP_FIELD_UID = (1U << 21), /**< Unique ID */
- BT_PBAP_FIELD_KEY = (1U << 22), /**< Public Encryption Key */
- BT_PBAP_FIELD_NICKNAME = (1U << 23), /**< Nickname */
- BT_PBAP_FIELD_CATEGORIES = (1U << 24), /**< Categories */
- BT_PBAP_FIELD_PROID = (1U << 25), /**< Product ID */
- BT_PBAP_FIELD_CLASS = (1U << 26), /**< Class information */
- BT_PBAP_FIELD_SORT_STRING = (1U << 27), /**< String used for sorting operations */
- BT_PBAP_FIELD_X_IRMC_CALL_DATETIME = (1U << 28), /**< Time stamp */
-} bt_pbap_field_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Enumerations of Bluetooth error codes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ERROR_NONE = TIZEN_ERROR_NONE, /**< Successful*/
- BT_ERROR_CANCELLED = TIZEN_ERROR_CANCELED, /**< Operation cancelled */
- BT_ERROR_INVALID_PARAMETER = TIZEN_ERROR_INVALID_PARAMETER, /**< Invalid parameter */
- BT_ERROR_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */
- BT_ERROR_RESOURCE_BUSY = TIZEN_ERROR_RESOURCE_BUSY, /**< Device or resource busy */
- BT_ERROR_TIMED_OUT = TIZEN_ERROR_TIMED_OUT, /**< Timeout error */
- BT_ERROR_NOW_IN_PROGRESS = TIZEN_ERROR_NOW_IN_PROGRESS, /**< Operation now in progress */
- BT_ERROR_NOT_SUPPORTED = TIZEN_ERROR_NOT_SUPPORTED, /**< BT is Not Supported */
- BT_ERROR_PERMISSION_DENIED = TIZEN_ERROR_PERMISSION_DENIED, /**< Permission denied */
- BT_ERROR_QUOTA_EXCEEDED = TIZEN_ERROR_QUOTA_EXCEEDED, /**< Quota exceeded */
- BT_ERROR_NO_DATA = TIZEN_ERROR_NO_DATA, /**< No data available */
- BT_ERROR_DEVICE_POLICY_RESTRICTION = TIZEN_ERROR_DEVICE_POLICY_RESTRICTION, /**< Device policy restriction (Since 3.0) */
- BT_ERROR_NOT_INITIALIZED = TIZEN_ERROR_BLUETOOTH|0x0101, /**< Local adapter not initialized */
- BT_ERROR_NOT_ENABLED = TIZEN_ERROR_BLUETOOTH|0x0102, /**< Local adapter not enabled */
- BT_ERROR_ALREADY_DONE = TIZEN_ERROR_BLUETOOTH|0x0103, /**< Operation already done */
- BT_ERROR_OPERATION_FAILED = TIZEN_ERROR_BLUETOOTH|0x0104, /**< Operation failed */
- BT_ERROR_NOT_IN_PROGRESS = TIZEN_ERROR_BLUETOOTH|0x0105, /**< Operation not in progress */
- BT_ERROR_REMOTE_DEVICE_NOT_BONDED = TIZEN_ERROR_BLUETOOTH|0x0106, /**< Remote device not bonded */
- BT_ERROR_AUTH_REJECTED = TIZEN_ERROR_BLUETOOTH|0x0107, /**< Authentication rejected */
- BT_ERROR_AUTH_FAILED = TIZEN_ERROR_BLUETOOTH|0x0108, /**< Authentication failed */
- BT_ERROR_REMOTE_DEVICE_NOT_FOUND = TIZEN_ERROR_BLUETOOTH|0x0109, /**< Remote device not found */
- BT_ERROR_SERVICE_SEARCH_FAILED = TIZEN_ERROR_BLUETOOTH|0x010A, /**< Service search failed */
- BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED = TIZEN_ERROR_BLUETOOTH|0x010B, /**< Remote device is not connected */
- BT_ERROR_AGAIN = TIZEN_ERROR_BLUETOOTH|0x010C, /**< Resource temporarily unavailable */
- BT_ERROR_SERVICE_NOT_FOUND = TIZEN_ERROR_BLUETOOTH|0x010D, /**< Service Not Found */
-} bt_error_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the Bluetooth adapter state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_DISABLED = 0x00, /**< Bluetooth adapter is disabled */
- BT_ADAPTER_ENABLED, /**< Bluetooth adapter is enabled */
-} bt_adapter_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the Bluetooth visibility mode.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE = 0x00, /**< Other devices cannot find your device via discovery */
- BT_ADAPTER_VISIBILITY_MODE_GENERAL_DISCOVERABLE, /**< Discoverable mode */
- BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE, /**< Discoverable mode with time limit. After specific period,
- it is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.*/
-} bt_adapter_visibility_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the discovery state of Bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_DEVICE_DISCOVERY_STARTED, /**< Device discovery is started */
- BT_ADAPTER_DEVICE_DISCOVERY_FINISHED, /**< Device discovery is finished */
- BT_ADAPTER_DEVICE_DISCOVERY_FOUND, /**< The remote Bluetooth device is found */
-} bt_adapter_device_discovery_state_e;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the discovery state of Bluetooth LE device.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- */
-typedef enum {
- BT_ADAPTER_LE_DEVICE_DISCOVERY_STARTED, /**< LE device discovery is started */
- BT_ADAPTER_LE_DEVICE_DISCOVERY_FINISHED, /**< LE device discovery is finished */
- BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, /**< The remote Bluetooth LE device is found */
-} bt_adapter_le_device_discovery_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_STOPPED = 0x00, /**< Bluetooth advertising is stopped */
- BT_ADAPTER_LE_ADVERTISING_STARTED, /**< Bluetooth advertising is started */
-} bt_adapter_le_advertising_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising mode.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_MODE_BALANCED, /**< Balanced advertising mode */
- BT_ADAPTER_LE_ADVERTISING_MODE_LOW_LATENCY, /**< Low latency advertising mode */
- BT_ADAPTER_LE_ADVERTISING_MODE_LOW_ENERGY /**< Low energy advertising mode */
-} bt_adapter_le_advertising_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising filter policy.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_FILTER_DEFAULT = 0x00, /**< White list is not in use */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_SCAN_WL = 0x01, /**< Allow the scan
- request that in the White list */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_CONN_WL = 0x02, /**< Allow the connection
- request that in the White list */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_SCAN_CONN_WL = 0x03, /**< Allow the
- scan and connection request that in the White list */
-} bt_adapter_le_advertising_filter_policy_e;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising type.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE = 0x00, /**< Connectable undirected advertising (ADV_IND) */
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE_DIRECT_HIGH = 0x01, /**< Connectable high duty cycle directed advertising (ADV_DIRECT_IND) */
- BT_ADAPTER_LE_ADVERTISING_SCANNABLE = 0x02, /**< Scannable undirected advertising (ADV_SCAN_IND) */
- BT_ADAPTER_LE_ADVERTISING_NON_CONNECTABLE = 0x03, /**< Non connectable undirected advertising (ADV_NONCOND_IND) */
- BT_ADAPTER_LE_ADVERTISING_CONNECTABLE_DIRECT_LOW = 0x04, /**< Connectable low duty cycle directed advertising (ADV_DIRECT_IND) */
-} bt_adapter_le_advertising_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth LE packet type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_PACKET_ADVERTISING, /**< Advertising packet */
- BT_ADAPTER_LE_PACKET_SCAN_RESPONSE, /**< Scan response packet */
-} bt_adapter_le_packet_type_e;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth LE data type
- * that can be included in LE packets.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_PACKET_DATA_COMP_LIST_16_BIT_SERVICE_CLASS_UUIDS = 0x03, /**< Complete list of 16 bit UUIDs */
- BT_ADAPTER_LE_PACKET_DATA_MANUFACTURER_SPECIFIC_DATA = 0xff, /**< Manufacturer data */
-} bt_adapter_le_packet_data_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth le scan mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_ADAPTER_LE_SCAN_MODE_BALANCED, /**< Balanced mode of power consumption and connection latency */
- BT_ADAPTER_LE_SCAN_MODE_LOW_LATENCY, /**< Low connection latency but high power consumption */
- BT_ADAPTER_LE_SCAN_MODE_LOW_ENERGY /**< Low power consumption but high connection latency */
-} bt_adapter_le_scan_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device disconnect reason.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_DISCONNECT_REASON_UNKNOWN, /**< Disconnected by unknown reason */
- BT_DEVICE_DISCONNECT_REASON_TIMEOUT, /**< Disconnected by timeout */
- BT_DEVICE_DISCONNECT_REASON_LOCAL_HOST, /**< Disconnected by local host */
- BT_DEVICE_DISCONNECT_REASON_REMOTE, /**< Disconnected by remote */
-} bt_device_disconnect_reason_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of connection link type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_CONNECTION_LINK_BREDR, /**< BR/EDR link */
- BT_DEVICE_CONNECTION_LINK_LE, /**< LE link */
- BT_DEVICE_CONNECTION_LINK_DEFAULT = 0xFF, /**< The connection type default */
-} bt_device_connection_link_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device authorization state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_AUTHORIZED, /**< The remote Bluetooth device is authorized */
- BT_DEVICE_UNAUTHORIZED, /**< The remote Bluetooth device is unauthorized */
-} bt_device_authorization_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of Bluetooth profile.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_PROFILE_RFCOMM = 0x01, /**< RFCOMM Profile */
- BT_PROFILE_A2DP = 0x02, /**< Advanced Audio Distribution Profile Source role */
- BT_PROFILE_HSP = 0x04, /**< Headset Profile */
- BT_PROFILE_HID = 0x08, /**< Human Interface Device Profile */
- BT_PROFILE_NAP = 0x10, /**< Network Access Point Profile */
- BT_PROFILE_AG = 0x20, /**< Audio Gateway Profile */
- BT_PROFILE_GATT = 0x40, /**< Generic Attribute Profile */
- BT_PROFILE_NAP_SERVER = 0x80, /**< NAP server Profile */
- BT_PROFILE_A2DP_SINK = 0x100, /**< Advanced Audio Distribution Profile Sink role */
-} bt_profile_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device address type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_PUBLIC_ADDRESS = 0x00, /**< Public address */
- BT_DEVICE_RANDOM_ADDRESS, /**< Random address */
-} bt_device_address_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of service class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SC_NONE = 0, /**< No service class */
- BT_SC_RES_SERVICE_MASK = 0x00000001, /**< RES service class */
- BT_SC_SPP_SERVICE_MASK = 0x00000002, /**< SPP service class */
- BT_SC_DUN_SERVICE_MASK = 0x00000004, /**< DUN service class */
- BT_SC_FAX_SERVICE_MASK = 0x00000008, /**< FAX service class */
- BT_SC_LAP_SERVICE_MASK = 0x00000010, /**< LAP service class */
- BT_SC_HSP_SERVICE_MASK = 0x00000020, /**< HSP service class */
- BT_SC_HFP_SERVICE_MASK = 0x00000040, /**< HFP service class */
- BT_SC_OPP_SERVICE_MASK = 0x00000080, /**< OPP service class */
- BT_SC_FTP_SERVICE_MASK = 0x00000100, /**< FTP service class */
- BT_SC_CTP_SERVICE_MASK = 0x00000200, /**< CTP service class */
- BT_SC_ICP_SERVICE_MASK = 0x00000400, /**< ICP service class */
- BT_SC_SYNC_SERVICE_MASK = 0x00000800, /**< SYNC service class */
- BT_SC_BPP_SERVICE_MASK = 0x00001000, /**< BPP service class */
- BT_SC_BIP_SERVICE_MASK = 0x00002000, /**< BIP service class */
- BT_SC_PANU_SERVICE_MASK = 0x00004000, /**< PANU service class */
- BT_SC_NAP_SERVICE_MASK = 0x00008000, /**< NAP service class */
- BT_SC_GN_SERVICE_MASK = 0x00010000, /**< GN service class */
- BT_SC_SAP_SERVICE_MASK = 0x00020000, /**< SAP service class */
- BT_SC_A2DP_SERVICE_MASK = 0x00040000, /**< A2DP service class */
- BT_SC_AVRCP_SERVICE_MASK = 0x00080000, /**< AVRCP service class */
- BT_SC_PBAP_SERVICE_MASK = 0x00100000, /**< PBAP service class */
- BT_SC_HID_SERVICE_MASK = 0x00200000, /**< HID service class */
- BT_SC_A2DP_SOURCE_SERVICE_MASK = 0x00400000, /**< A2DP SOURCE service class */
- BT_SC_ALL_SERVICE_MASK = 0x00FFFFFF, /**< ALL service class */
- BT_SC_MAX /**< MAX service class */
-} bt_service_class_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of major service class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MAJOR_SERVICE_CLASS_LIMITED_DISCOVERABLE_MODE = 0x002000, /**< Limited discoverable mode */
- BT_MAJOR_SERVICE_CLASS_POSITIONING = 0x010000, /**< Positioning class */
- BT_MAJOR_SERVICE_CLASS_NETWORKING = 0x020000, /**< Networking class */
- BT_MAJOR_SERVICE_CLASS_RENDERING = 0x040000, /**< Rendering class */
- BT_MAJOR_SERVICE_CLASS_CAPTURING = 0x080000, /**< Capturing class */
- BT_MAJOR_SERVICE_CLASS_OBJECT_TRANSFER = 0x100000, /**< Object transferring class */
- BT_MAJOR_SERVICE_CLASS_AUDIO = 0x200000, /**< Audio class*/
- BT_MAJOR_SERVICE_CLASS_TELEPHONY = 0x400000, /**< Telephony class */
- BT_MAJOR_SERVICE_CLASS_INFORMATION = 0x800000, /**< Information class */
-} bt_major_service_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of major device class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MAJOR_DEVICE_CLASS_MISC = 0x00, /**< Miscellaneous major device class*/
- BT_MAJOR_DEVICE_CLASS_COMPUTER = 0x01, /**< Computer major device class */
- BT_MAJOR_DEVICE_CLASS_PHONE = 0x02, /**< Phone major device class */
- BT_MAJOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT = 0x03, /**< LAN/Network access point major device class */
- BT_MAJOR_DEVICE_CLASS_AUDIO_VIDEO = 0x04, /**< Audio/Video major device class */
- BT_MAJOR_DEVICE_CLASS_PERIPHERAL = 0x05, /**< Peripheral major device class */
- BT_MAJOR_DEVICE_CLASS_IMAGING = 0x06, /**< Imaging major device class */
- BT_MAJOR_DEVICE_CLASS_WEARABLE = 0x07, /**< Wearable device class */
- BT_MAJOR_DEVICE_CLASS_TOY = 0x08, /**< Toy device class */
- BT_MAJOR_DEVICE_CLASS_HEALTH = 0x09, /**< Health device class */
- BT_MAJOR_DEVICE_CLASS_UNCATEGORIZED = 0x1F, /**< Uncategorized major device class */
-} bt_major_device_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of minor device class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MINOR_DEVICE_CLASS_COMPUTER_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_DESKTOP_WORKSTATION = 0x04, /**< Desktop workstation minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_SERVER_CLASS = 0x08, /**< Server minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_LAPTOP = 0x0C, /**< Laptop minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_HANDHELD_PC_OR_PDA = 0x10, /**< Handheld PC/PDA minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_PALM_SIZED_PC_OR_PDA = 0x14, /**< Palm sized PC/PDA minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_WEARABLE_COMPUTER = 0x18, /**< Wearable(watch sized) minor device class of computer */
-
- BT_MINOR_DEVICE_CLASS_PHONE_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_CELLULAR = 0x04, /**< Cellular minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_CORDLESS = 0x08, /**< Cordless minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_SMART_PHONE = 0x0C, /**< Smart phone minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_WIRED_MODEM_OR_VOICE_GATEWAY = 0x10, /**< Wired modem or voice gateway minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_COMMON_ISDN_ACCESS = 0x14, /**< Common ISDN minor device class of phone */
-
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_FULLY_AVAILABLE = 0x04, /**< Fully available minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_1_TO_17_PERCENT_UTILIZED = 0x20, /**< 1-17% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_17_TO_33_PERCENT_UTILIZED = 0x40, /**< 17-33% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_33_TO_50_PERCENT_UTILIZED = 0x60, /**< 33-50% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_50_to_67_PERCENT_UTILIZED = 0x80, /**< 50-67% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_67_TO_83_PERCENT_UTILIZED = 0xA0, /**< 67-83% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_83_TO_99_PERCENT_UTILIZED = 0xC0, /**< 83-99% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_NO_SERVICE_AVAILABLE = 0xE0, /**< No service available minor device class of LAN/Network access point */
-
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_WEARABLE_HEADSET = 0x04, /**< Wearable headset minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HANDS_FREE = 0x08, /**< Hands-free minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_MICROPHONE = 0x10, /**< Microphone minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_LOUDSPEAKER = 0x14, /**< Loudspeaker minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HEADPHONES = 0x18, /**< Headphones minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_PORTABLE_AUDIO = 0x1C, /**< Portable audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_CAR_AUDIO = 0x20, /**< Car audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_SET_TOP_BOX = 0x24, /**< Set-top box minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HIFI_AUDIO_DEVICE = 0x28, /**< Hifi audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VCR = 0x2C, /**< VCR minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_CAMERA = 0x30, /**< Video camera minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_CAMCORDER = 0x34, /**< Camcorder minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_MONITOR = 0x38, /**< Video monitor minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_DISPLAY_LOUDSPEAKER = 0x3C, /**< Video display and loudspeaker minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_CONFERENCING = 0x40, /**< Video conferencing minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_GAMING_TOY = 0x48, /**< Gaming/toy minor device class of audio/video */
-
- BT_MINOR_DEVICE_CLASS_PERIPHERA_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_KEY_BOARD = 0x40, /**< Key board minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_POINTING_DEVICE = 0x80, /**< Pointing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_COMBO_KEYBOARD_POINTING_DEVICE = 0xC0, /**< Combo keyboard or pointing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_JOYSTICK = 0x04, /**< Joystick minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_GAME_PAD = 0x08, /**< Game pad minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_REMOTE_CONTROL = 0x0C, /**< Remote control minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_SENSING_DEVICE = 0x10, /**< Sensing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_DIGITIZER_TABLET = 0x14, /**< Digitizer minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_CARD_READER = 0x18, /**< Card reader minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_DIGITAL_PEN = 0x1C, /**< Digital pen minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_HANDHELD_SCANNER = 0x20, /**< Handheld scanner minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_HANDHELD_GESTURAL_INPUT_DEVICE = 0x24, /**< Handheld gestural input device minor device class of peripheral */
-
- BT_MINOR_DEVICE_CLASS_IMAGING_DISPLAY = 0x10, /**< Display minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_CAMERA = 0x20, /**< Camera minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_SCANNER = 0x40, /**< Scanner minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_PRINTER = 0x80, /**< Printer minor device class of imaging */
-
- BT_MINOR_DEVICE_CLASS_WEARABLE_WRIST_WATCH = 0x04, /**< Wrist watch minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_PAGER = 0x08, /**< Pager minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_JACKET = 0x0C, /**< Jacket minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_HELMET = 0x10, /**< Helmet minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_GLASSES = 0x14, /**< Glasses minor device class of wearable */
-
- BT_MINOR_DEVICE_CLASS_TOY_ROBOT = 0x04, /**< Robot minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_VEHICLE = 0x08, /**< Vehicle minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_DOLL_ACTION = 0x0C, /**< Doll/Action minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_CONTROLLER = 0x10, /**< Controller minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_GAME = 0x14, /**< Game minor device class of toy */
-
- BT_MINOR_DEVICE_CLASS_HEALTH_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_BLOOD_PRESSURE_MONITOR = 0x04, /**< Blood pressure monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_THERMOMETER = 0x08, /**< Thermometer minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_WEIGHING_SCALE = 0x0C, /**< Weighing scale minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_GLUCOSE_METER = 0x10, /**< Glucose minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_PULSE_OXIMETER = 0x14, /**< Pulse oximeter minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_HEART_PULSE_RATE_MONITOR = 0x18, /**< Heart/Pulse rate monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_DATA_DISPLAY = 0x1C, /**< Health data display minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_STEP_COUNTER = 0x20, /**< Step counter minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_BODY_COMPOSITION_ANALYZER = 0x24, /**< Body composition analyzer minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_PEAK_FLOW_MONITOR = 0x28, /**< Peak flow monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_MEDICATION_MONITOR = 0x2C, /**< Medication monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_KNEE_PROSTHESIS = 0x30, /**< Knee prosthesis minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_ANKLE_PROSTHESIS = 0x34, /**< Ankle prosthesis minor device class of health */
-} bt_minor_device_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of gap appearance type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_APPEARANCE_TYPE_UNKNOWN = 0x00, /**< Unknown appearance type */
- BT_APPEARANCE_TYPE_GENERIC_PHONE = 0x40, /**< Generic Phone type - Generic category */
- BT_APPEARANCE_TYPE_GENERIC_COMPUTER = 0x80, /**< Generic Computer type - Generic category */
- BT_APPEARANCE_TYPE_GENERIC_WATCH = 0xC0, /**< Generic Watch type - Generic category */
-} bt_appearance_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth device's LE connection mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_DEVICE_LE_CONNECTION_MODE_BALANCED, /**< Balanced mode of power consumption and connection latency */
- BT_DEVICE_LE_CONNECTION_MODE_LOW_LATENCY, /**< Low connection latency but high power consumption */
- BT_DEVICE_LE_CONNECTION_MODE_LOW_ENERGY, /**< Low power consumption but high connection latency */
-} bt_device_le_connection_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Enumerations of connected Bluetooth device event role.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SOCKET_UNKNOWN = 0x00, /**< Unknown role*/
- BT_SOCKET_SERVER , /**< Server role*/
- BT_SOCKET_CLIENT, /**< Client role*/
-} bt_socket_role_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Enumerations of Bluetooth socket connection state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SOCKET_CONNECTED, /**< RFCOMM is connected */
- BT_SOCKET_DISCONNECTED, /**< RFCOMM is disconnected */
-} bt_socket_connection_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Enumerations for the types of profiles related with audio
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AUDIO_PROFILE_TYPE_ALL = 0, /**< All supported profiles related with audio */
- BT_AUDIO_PROFILE_TYPE_HSP_HFP, /**< HSP(Headset Profile) and HFP(Hands-Free Profile) */
- BT_AUDIO_PROFILE_TYPE_A2DP, /**< A2DP(Advanced Audio Distribution Profile) */
- BT_AUDIO_PROFILE_TYPE_AG, /**< AG(Audio Gateway) */
- BT_AUDIO_PROFILE_TYPE_A2DP_SINK, /**< A2DP(Advanced Audio Distribution Profile) Sink role */
-} bt_audio_profile_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call handling event
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_HANDLING_EVENT_ANSWER = 0x00, /**< Request to answer an incoming call */
- BT_AG_CALL_HANDLING_EVENT_RELEASE, /**< Request to release a call */
- BT_AG_CALL_HANDLING_EVENT_REJECT, /**< Request to reject an incoming call */
-} bt_ag_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the multi call handling event
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_MULTI_CALL_HANDLING_EVENT_RELEASE_HELD_CALLS = 0x00, /**< Request to release held calls */
- BT_AG_MULTI_CALL_HANDLING_EVENT_RELEASE_ACTIVE_CALLS, /**< Request to release active calls */
- BT_AG_MULTI_CALL_HANDLING_EVENT_ACTIVATE_HELD_CALL, /**< Request to put active calls into hold state and activate another (held or waiting) call */
- BT_AG_MULTI_CALL_HANDLING_EVENT_MERGE_CALLS, /**< Request to add a held call to the conversation */
- BT_AG_MULTI_CALL_HANDLING_EVENT_EXPLICIT_CALL_TRANSFER, /**< Request to let a user who has two calls to connect these two calls together and release its connections to both other parties */
-} bt_ag_multi_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the equalizer state
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_EQUALIZER_STATE_OFF = 0x01, /**< Equalizer Off */
- BT_AVRCP_EQUALIZER_STATE_ON, /**< Equalizer On */
-} bt_avrcp_equalizer_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the repeat mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_REPEAT_MODE_OFF = 0x01, /**< Repeat Off */
- BT_AVRCP_REPEAT_MODE_SINGLE_TRACK, /**< Single track repeat */
- BT_AVRCP_REPEAT_MODE_ALL_TRACK, /**< All track repeat */
- BT_AVRCP_REPEAT_MODE_GROUP, /**< Group repeat */
-} bt_avrcp_repeat_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the shuffle mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_SHUFFLE_MODE_OFF = 0x01, /**< Shuffle Off */
- BT_AVRCP_SHUFFLE_MODE_ALL_TRACK, /**< All tracks shuffle */
- BT_AVRCP_SHUFFLE_MODE_GROUP, /**< Group shuffle */
-} bt_avrcp_shuffle_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the scan mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_SCAN_MODE_OFF = 0x01, /**< Scan Off */
- BT_AVRCP_SCAN_MODE_ALL_TRACK, /**< All tracks scan */
- BT_AVRCP_SCAN_MODE_GROUP, /**< Group scan */
-} bt_avrcp_scan_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the player state
- * @since_tizen 3.0
- */
-typedef enum {
- BT_AVRCP_PLAYER_STATE_STOPPED = 0x00, /**< Stopped */
- BT_AVRCP_PLAYER_STATE_PLAYING, /**< Playing */
- BT_AVRCP_PLAYER_STATE_PAUSED, /**< Paused */
- BT_AVRCP_PLAYER_STATE_FORWARD_SEEK, /**< Seek Forward */
- BT_AVRCP_PLAYER_STATE_REWIND_SEEK, /**< Seek Rewind */
-} bt_avrcp_player_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumeration for the player control commands
- * @since_tizen 3.0
- */
-typedef enum {
- BT_AVRCP_CONTROL_PLAY = 0x01, /**< Play */
- BT_AVRCP_CONTROL_PAUSE, /**< Pause */
- BT_AVRCP_CONTROL_STOP, /**< Stop */
- BT_AVRCP_CONTROL_NEXT, /**< Next Track*/
- BT_AVRCP_CONTROL_PREVIOUS, /**< Previous track */
- BT_AVRCP_CONTROL_FAST_FORWARD, /**< Fast Forward */
- BT_AVRCP_CONTROL_REWIND /**< Rewind */
-} bt_avrcp_player_command_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Structure of Track metadata information.
- * @since_tizen 3.0
- *
- * @see #bt_class_s
- */
-typedef struct {
- const char *title; /**< Title */
- const char *artist; /**< Artist */
- const char *album; /**< Album name */
- const char *genre; /**< Album Genre */
- unsigned int total_tracks; /**< The total number of tracks */
- unsigned int number; /**< Track number */
- unsigned int duration; /**< Duration */
-} bt_avrcp_metadata_attributes_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen 3.0
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_deinitialize()
- */
-typedef void (*bt_avrcp_control_connection_state_changed_cb) (bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song position mode is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] position Playback position in milliseconds. When position is 0 it means the track is starting and when it's greater than or equal to track's duration the track has ended.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_position_changed_cb()
- * @see bt_avrcp_unset_position_changed_cb()
- */
-typedef void (*bt_avrcp_position_changed_cb) (unsigned int position, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song metadata information is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] track The song metadata information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_track_info_changed_cb()
- * @see bt_avrcp_unset_track_info_changed_cb()
- */
-typedef void (*bt_avrcp_track_info_changed_cb) (bt_avrcp_metadata_attributes_info_s *track, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song Play status mode is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] play_state The song play status
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_play_status_changed_cb()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-typedef void (*bt_avrcp_play_status_changed_cb) (bt_avrcp_player_state_e play_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Enumerations for the data channel type
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_HDP_CHANNEL_TYPE_RELIABLE = 0x01, /**< Reliable Data Channel */
- BT_HDP_CHANNEL_TYPE_STREAMING, /**< Streaming Data Channel */
-} bt_hdp_channel_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the integer type for GATT handle's value.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_DATA_TYPE_SINT8, /**< 8 bit signed int type */
- BT_DATA_TYPE_SINT16, /**< 16 bit signed int type */
- BT_DATA_TYPE_SINT32, /**< 32 bit signed int type */
- BT_DATA_TYPE_UINT8, /**< 8 bit unsigned int type */
- BT_DATA_TYPE_UINT16, /**< 16 bit unsigned int type */
- BT_DATA_TYPE_UINT32 /**< 32 bit unsigned int type */
-} bt_data_type_int_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the float type for GATT handle's value.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_DATA_TYPE_FLOAT, /**< 32 bit float type */
- BT_DATA_TYPE_SFLOAT /**< 16 bit float type */
-} bt_data_type_float_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the write type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_WRITE_TYPE_WRITE_NO_RESPONSE, /**< Write without response type */
- BT_GATT_WRITE_TYPE_WRITE /**< Write type */
-} bt_gatt_write_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the GATT handle's type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_TYPE_SERVICE = 0x01, /**< GATT service type */
- BT_GATT_TYPE_CHARACTERISTIC = 0x02, /** GATT characteristic type */
- BT_GATT_TYPE_DESCRIPTOR = 0x03, /** GATT descriptor type */
-} bt_gatt_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the service type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_SERVICE_TYPE_PRIMARY = 0x01, /**< GATT primary service type */
- BT_GATT_SERVICE_TYPE_SECONDARY = 0x02, /**< GATT secondary service type */
-} bt_gatt_service_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the characteristic's property.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_PROPERTY_BROADCAST = 0x01, /**< Broadcast property */
- BT_GATT_PROPERTY_READ = 0x02, /**< Read property */
- BT_GATT_PROPERTY_WRITE_WITHOUT_RESPONSE = 0x04, /**< Write without response property */
- BT_GATT_PROPERTY_WRITE = 0x08, /**< Write property */
- BT_GATT_PROPERTY_NOTIFY = 0x10, /**< Notify property */
- BT_GATT_PROPERTY_INDICATE = 0x20, /**< Indicate property */
- BT_GATT_PROPERTY_AUTHENTICATED_SIGNED_WRITES = 0x40, /**< Authenticated signed writes property */
- BT_GATT_PROPERTY_EXTENDED_PROPERTIES = 0x80, /**< Extended properties */
-} bt_gatt_property_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of gatt server's service changing mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_CLIENT_SERVICE_ADDED, /**< Service added */
- BT_GATT_CLIENT_SERVICE_REMOVED, /**< Service removed */
-} bt_gatt_client_service_change_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Enumerations of the attribute's permission.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_PERMISSION_READ = 0x01, /**< Readable permission */
- BT_GATT_PERMISSION_WRITE = 0x02, /**< Writable permission */
- BT_GATT_PERMISSION_ENCRYPT_READ = 0x04, /**< Readable permission required encryption */
- BT_GATT_PERMISSION_ENCRYPT_WRITE = 0x08, /**< Writable permission required encryption */
- BT_GATT_PERMISSION_ENCRYPT_AUTHENTICATED_READ = 0x10, /**< Readable permission required encryption and authentication */
- BT_GATT_PERMISSION_ENCRYPT_AUTHENTICATED_WRITE = 0x20, /**< Writable permission required encryption and authentication */
-} bt_gatt_permission_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Enumerations of the remote device request types for attributes
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_REQUEST_TYPE_READ = 0x00, /* Read Requested */
- BT_GATT_REQUEST_TYPE_WRITE = 0x01, /* Write Requested */
-} bt_gatt_att_request_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Enumerations for the types of PAN(Personal Area Networking) service.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_PANU_SERVICE_TYPE_NAP = 0, /**< Network Access Point */
-} bt_panu_service_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle to control Bluetooth LE advertising.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef void *bt_advertiser_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of address book location for PBAP.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_SOURCE_DEVICE = 0x00, /**< Request for Addressbook from remote device */
- BT_PBAP_SOURCE_SIM , /**< Request for address book from SIM */
-} bt_pbap_address_book_source_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of folder type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_FOLDER_PHONE_BOOK = 0x00, /**< Request for address book */
- BT_PBAP_FOLDER_INCOMING , /**< Request for incoming calls */
- BT_PBAP_FOLDER_OUTGOING , /**< Request for outgoing calls */
- BT_PBAP_FOLDER_MISSED , /**< Request for missed calls */
- BT_PBAP_FOLDER_COMBINED , /**< Request for combined calls */
-} bt_pbap_folder_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of phone book search fields.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_SEARCH_NAME = 0x00, /**< Request for search by name (default) */
- BT_PBAP_SEARCH_NUMBER, /**< Request for search by phone number */
- BT_PBAP_SEARCH_SOUND, /**< Request for search by sound */
-} bt_pbap_search_field_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of vCard Formats.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_VCARD_FORMAT_VCARD21 = 0x00, /**< vCard format 2.1 (default) */
- BT_PBAP_VCARD_FORMAT_VCARD30, /**< vCard format 3.0 */
-} bt_pbap_vcard_format_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of sorting orders.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_ORDER_INDEXED = 0x00, /**< Filter order indexed (default) */
- BT_PBAP_ORDER_ALPHANUMERIC, /**< Filter order alphanumeric */
- BT_PBAP_ORDER_PHONETIC, /**< Filter order phonetic */
-} bt_pbap_sort_order_e;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_h instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief The attribute handle of GATT(Generic Attribute Profile).
- * @since_tizen @if WEARABLE @else 2.3 @endif
- */
-typedef void *bt_gatt_attribute_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a service, characteristic or descriptor.
- * @since_tizen 2.3.1
- */
-typedef void *bt_gatt_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a GATT client which is associated with a remote device.
- * @since_tizen 2.3.1
- */
-typedef void *bt_gatt_client_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief The handle of a GATT server.
- * @since_tizen 3.0
- */
-typedef void *bt_gatt_server_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief The handle of calls state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef void *bt_call_list_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Class structure of device and service.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_device_info_s
- * @see #bt_adapter_device_discovery_info_s
- * @see bt_device_bond_created_cb()
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-typedef struct {
- bt_major_device_class_e major_device_class; /**< Major device class. */
- bt_minor_device_class_e minor_device_class; /**< Minor device class. */
- int major_service_class_mask; /**< Major service class mask.
- This value can be a combination of #bt_major_service_class_e like #BT_MAJOR_SERVICE_CLASS_RENDERING | #BT_MAJOR_SERVICE_CLASS_AUDIO */
-} bt_class_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Structure of device discovery information.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_class_s
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char *remote_name; /**< The name of remote device */
- bt_class_s bt_class; /**< The Bluetooth classes */
- int rssi; /**< The strength indicator of received signal */
- bool is_bonded; /**< The bonding state */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services */
- bt_appearance_type_e appearance; /**< The Bluetooth appearance */
- int manufacturer_data_len; /**< manufacturer specific data length */
- char *manufacturer_data; /**< manufacturer specific data */
-} bt_adapter_device_discovery_info_s;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of le device discovery information.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @see #bt_class_s
- * @see bt_adapter_le_device_discovery_state_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- int address_type; /**< The address type of remote device */
- int rssi; /**< The strength indicator of received signal */
- int adv_data_len; /**< advertising indication data length */
- char *adv_data; /**< advertising indication data */
- int scan_data_len; /**< scan response data length */
- char *scan_data; /**< scan response data */
-} bt_adapter_le_device_discovery_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of le scan result information.
- * @since_tizen 2.3.1
- *
- * @see bt_adapter_le_start_scan()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- bt_device_address_type_e address_type; /**< The address type of remote device */
- int rssi; /**< The strength indicator of received signal */
- int adv_data_len; /**< advertising indication data length */
- char *adv_data; /**< advertising indication data */
- int scan_data_len; /**< scan response data length */
- char *scan_data; /**< scan response data */
-} bt_adapter_le_device_scan_result_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of le iBeacon scan result information.
- * @since_tizen 3.0
- *
- * @see bt_adapter_le_start_scan()
- */
-typedef struct {
- int company_id; /**< company ID */
- int ibeacon_type; /**< Ibeacon type */
- char *uuid; /**< UUID */
- int major_id; /**< Major ID */
- int minor_id; /**< Minor ID */
- int measured_power; /**< measured Power */
-} bt_adapter_ibeacon_scan_result_info_s;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of advertising parameters.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @see bt_adapter_le_advertising_state_changed_cb()
- * @see bt_adapter_le_start_advertising()
- */
-typedef struct {
- float interval_min; /**< Minimum advertising interval for non-directed advertising.
- A multiple of 0.625ms is only allowed (Time range : 20ms to 10.24sec). */
- float interval_max; /**< Maximum advertising interval for non-directed advertising.
- A multiple of 0.625ms is only allowed (Time range : 20ms to 10.24sec). */
- char filter_policy; /* Advertising filter policy */
- char type; /* Advertising type */
-} bt_adapter_le_advertising_params_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief LE service data structure.
- * @since_tizen 2.3.1
- *
- * @see bt_adapter_le_get_scan_result_service_data()
- */
-typedef struct {
- char *service_uuid; /**< 16 bit UUID of the service data */
- char *service_data; /**< Service data */
- int service_data_len; /**< Service data length */
-} bt_adapter_le_service_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device information structure used for identifying pear device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_class_s
- * @see bt_device_bond_created_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char *remote_name; /**< The name of remote device */
- bt_class_s bt_class; /**< The Bluetooth classes */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services */
- bool is_bonded; /**< The bonding state */
- bool is_connected; /**< The connection state */
- bool is_authorized; /**< The authorization state */
- int manufacturer_data_len; /**< manufacturer specific data length */
- char *manufacturer_data; /**< manufacturer specific data */
-} bt_device_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Service Discovery Protocol (SDP) data structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This protocol is used for discovering available services or pear device,
- * and finding one to connect with.
- *
- * @see bt_device_service_searched_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services. */
-} bt_device_sdp_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device connection information structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see bt_device_connection_state_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- bt_device_connection_link_type_e link; /**< Link type */
- bt_device_disconnect_reason_e disconn_reason; /**< Disconnection reason */
-} bt_device_connection_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Rfcomm connection data used for exchanging data between Bluetooth devices.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see bt_socket_connection_state_changed_cb()
- */
-typedef struct {
- int socket_fd; /**< The file descriptor of connected socket */
- int server_fd; /**< The file descriptor of the server socket or -1 for client connection */
- bt_socket_role_e local_role; /**< The local device role in this connection */
- char *remote_address; /**< The remote device address */
- char *service_uuid; /**< The service UUId */
-} bt_socket_connection_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Structure of RFCOMM received data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks User can use standard linux functions for reading/writing
- * data from/to sockets.
- *
- * @see bt_socket_data_received_cb()
- */
-typedef struct {
- int socket_fd; /**< The socket fd */
- int data_size; /**< The length of the received data */
- char *data; /**< The received data */
-} bt_socket_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the Bluetooth adapter state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the adapter state changing
- * @param[in] adapter_state The adapter state to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- */
-typedef void (*bt_adapter_state_changed_cb)(int result, bt_adapter_state_e adapter_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when adapter name changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] device_name The name of the Bluetooth device to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked when the name of Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_name_changed_cb().
- * @see bt_adapter_set_name()
- * @see bt_adapter_set_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-typedef void (*bt_adapter_name_changed_cb)(char *device_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the visibility mode changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the visibility mode changing
- * @param[in] visibility_mode The visibility mode to be changed
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre This function will be invoked when the visibility of Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_visibility_mode_changed_cb().
- *
- * @see bt_adapter_set_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-typedef void (*bt_adapter_visibility_mode_changed_cb)
- (int result, bt_adapter_visibility_mode_e visibility_mode, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called every second until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This callback function is called only if visibility mode is #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE.
- * @param[in] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds)
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked if you register this callback using bt_adapter_set_visibility_duration_changed_cb().
- * @see bt_adapter_set_visibility_duration_changed_cb()
- * @see bt_adapter_unset_visibility_duration_changed_cb()
- */
-typedef void (*bt_adapter_visibility_duration_changed_cb)(int duration, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the state of device discovery changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If \a discovery_state is #BT_ADAPTER_DEVICE_DISCOVERY_FOUND,
- * then you can get some information, such as remote device address, remote device name, rssi, and bonding state.
- *
- * @param[in] result The result of the device discovery
- * @param[in] discovery_state The discovery state to be changed
- * @param[in] discovery_info The information of the discovered device \n
- * If \a discovery_state is #BT_ADAPTER_DEVICE_DISCOVERY_STARTED or
- * #BT_ADAPTER_DEVICE_DISCOVERY_FINISHED, then \a discovery_info is NULL.
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre Either bt_adapter_start_device_discovery() or bt_adapter_stop_device_discovery() will invoke this function
- * if you register this callback using bt_adapter_set_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_stop_device_discovery()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- *
- */
-typedef void (*bt_adapter_device_discovery_state_changed_cb)
- (int result, bt_adapter_device_discovery_state_e discovery_state, bt_adapter_device_discovery_info_s *discovery_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when you get bonded devices repeatedly.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] device_info The bonded device information
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_adapter_foreach_bonded_device() will invoke this function.
- *
- * @see bt_adapter_foreach_bonded_device()
- *
- */
-typedef bool (*bt_adapter_bonded_device_cb)(bt_device_info_s *device_info, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the state of LE device discovery changes.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @remarks If \a discovery_state is #BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND,
- * then you can get some information, such as remote LE device address, remote device name, rssi, and bonding state.
- *
- * @param[in] result The result of the LE device discovery
- * @param[in] discovery_state The discovery state to be changed
- * @param[in] discovery_info The information of the discovered LE device \n
- * If \a discovery_state is #BT_ADAPTER_LE_DEVICE_DISCOVERY_STARTED or
- * #BT_ADAPTER_LE_DEVICE_DISCOVERY_FINISHED, then \a discovery_info is NULL.
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre Either bt_adapter_start_device_discovery() or bt_adapter_stop_device_discovery() will invoke this function
- * if you register this callback using bt_adapter_set_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_le_start_device_discovery()
- * @see bt_adapter_le_stop_device_discovery()
- * @see bt_adapter_le_set_device_discovery_state_changed_cb()
- * @see bt_adapter_le_unset_device_discovery_state_changed_cb()
- *
- */
-typedef void (*bt_adapter_le_device_discovery_state_changed_cb)
- (int result, bt_adapter_le_device_discovery_state_e discovery_state, bt_adapter_le_device_discovery_info_s *discovery_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the LE advertisement has been found.
- * @since_tizen 2.3.1
- *
- * @param[in] result The result of the LE scan
- * @param[in] info The information of the found LE advertisement.
- * @param[in] user_data The user data passed from the start function
- *
- * @see bt_adapter_le_start_scan()
- *
- */
-typedef void (*bt_adapter_le_scan_result_cb)(int result,
- bt_adapter_le_device_scan_result_info_s *info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the state of advertiser changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] result The result of the requested state change of advertiser
- * @param[out] advertiser The handle of the state changed advertiser
- * @param[out] adv_state The advertiser state to be changed
- * @param[out] user_data The user data passed from the start function
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-typedef void (*bt_adapter_le_advertising_state_changed_cb)(int result,
- bt_advertiser_h advertiser, bt_adapter_le_advertising_state_e adv_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the process of creating bond finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If the remote user does not respond within 60 seconds, a time out will happen with #BT_ERROR_TIMED_OUT result code.\n
- * If bt_device_cancel_bonding() is called and it returns #BT_ERROR_NONE, then this callback function will be called
- * with #BT_ERROR_CANCELLED result. \n
- * If creating a bond succeeds but service search fails, then this callback will be called with #BT_ERROR_SERVICE_SEARCH_FAILED.
- * In this case, you should try service search again by bt_device_start_service_search() to get the supported service list.
- *
- * @param[in] result The result of the bonding device
- * @param[in] device_info The device information which you creates bond with
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre Either bt_device_create_bond() will invoke this function
- * if you register this callback using bt_device_set_bond_created_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_device_cancel_bonding()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-typedef void (*bt_device_bond_created_cb)(int result, bt_device_info_s *device_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when you get connected profiles repeatedly.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] profile The connected Bluetooth profile
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_device_foreach_connected_profiles() will invoke this function.
- * @see bt_device_foreach_connected_profiles()
- */
-typedef bool (*bt_device_connected_profile)(bt_profile_e profile, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the bond destroys.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result that a bond is destroyed
- * @param[in] remote_address The address of the remote Bluetooth device to destroy bond with
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_device_destroy_bond() will invoke this function
- * if you register this callback using bt_device_set_bond_destroyed_cb().
- *
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-typedef void (*bt_device_bond_destroyed_cb)(int result, char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the authorization of device changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] authorization The authorization of device
- * @param[in] remote_address The address of the remote Bluetooth device which is (un)authorized
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_device_set_authorization() will invoke this function if you register this callback using bt_device_set_authorization_changed_cb().
- *
- * @see bt_device_set_authorization()
- * @see #bt_device_set_authorization_changed_cb()
- * @see #bt_device_unset_authorization_changed_cb()
- */
-typedef void (*bt_device_authorization_changed_cb)
- (bt_device_authorization_e authorization, char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the process of service search finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remark
- *
- * @param[in] result The result of the service searching
- * @param[in] sdp_info The structure of service lists found on a device
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_device_start_service_search() will invoke this function
- * if you register this callback using bt_device_set_service_searched_cb().
- *
- * @see bt_device_start_service_search()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- *
- */
-typedef void (*bt_device_service_searched_cb)(int result, bt_device_sdp_info_s *sdp_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected The connection status: (@c true = connected, @c false = disconnected)
- * @param[in] conn_info The connection information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-typedef void (*bt_device_connection_state_changed_cb)(bool connected, bt_device_connection_info_s *conn_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when you receive data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] data The received data from the remote device
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre When the connected remote Bluetooth device invokes bt_socket_send_data(),
- * this function will be invoked if you register this function using bt_socket_set_data_received_cb().
- *
- * @see bt_socket_set_data_received_cb()
- * @see bt_socket_unset_data_received_cb()
- * @see bt_socket_send_data()
- */
-typedef void (*bt_socket_data_received_cb)(bt_socket_received_data_s *data, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when the socket connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of connection state changing
- * @param[in] connection_state The connection state
- * @param[in] connection The connection information which is established or disconnected
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_socket_connect_rfcomm() will invoke this function.
- * In addition, bt_socket_connection_state_changed_cb() will be invoked when the socket connection state is changed.
- * @see bt_socket_listen_and_accept_rfcomm()
- * @see bt_socket_connect_rfcomm()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-typedef void (*bt_socket_connection_state_changed_cb)
- (int result, bt_socket_connection_state_e connection_state, bt_socket_connection_s *connection, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when a RFCOMM connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] socket_fd The file descriptor of socket on which a connection is requested
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @pre If you register this callback function by bt_socket_set_connection_requested_cb(),
- * bt_socket_connection_requested_cb() will be invoked.
- */
-typedef void (*bt_socket_connection_requested_cb) (int socket_fd, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when an OPP connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details You must call bt_opp_server_accept_connection() if you want to accept.
- * Otherwise, you must call bt_opp_server_reject_connection().
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-typedef void (*bt_opp_server_connection_requested_cb)(const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when a file is being transferred.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] percent The progress in percentage (1 ~ 100)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_accept_connection()
- */
-typedef void (*bt_opp_server_transfer_progress_cb) (const char *file, long long size, int percent, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when a transfer is finished.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] error_code The result of push
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_accept_connection()
- */
-typedef void (*bt_opp_server_transfer_finished_cb) (int result, const char *file, long long size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when OPP server responds to the push request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of OPP server response
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_opp_client_push_files() will invoke this function.
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_responded_cb)(int result, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when each file is being transferred.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] percent The progress in percentage (1 ~ 100). 100 means that a file is transferred completely.
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_opp_client_push_files() will invoke this function.
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_progress_cb)(const char *file, long long size, int percent, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when the push request is finished.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the push request
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_finished_cb)(int result, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_audio_connect() or bt_audio_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile except #BT_AUDIO_PROFILE_TYPE_ALL
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_audio_set_connection_state_changed_cb()
- * @see bt_audio_unset_connection_state_changed_cb()
- */
-typedef void (*bt_audio_connection_state_changed_cb) (int result, bool connected, const char *remote_address, bt_audio_profile_type_e type, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-typedef void (*bt_ag_call_handling_event_cb) (bt_ag_call_handling_event_e event, unsigned int call_id, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-typedef void (*bt_ag_multi_call_handling_event_cb) (bt_ag_multi_call_handling_event_e event, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] dtmf The DTMF transmitted from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_dtmf_transmitted_cb()
- * @see bt_ag_unset_dtmf_transmitted_cb()
- */
-typedef void (*bt_ag_dtmf_transmitted_cb) (const char *dtmf, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the speaker gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-typedef void (*bt_ag_speaker_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the microphone gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] gain The gain of microphone (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_microphone_gain_changed_cb()
- * @see bt_ag_unset_microphone_gain_changed_cb()
- */
-typedef void (*bt_ag_microphone_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_target_deinitialize()
- */
-typedef void (*bt_avrcp_target_connection_state_changed_cb) (bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the equalizer state is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] equalizer The equalizer state
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_equalizer_state_changed_cb()
- * @see bt_avrcp_unset_equalizer_state_changed_cb()
- */
-typedef void (*bt_avrcp_equalizer_state_changed_cb) (bt_avrcp_equalizer_state_e equalizer, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the repeat mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] repeat The repeat mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_repeat_mode_changed_cb()
- * @see bt_avrcp_unset_repeat_mode_changed_cb()
- */
-typedef void (*bt_avrcp_repeat_mode_changed_cb) (bt_avrcp_repeat_mode_e repeat, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the shuffle mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] shuffle The shuffle mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_shuffle_mode_changed_cb()
- * @see bt_avrcp_unset_shuffle_mode_changed_cb()
- */
-typedef void (*bt_avrcp_shuffle_mode_changed_cb) (bt_avrcp_shuffle_mode_e shuffle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the scan mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] shuffle The shuffle mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_scan_mode_changed_cb()
- * @see bt_avrcp_unset_scan_mode_changed_cb()
- */
-typedef void (*bt_avrcp_scan_mode_changed_cb) (bt_avrcp_scan_mode_e scan, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_hid_host_connect() or bt_hid_host_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_host_connect()
- * @see bt_hid_host_disconnect()
- */
-typedef void (*bt_hid_host_connection_state_changed_cb) (int result, bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the connection is established.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of connecting to the remote device
- * @param[in] remote_address The address of connected remote device
- * @param[in] app_id The ID of application
- * @param[in] type The type of HDP(Health Device Profile) channel
- * @param[in] channel The connected data channel
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_disconnected_cb
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-typedef void (*bt_hdp_connected_cb) (int result, const char *remote_address, const char *app_id,
- bt_hdp_channel_type_e type, unsigned int channel, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the connection is disconnected.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of disconnecting from the remote device
- * @param[in] remote_address The address of disconnected remote device
- * @param[in] channel The connected data channel
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_connected_cb
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-typedef void (*bt_hdp_disconnected_cb) (int result, const char *remote_address, unsigned int channel, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] channel The connected data channel
- * @param[in] data The received data
- * @param[in] size The size of received data (byte)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_set_data_received_cb()
- * @see bt_hdp_unset_data_received_cb()
- */
-typedef void (*bt_hdp_data_received_cb) (unsigned int channel, const char *data, unsigned int size, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_foreach_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when you get the primary services repeatedly.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] service The attribute handle of service
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_gatt_foreach_primary_services() will invoke this function.
- * @see bt_gatt_foreach_primary_services()
- */
-typedef bool (*bt_gatt_primary_service_cb) (bt_gatt_attribute_h service, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. This is not required because characteristic discovery is happened automatically.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called after the characteristics are discovered by bt_gatt_discover_characteristics().
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @remarks If bt_gatt_discover_characteristics() failed, then this callback function is called only once with 0 total and NULL characteristic_handle.
- * @param[in] result The result of discovering
- * @param[in] index The index of characteristics in a service, starts from 0
- * @param[in] total The total number of characteristics in a service
- * @param[in] characteristic The attribute handle of characteristic
- * @param[in] user_data The user data passed from the request function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_gatt_discover_characteristics() will invoke this callback.
- * @see bt_gatt_discover_characteristics()
- */
-typedef bool (*bt_gatt_characteristics_discovered_cb) (int result, int index, int total, bt_gatt_attribute_h characteristic, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_foreach_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when you get the included services repeatedly.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] service The attribute handle of service
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_gatt_foreach_included_services() will invoke this function.
- * @see bt_gatt_foreach_included_services()
- */
-typedef bool (*bt_gatt_included_service_cb) (bt_gatt_attribute_h service, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_characteristic_value_changed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a characteristic in service is changed.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] characteristic The attribute handle of characteristic
- * @param[in] value The value of characteristic (byte array)
- * @param[in] value_length The length of value
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_gatt_set_characteristic_changed_cb()
- * @see bt_gatt_unset_characteristic_changed_cb()
- */
-typedef void (*bt_gatt_characteristic_changed_cb) (bt_gatt_attribute_h characteristic, unsigned char *value, int value_length, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_request_completed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a characteristic value is written.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @see bt_gatt_set_characteristic_value()
- */
-typedef void (*bt_gatt_characteristic_write_cb) (void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_request_completed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a characteristic value is read.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] value The value of characteristic (byte array)
- * @param[in] value_length The length of value
- * @param[in] user_data The user data passed from the foreach function
- * @see bt_gatt_read_characteristic_value()
- */
-typedef void (*bt_gatt_characteristic_read_cb) (unsigned char *value,
- int value_length, void *user_data);
-
-/**
- * @deprecated Deprecated since 2.3.1. This is not required because descriptor discovery is happened automatically.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called after the characteristics descriptors are discovered by bt_gatt_discover_characteristic_descriptor().
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] result The result of discovering
- * @param[in] characteristic_format The format of the information data.
- * characteristic_format = 0x01 indicates UUIDs are 16-bits
- * characteristic_format = 0x02 indicates UUIDs are 128-bits
- * @param[in] total The total number of elements in characteristic_descriptor
- * @param[in] characteristic descriptor The attribute handle and the UUID of characteristic descriptor
- * @param[in] user_data The user data passed from the request function
- * @see bt_gatt_discover_characteristic_descriptor()
- */
-typedef void (*bt_gatt_characteristic_descriptor_discovered_cb) (int result,
- unsigned char characteristic_format, int total,
- bt_gatt_attribute_h characteristic_descriptor, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when you get GATT handles repeatedly
- * @since_tizen 2.3.1
- *
- * @param[in] total The total number of GATT handles to be called
- * @param[in] index The index of current GATT handle. It starts from 0.
- * @param[in] gatt_handle The GATT handle
- * @param[in] user_data The user data passed from the foreach function
- *
- * @see bt_gatt_service_foreach_characteristics()
- * @see bt_gatt_service_foreach_included_services()
- * @see bt_gatt_characteristic_foreach_descriptors()
- * @see bt_gatt_client_foreach_services()
- */
-typedef bool (*bt_gatt_foreach_cb) (int total, int index, bt_gatt_h gatt_handle,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when the client request(e.g. read / write) has been completed
- * @since_tizen 2.3.1
- *
- * @param[in] result The result of a request
- * @param[in] request_handle The requesting GATT handle
- * @param[in] user_data The user data passed from the requesting function
- *
- * @see bt_gatt_client_read_value()
- * @see bt_gatt_client_write_value()
- */
-typedef void (*bt_gatt_client_request_completed_cb) (int result,
- bt_gatt_h request_handle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a value of a watched characteristic's GATT handle has been changed
- * @since_tizen 2.3.1
- *
- * @remarks After this function is returned, a changed value is automatically
- * applied to @a characteristic. Before that, @a characteristic has an old value.
- *
- * @param[in] characteristic The characteristic's GATT handle of which value change is informed. It has an old value.
- * @param[in] value The new value
- * @param[in] len The length of @a value
- * @param[in] user_data The user data passed from the registering function
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-typedef void (*bt_gatt_client_characteristic_value_changed_cb) (bt_gatt_h characteristic,
- char *value, int len, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a service of a remote GATT server has been changed.
- * @since_tizen 3.0
- *
- * @param[in] client The handle of a GATT client which is associated with a remote device.
- * @param[in] change_type The changed type
- * @param[in] service_uuid The changed service uuid
- * @param[in] user_data The user data passed from the registering function
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-typedef void (*bt_gatt_client_service_changed_cb) (bt_gatt_client_h client,
- bt_gatt_client_service_change_type_e change_type,
- const char* service_uuid, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you called bt_gatt_connect() or bt_gatt_disconnect(), this callback is also called with error result even though these functions fail.
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The state to be changed, @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote_address
- * @param[in] user_data The user data passed from the callback registration function.
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- */
-typedef void (*bt_gatt_connection_state_changed_cb)(int result, bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when a value of a characteristic or descriptor's GATT handle has been changed.
- * @since_tizen 3.0
- *
- * @details For finishing the request, call the function #bt_gatt_server_send_response in callback.
- *
- * @remarks After this function is returned, a changed value is automatically
- * applied to @a gatt_handle. Before that, @a gatt_handle has an old value.
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- * @remarks The @a value must not be freed by application.
- *
- * @param[in] remote_address The address of the remote device which requests a change
- * @param[in] request_id The identification of this request. It will be used to send a response.
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic or descriptor's GATT handle which has an old value
- * @param[in] offset The requested offset from where the @a gatt_handle value will be updated
- * @param[in] value The new value
- * @param[in] len The length of @a value
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_write_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-typedef void (*bt_gatt_server_write_value_requested_cb) (const char *remote_address,
- int request_id, bt_gatt_server_h server,
- bt_gatt_h gatt_handle, int offset,
- const char *value, int len, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the remote device requests to read a value on a GATT server.
- * @since_tizen 3.0
- *
- * @details For finishing the request, call the function #bt_gatt_server_send_response in callback.
- *
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- *
- * @param[in] remote_address The address of the requesting remote device
- * @param[in] request_id The identification of this request. It will be used to send a response.
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic or descriptor's GATT handle to be read
- * @param[in] offset The requested offset from where the GATT handle's value is read
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_read_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-typedef void (*bt_gatt_server_read_value_requested_cb) (const char *remote_address,
- int request_id, bt_gatt_server_h server, bt_gatt_h gatt_handle,
- int offset, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the remote device enables or disables the Notification/Indication for particular characteristics.
- * @since_tizen 3.0
- *
- * @details By using this callback function, server can know notification state.
- *
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- *
- * @param[in] notify Indicates whether the Notification/Indication is enabled or not
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic's GATT handle to be read
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_read_value_requested_cb()
- */
-typedef void (*bt_gatt_server_characteristic_notification_state_changed_cb) (bool notify,
- bt_gatt_server_h server, bt_gatt_h gatt_handle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the sending notification / indication is done.
- * @since_tizen 3.0
- *
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a characteristic must not be freed by application.
- *
- * @remarks In case of an indication, once a confirmation is received from the remote device this callback will be called. \n
- * This callback will be called several times if there are two or more remote devices which enable a Client Characteristic Configuration Descriptor(CCCD). \n
- * For the last remote device, @a completed will be set as true.
- *
- * @param[in] result The result of a sending operation
- * @param[in] remote_address The address of the remote device
- * @param[in] server The GATT server handle
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] completed If this callback is for the last remote device which enables a CCCD, it will be true. Or it will be false.
- * @param[in] user_data The user data passed from the requesting function
- *
- * @see bt_gatt_server_notify_characteristic_changed_value()
- */
-typedef void (*bt_gatt_server_notification_sent_cb) (int result,
- const char *remote_address, bt_gatt_server_h server,
- bt_gatt_h characteristic, bool completed, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected Indicates whether a client is connected or disconnected
- * @param[in] remote_address The remote address
- * @param[in] interface_name The interface name. For example, bnep0, bnep1.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_nap_set_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-typedef void (*bt_nap_connection_state_changed_cb) (bool connected, const char *remote_address, const char *interface_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_panu_connect() or bt_panu_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] type The type of PAN service
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_nap_set_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-typedef void (*bt_panu_connection_state_changed_cb) (int result, bool connected, const char *remote_address, bt_panu_service_type_e type, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID mouse's button.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_MOUSE_BUTTON_NONE = 0x00, /**<The mouse's none value*/
- BT_HID_MOUSE_BUTTON_LEFT = 0x01, /**<The mouse's left button value*/
- BT_HID_MOUSE_BUTTON_RIGHT = 0x02, /**<The mouse's right button value*/
- BT_HID_MOUSE_BUTTON_MIDDLE = 0x04 /**<The mouse's middle button value*/
-} bt_hid_mouse_button_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID mouse event information.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @see bt_hid_device_send_mouse_event()
- */
-typedef struct {
- int buttons; /**< The button values, we can combine key's values when we pressed multiple mouse buttons*/
- int axis_x; /**< The location's x value, -128 ~127 */
- int axis_y; /**< The location's y value, -128 ~127 */
- int padding; /**< The padding value, -128 ~127 */
-} bt_hid_mouse_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID keyboard event information.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @details If you want to know more detail values, refer to http://www.usb.org/developers/hidpage/ and see "HID Usage Tables"
- *
- * @see bt_hid_device_send_key_event()
- */
-typedef struct {
- unsigned char modifier; /**< The modifier keys : such as shift, alt */
- unsigned char key[8]; /**< The key value - currently pressed keys : Max 8 at once */
-} bt_hid_key_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID header type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_HEADER_HANDSHAKE, /**< The Bluetooth HID header type: Handshake */
- BT_HID_HEADER_HID_CONTROL, /**< The Bluetooth HID header type: HID control */
- BT_HID_HEADER_GET_REPORT, /**< The Bluetooth HID header type: Get report */
- BT_HID_HEADER_SET_REPORT, /**< The Bluetooth HID header type: Set report */
- BT_HID_HEADER_GET_PROTOCOL, /**< The Bluetooth HID header type: Get protocol */
- BT_HID_HEADER_SET_PROTOCOL, /**< The Bluetooth HID header type: Set protocol */
- BT_HID_HEADER_DATA, /**< The Bluetooth HID header type: Data */
- BT_HID_HEADER_UNKNOWN /**< The Bluetooth HID header type: Unknown */
-} bt_hid_header_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID parameter type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_PARAM_DATA_RTYPE_INPUT, /**< Parameter type: Input */
- BT_HID_PARAM_DATA_RTYPE_OUTPUT /**< Parameter type: Output */
-} bt_hid_param_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID handshake type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_HANDSHAKE_SUCCESSFUL = 0x00, /**< Handshake error code none */
- BT_HID_HANDSHAKE_NOT_READY, /**< Handshake error code Not Ready */
- BT_HID_HANDSHAKE_ERR_INVALID_REPORT_ID, /**< Handshake error code send invalid report id */
- BT_HID_HANDSHAKE_ERR_UNSUPPORTED_REQUEST, /**< Handshake error code request unsupported request */
- BT_HID_HANDSHAKE_ERR_INVALID_PARAMETER, /**< Handshake error code received invalid parameter */
- BT_HID_HANDSHAKE_ERR_UNKNOWN = 0x0e, /**< unknown error */
- BT_HID_HANDSHAKE_ERR_FATAL /**< Fatal error */
-} bt_hid_handshake_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing data received from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef struct {
- const char *address; /**< The remote device's address */
- bt_hid_header_type_e header_type; /**< The header type */
- bt_hid_param_type_e param_type; /**< The parameter type */
- int data_size; /**< The length of the received data */
- const char *data; /**< The received data */
-} bt_hid_device_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the Bluetooth HID Device connection state changes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The requested state. @a true means the connection is enabled, @a false means the connection is disabled.
- * @param[in] remote_address The remote device's address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_activate()
- */
-typedef void (*bt_hid_device_connection_state_changed_cb) (int result,
- bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the HID Device receives data from the HID Host.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] data The data received from the HID Host.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_set_data_received_cb()
- */
-typedef void (*bt_hid_device_data_received_cb)(const bt_hid_device_received_data_s *data, void *user_data);
-/* HID device related type */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief The structure type containing vCard information.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @see bt_pbap_client_pull_vcard()
- */
-typedef struct {
- int index; /**< The vcard index, used as a parameter for bt_pbap_client_pull_vcard() */
- const char *contact_name; /**< The contact name of the vCard */
-} bt_pbap_vcard_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP is Connected or Disconnected.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of connecting to or disconnecting from the remote device
- * @param[in] connected The PBAP connection status (@c true = connected, @c false = disconnected)
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_connection_state_changed_cb)(int result, bool connected,
- const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP Phonebook size calculation completes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the phone book size
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] size Size of Phonebook
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_phone_book_size_cb)(int result, const char *remote_address,
- int size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP Phonebook Pull completes.
- * @details The received phone book file will be saved in the platform downloads folder. \n
- * The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the phone book
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] vcf_file The absolute path of the file in which the vCards are saved (@a vcf_file is valid only inside this function. To use outside the callback, make a copy. @a vcf_file should not be freed.)
- * @param[in] successful true if the operation was successful, false if not
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_phone_book_received_cb)(int result, const char *remote_address,
- const char *vcf_file, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP List vCards completes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the vcard list
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] vcard_info List of vcard information (@a vcard_info is valid only inside this function. To use outside the callback, make a copy. @a vcard_info should not be freed.)
- * @param[in] count Number of contacts in the list
- * @param[in] successful true if the operation was successful, false if not
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_list_vcards_cb)(int result, const char *remote_address,
- const bt_pbap_vcard_info_s *vcard_info, int count, void *user_data);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_H__ */
diff --git a/include/mobile/bluetooth_type_internal.h b/include/mobile/bluetooth_type_internal.h
deleted file mode 100644
index c46b056..0000000
--- a/include/mobile/bluetooth_type_internal.h
+++ /dev/null
@@ -1,737 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type_internal.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth adapter le state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_DISABLED = 0x00, /**< Bluetooth le is disabled */
- BT_ADAPTER_LE_ENABLED, /**< Bluetooth le is enabled */
-} bt_adapter_le_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the Bluetooth adapter le state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the adapter state changing
- * @param[in] adapter_le_state The adapter le state to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_adapter_le_enable() or bt_adapter_le_disable() will invoke this callback if you register this callback using bt_adapter_le_set_state_changed_cb().
- * @see bt_adapter_le_enable()
- * @see bt_adapter_le_disable()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- */
-typedef void (*bt_adapter_le_state_changed_cb)(int result, bt_adapter_le_state_e adapter_le_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_EVENT_IDLE = 0x00, /**< Idle */
- BT_AG_CALL_EVENT_ANSWERED, /**< Answered */
- BT_AG_CALL_EVENT_HELD, /**< Held */
- BT_AG_CALL_EVENT_RETRIEVED, /**< Retrieved */
- BT_AG_CALL_EVENT_DIALING, /**< Dialing */
- BT_AG_CALL_EVENT_ALERTING, /**< Alerting */
- BT_AG_CALL_EVENT_INCOMING, /**< Incoming */
-} bt_ag_call_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_STATE_IDLE = 0x00, /**< Idle state */
- BT_AG_CALL_STATE_ACTIVE, /**< Active state */
- BT_AG_CALL_STATE_HELD, /**< Held state */
- BT_AG_CALL_STATE_DIALING, /**< Dialing state */
- BT_AG_CALL_STATE_ALERTING, /**< Alerting state */
- BT_AG_CALL_STATE_INCOMING, /**< Incoming state */
- BT_AG_CALL_STATE_WAITING, /**< Waiting for connected indication event after answering an incoming call*/
-} bt_ag_call_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_MODULE
- * @brief Enumerations for the transfer type
- * @since_tizen 3.0
- */
-typedef enum {
- BT_TRANSFER_INBOUND, /**< Inbound Transfer Type */
- BT_TRANSFER_OUTBOUND, /**< Outbound Transfer Type */
-} bt_opp_transfer_type_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the connectable state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the connectable state changing
- * @param[in] connectable The connectable to be changed
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre This function will be invoked when the connectable state of local Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_connectable_changed_cb().
- *
- * @see bt_adapter_set_connectable()
- * @see bt_adapter_set_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-typedef void (*bt_adapter_connectable_changed_cb)
- (int result, bool connectable, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when the push is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details You must call bt_opp_server_accept() if you want to accept.
- * Otherwise, you must call bt_opp_server_reject().
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_initialize()
- */
-typedef void (*bt_opp_server_push_requested_cb)(const char *file, int size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth adapter le scan type.
- * @since_tizen 2.3
- */
-typedef enum {
- BT_ADAPTER_LE_PASSIVE_SCAN = 0x00,
- BT_ADAPTER_LE_ACTIVE_SCAN
-} bt_adapter_le_scan_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the call handling event
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_CALL_HANDLING_EVENT_ANSWER = 0x00, /**< Request to answer an incoming call */
- BT_HF_CALL_HANDLING_EVENT_RELEASE, /**< Request to release a call */
- BT_HF_CALL_HANDLING_EVENT_REJECT, /**< Request to reject an incoming call */
- BT_HF_CALL_HANDLING_EVENT_RING, /**< Request of ringing call */
- BT_HF_CALL_HANDLING_EVENT_CALL_STARTED, /**< Request of Call started */
- BT_HF_CALL_HANDLING_EVENT_CALL_ENDED, /**< Request of Call Ended */
- BT_HF_CALL_HANDLING_EVENT_VOICE_RECOGNITION_ENABLED, /**< Request of voice recognition enabled */
- BT_HF_CALL_HANDLING_EVENT_VOICE_RECOGNITION_DISABLED, /**< Request of voice recognition disabled */
- BT_HF_CALL_HANDLING_EVENT_VENDOR_DEP_CMD, /**< Request of Vendor command */
- BT_HF_CALL_HANDLING_EVENT_WAITING, /**< Request to waiting a call */
- BT_HF_CALL_HANDLING_EVENT_HELD, /**< Request to hold a call */
- BT_HF_CALL_HANDLING_EVENT_UNHELD, /**< Request to unhold calls */
- BT_HF_CALL_HANDLING_EVENT_SWAPPED, /**< Request to swap calls */
-} bt_hf_call_handling_event_e;
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the multi call handling event
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_MULTI_CALL_HANDLING_EVENT_RELEASE_HELD_CALLS = 0x00, /**< Request to release held calls */
- BT_HF_MULTI_CALL_HANDLING_EVENT_RELEASE_ACTIVE_CALLS, /**< Request to release active calls */
- BT_HF_MULTI_CALL_HANDLING_EVENT_ACTIVATE_HELD_CALL, /**< Request to put active calls into hold state and activate another (held or waiting) call */
- BT_HF_MULTI_CALL_HANDLING_EVENT_MERGE_CALLS, /**< Request to add a held call to the conversation */
- BT_HF_MULTI_CALL_HANDLING_EVENT_EXPLICIT_CALL_TRANSFER, /**< Request to let a user who has two calls to connect these two calls together and release its connections to both other parties */
-} bt_hf_multi_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_CALL_EVENT_IDLE = 0x00, /**< Idle */
- BT_HF_CALL_EVENT_ANSWER, /**< Answered */
- BT_HF_CALL_EVENT_HOLD, /**< Held */
- BT_HF_CALL_EVENT_RETRIEVE, /**< Retrieved */
- BT_HF_CALL_EVENT_DIAL, /**< Dialing */
- BT_HF_CALL_EVENT_ALERT, /**< Alerting */
- BT_HF_CALL_EVENT_INCOMING, /**< Incoming */
- BT_HF_CALL_EVENT_REDIAL, /**< Redialling */
- BT_HF_CALL_EVENT_RELEASE_ALL_NONACTIVE_CALLS, /**< Release all nonactive calls */
- BT_HF_CALL_EVENT_ACCEPT_AND_RELEASE, /**< Accept and Release */
- BT_HF_CALL_EVENT_ACCEPT_AND_HOLD, /**< Accept and Hold */
- BT_HF_CALL_EVENT_ADD_TO_CONVERSATION, /**< Add to the conversation */
-} bt_hf_call_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief HF Call status information.
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef struct {
- char *number; /**< Phone Number */
- int direction; /**< Direction :Incoming(1), Outgoing(0) */
- int status; /**< Call Status :Active(0), Held(1), Waiting(5), Dailing(2) */
- int multi_party; /**< Multiparty/conf call: Yes(1), No(0) */
- int index; /**< Call index/ID */
-} bt_hf_call_status_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the manufacturer dat changes.
- * @since_tizen 2.3
- *
- * @param[in] data The manufacurer data of the Bluetooth device to be changed
- * @param[in] len The length of @a data
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked when the manufacturer data of Bluetooth adapter changes
- * if callback is registered using bt_adapter_set_manufacturer_data_changed_cb().
- * @see bt_adapter_set_manufacturer_data()
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-typedef void (*bt_adapter_manufacturer_data_changed_cb) (char *data,
- int len, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called repeatedly when you get the devices connected with specific profile.
- * @since_tizen 3.0
- *
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_adapter_foreach_profile_connected_devices() will invoke this function.
- * @see bt_adapter_foreach_profile_connected_devices()
- */
-typedef bool (*bt_adapter_profile_connected_devices_cb)(const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @details This callback is called when the SCO state is changed.
- * When you call bt_ag_open_sco() or bt_ag_close_sco(), this callback is also called with error result even though these functions failed.
- * @param[in] result The result of changing the connection state
- * @param[in] opened The state to be changed: (@c true = opened, @c false = not opened)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-typedef void (*bt_hf_sco_state_changed_cb) (int result, bool opened, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-typedef void (*bt_hf_call_handling_event_cb) (bt_hf_call_handling_event_e event, char *phone_number, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-typedef void (*bt_hf_multi_call_handling_event_cb) (bt_hf_multi_call_handling_event_e event, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when the speaker gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hf_set_speaker_gain_changed_cb()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-typedef void (*bt_hf_speaker_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a call status updated event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- * @remarks call_info_list has elements which consist of bt_hf_call_status_info_s
- * @remarks The @a call_info_list must be released with bt_hf_free_call_status_info_list() by you.
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hf_call_status_info_s
- * @see bt_hf_set_call_status_updated_event_cb()
- * @see bt_hf_unset_call_status_updated_event_cb()
- */
-typedef void (*bt_hf_call_status_updated_event_cb) (GSList *call_info_list, void *user_data);
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM BT allowance state
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_ERROR = -1, /**< bluetooth allowance error */
- BT_DPM_BT_ALLOWED, /**< bluetooth allowance allowed */
- BT_DPM_HANDSFREE_ONLY, /**< bluetooth allowance handsfree only */
- BT_DPM_BT_RESTRICTED, /**< bluetooth allowance restricted */
-} bt_dpm_allow_e;
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM Policy status
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_STATUS_ERROR = -1,
-
- BT_DPM_ALLOWED = 0, /**< DPM Policy status allowed. */
- BT_DPM_RESTRICTED = 1, /**< DPM Policy status restricted. */
-
- BT_DPM_ENABLE = 1, /**< DPM Policy status enabled. */
- BT_DPM_DISABLE = 0, /**< DPM Policy status disabled. */
-
- BT_DPM_FALSE = 0, /**< DPM Policy status false. */
- BT_DPM_TRUE = 1, /**< DPM Policy status true. */
-} bt_dpm_status_e;
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM Profile states
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_POLICY_A2DP_PROFILE_STATE,
- BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- BT_DPM_POLICY_BPP_PROFILE_STATE,
- BT_DPM_POLICY_DUN_PROFILE_STATE,
- BT_DPM_POLICY_FTP_PROFILE_STATE,
- BT_DPM_POLICY_HFP_PROFILE_STATE,
- BT_DPM_POLICY_HSP_PROFILE_STATE,
- BT_DPM_POLICY_PBAP_PROFILE_STATE,
- BT_DPM_POLICY_SAP_PROFILE_STATE,
- BT_DPM_POLICY_SPP_PROFILE_STATE,
- BT_DPM_PROFILE_NONE,
-} bt_dpm_profile_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle to control Bluetooth LE scan filter
- * @since_tizen 2.4
- */
-typedef void *bt_scan_filter_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device LE connection update structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef struct {
- unsigned int interval_min; /**< Minimum value for the connection event interval (msec) */
- unsigned int interval_max; /**< Maximum value for the connection event interval (msec) */
- unsigned int latency; /**< Slave latency (msec) */
- unsigned int time_out; /**< Supervision timeout (msec) */
-} bt_le_conn_update_s;
-
-/**
- * Structure to DPM device list
- */
-typedef struct {
- int count;
- char **devices;
-} bt_dpm_device_list_s;
-
-/**
- * Structure to DPM uuid list
- */
-typedef struct {
- int count;
- char **uuids;
-} bt_dpm_uuids_list_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID mouse's button.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_MOUSE_BUTTON_NONE = 0x00, /**<The mouse's none value*/
- BT_HID_MOUSE_BUTTON_LEFT = 0x01, /**<The mouse's left button value*/
- BT_HID_MOUSE_BUTTON_RIGHT = 0x02, /**<The mouse's right button value*/
- BT_HID_MOUSE_BUTTON_MIDDLE = 0x04 /**<The mouse's middle button value*/
-} bt_hid_mouse_button_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID mouse event information.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @see bt_hid_device_send_mouse_event()
- */
-typedef struct {
- int buttons; /**< The button values, we can combine key's values when we pressed multiple mouse buttons*/
- int axis_x; /**< The location's x value, -128 ~127 */
- int axis_y; /**< The location's y value, -128 ~127 */
- int padding; /**< The padding value, -128 ~127 */
-} bt_hid_mouse_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID keyboard event information.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- * @details If you want to know more detail values, refer to http://www.usb.org/developers/hidpage/ and see "HID Usage Tables"
- *
- * @see bt_hid_device_send_key_event()
- */
-typedef struct {
- unsigned char modifier; /**< The modifier keys : such as shift, alt */
- unsigned char key[8]; /**< The key value - currently pressed keys : Max 8 at once */
-} bt_hid_key_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID header type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_HEADER_HANDSHAKE, /**< The Bluetooth HID header type: Handshake */
- BT_HID_HEADER_HID_CONTROL, /**< The Bluetooth HID header type: HID control */
- BT_HID_HEADER_GET_REPORT, /**< The Bluetooth HID header type: Get report */
- BT_HID_HEADER_SET_REPORT, /**< The Bluetooth HID header type: Set report */
- BT_HID_HEADER_GET_PROTOCOL, /**< The Bluetooth HID header type: Get protocol */
- BT_HID_HEADER_SET_PROTOCOL, /**< The Bluetooth HID header type: Set protocol */
- BT_HID_HEADER_DATA, /**< The Bluetooth HID header type: Data */
- BT_HID_HEADER_UNKNOWN /**< The Bluetooth HID header type: Unknown */
-} bt_hid_header_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID parameter type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_PARAM_DATA_RTYPE_INPUT, /**< Parameter type: Input */
- BT_HID_PARAM_DATA_RTYPE_OUTPUT /**< Parameter type: Output */
-} bt_hid_param_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID handshake type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_HANDSHAKE_SUCCESSFUL = 0x00, /**< Handshake error code none */
- BT_HID_HANDSHAKE_NOT_READY, /**< Handshake error code Not Ready */
- BT_HID_HANDSHAKE_ERR_INVALID_REPORT_ID, /**< Handshake error code send invalid report id */
- BT_HID_HANDSHAKE_ERR_UNSUPPORTED_REQUEST, /**< Handshake error code request unsupported request */
- BT_HID_HANDSHAKE_ERR_INVALID_PARAMETER, /**< Handshake error code received invalid parameter */
- BT_HID_HANDSHAKE_ERR_UNKNOWN = 0x0e, /**< unknown error */
- BT_HID_HANDSHAKE_ERR_FATAL /**< Fatal error */
-} bt_hid_handshake_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing data received from the HID Host.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef struct {
- const char *address; /**< The remote device's address */
- bt_hid_header_type_e header_type; /**< The header type */
- bt_hid_param_type_e param_type; /**< The parameter type */
- int data_size; /**< The length of the received data */
- const char *data; /**< The received data */
-} bt_hid_device_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the Bluetooth HID Device connection state changes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The requested state. @a true means the connection is enabled, @false means the connection is disabled.
- * @param[in] remote_address The remote device's address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_activate()
- */
-typedef void (*bt_hid_device_connection_state_changed_cb) (int result,
- bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the HID Device receives data from the HID Host.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @param[in] data The data received from the HID Host.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_set_data_received_cb()
- */
-typedef void (*bt_hid_device_data_received_cb)(const bt_hid_device_received_data_s *data, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Trusted Profile enumeration.
- * @since_tizen 3.0
- *
- * @see bt_device_set_profile_trusted()
- * @see bt_device_get_profile_trusted()
- */
-typedef enum {
- BT_TRUSTED_PROFILE_PBAP = 1,
- BT_TRUSTED_PROFILE_MAP,
- BT_TRUSTED_PROFILE_SAP,
- BT_TRUSTED_PROFILE_ALL = 0xFFFFFFFF,
-} bt_trusted_profile_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Restricted Profile enumeration.
- * @since_tizen 3.0
- *
- * @see bt_device_set_profile_restricted()
- * @see bt_device_get_profile_restricted()
- */
-typedef enum {
- BT_RESTRICTED_PROFILE_HFP_HS = 1,
- BT_RESTRICTED_PROFILE_A2DP,
-} bt_restricted_profile_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the authentication event types.
- * @since_tizen 3.0
- *
- */
-typedef enum {
- BT_AUTH_KEYBOARD_PASSKEY_DISPLAY = 0, /**< PIN display event to user for entering PIN in keyboard */
- BT_AUTH_PIN_REQUEST, /**< Legacy PIN or PASSKEY request event */
- BT_AUTH_PASSKEY_CONFIRM_REQUEST, /**< PASSKEY confirmation event to match PASSKEY in remote device */
-} bt_authentication_type_info_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PROXIMITY_MODULE
- * @brief Proximity Profile Role
- * @since_tizen 3.0
- */
-typedef enum {
- BT_PROXIMITY_REPORTER, /**< Proximity Profile Reporter role. */
- BT_PROXIMITY_MONITOR, /**< Proximity Profile Monitor role. */
-} bt_proximity_role_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PROXIMITY_MODULE
- * @brief Proximity Profile Role
- * @since_tizen 3.0
- */
-typedef enum {
- BT_PROXIMITY_LINKLOSS_ALERT = 0x01, /**< Proximity profile Link Loss alert property */
- BT_PROXIMITY_IMMEDIATE_ALERT = 0x02, /**< Proximity Profile Immediate alert property */
- BT_PROXIMITY_TX_POWER = 0x04, /**< Proximity Profile Immediate alert property */
-} bt_proximity_property_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when Trusted Profiles is changed.
- * @since_tizen 3.0
- *
- * @param[in] result The result of supported profile callback
- * @param[in] remote_address Address of remote device
- * @param[in] trusted_profiles Trusted profile FLAG
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_trusted_profile_cb()
- * @see bt_device_unset_trusted_profile_cb()
- */
-typedef void (*bt_device_trusted_profiles_cb)
- (int result, char *remote_address, int trusted_profile, bool supported, bool trusted, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Attribute protocol MTU change information structure.
- * @since_tizen 3.0
- *
- * @see bt_device_att_mtu_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- unsigned int mtu; /** < MTU value */
- unsigned int status; /** < request status*/
-} bt_device_att_mtu_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen 3.0
- *
- * @param[in] connected The connection status: (@c true = connected, @c false = disconnected)
- * @param[in] conn_info The connection information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-typedef void (*bt_device_att_mtu_changed_cb)(int result, bt_device_att_mtu_info_s *mtu_info, void *user_data);
-
-/**
- * @internal
- * @ingroup
- * @brief IPSP Init state changed callback
- * @since_tizen 3.0
- */
-typedef void (*bt_ipsp_init_state_changed_cb)
- (int result, bool ipsp_initialized, void *user_data);
-
-/**
- * @internal
- * @ingroup
- * @since_tizen 3.0
-
- * @brief IPSP Connection state changed callback
- */
-typedef void (*bt_ipsp_connection_state_changed_cb)
- (int result, bool connected, const char *remote_address, const char *iface_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a Proximity Monitor client handle which is associated with a remote device.
- * @since_tizen 3.0
- */
-typedef void *bt_proximity_monitor_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief The handle of a Proximity Reporter server.
- * @since_tizen 3.0
- */
-typedef void *bt_proximity_reporter_h;
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity profile reporter property changed callback
- */
-typedef void (*bt_proximity_reporter_property_changed_cb)
- (int result, const char *remote_address, int service_type, int prop_value, void *user_data);
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity monitor profile connection state changed callback
- */
-typedef void (*bt_proximity_monitor_connection_state_changed_cb)
- (int result, const char *remote_address, bt_proximity_monitor_h monitor, bool connected, int supported_service, void *user_data);
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity reporter profile connection state changed callback
- */
-typedef void (*bt_proximity_reporter_connection_state_changed_cb)
- (int result, const char *remote_address, bt_proximity_reporter_h reporter, bool connected, int supported_service, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when remote device requests authentication.
- * @since_tizen 3.0
- * @param[in] result
- * @param[in] auth_type
- * typedef enum {
- * BT_AUTH_KEYBOARD_PASSKEY_DISPLAY = 0, : PIN display event to user for entering PIN in keyboard
- * BT_AUTH_PIN_REQUEST, : Legacy PIN or PASSKEY request event
- * BT_AUTH_PASSKEY_CONFIRM_REQUEST, : PASSKEY confirmation event to match PASSKEY in remote device
- * } bt_authentication_type_info_e;
- * @param[in] device_name Name of the remote device
- * @param[in] remote_addr Remote BD address
- * @param[in] pass_key PASSKEY string
- * PASSKEY string is valid only if authentication types are following
- * a/ BT_AUTH_KEYBOARD_PASSKEY_DISPLAY
- * b/ BT_AUTH_PASSKEY_CONFIRM_REQUEST
- * pass_key string will be invalid if authentication event is of type BT_AUTH_PIN_REQUEST
- * as this event indicates that user MUST enter PIN or PASSKEY and perform authentication.
- *
- * Upon receiving BT_AUTH_KEYBOARD_PASSKEY_DISPLAY event, user should enter PASSKEY in keyboard
- * Application can also call bt_device_cancel_bonding() Upon receiving BT_AUTH_KEYBOARD_PASSKEY_DISPLAY
- * event which will fail the on-going pairing with remote device.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_adapter_set_authentication_req_cb()
- */
-typedef void (*bt_adapter_authentication_req_cb)(int result, bt_authentication_type_info_e auth_type,
- char *device_name, char *remote_addr,
- char *pass_key, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Samsung XSAT Vendor dependent command.
- * @since_tizen 2.3.2
- */
-typedef struct {
- int app_id; /**< The application ID */
- char *message; /**< Command message */
-} bt_hf_vendor_dep_at_cmd_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a XSAT vendor command is transmitted from Hands-Free.
- * @since_tizen 2.3
- *
- * @param[in] command The XSAT vendor command transmitted from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_vendor_cmd_cb()
- * @see bt_ag_unset_vendor_cmd_cb()
- */
-typedef void (*bt_ag_vendor_cmd_cb) (char *command, void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__ */
diff --git a/include/tv/bluetooth.h b/include/tv/bluetooth.h
deleted file mode 100644
index deaa0c2..0000000
--- a/include/tv/bluetooth.h
+++ /dev/null
@@ -1,5865 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_H__
-#define __TIZEN_NETWORK_BLUETOOTH_H__
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <stdbool.h>
-#include <tizen_error.h>
-#include <tizen.h>
-
-#include <bluetooth_type.h>
-
-#ifndef TIZEN_DEPRECATED_API
-#define TIZEN_DEPRECATED_API __attribute__((__visibility__("default"), deprecated))
-#endif
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth.h
- * @brief API to control the Bluetooth adapter and devices and communications.
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- */
-
-
-/**
- * @addtogroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @{
- */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Initializes the Bluetooth API.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This function must be called before Bluetooth API starts. \n
- * You must free all resources of the Bluetooth service by calling bt_deinitialize() if Bluetooth service is no longer needed.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_deinitialize()
- */
-int bt_initialize(void);
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Releases all resources of the Bluetooth API.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This function must be called if Bluetooth API is no longer needed.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth API must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Gets the specification name for the given UUID.
- * @since_tizen 3.0
- *
- * @remarks The @a name must be released using free().
- *
- * @param[in] uuid The UUID
- * @param[out] name The specification name defined at www.bluetooth.com
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_get_uuid()
- */
-int bt_get_uuid_name(const char *uuid, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the current state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] adapter_state The current adapter state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_adapter_get_state(bt_adapter_state_e *adapter_state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the address of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks The @a local_address must be released with free() by you.
- *
- * @param[out] local_address The device address of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_adapter_get_name()
- */
-int bt_adapter_get_address(char **local_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the name of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details Use this function to get the friendly name associated with Bluetooth
- * device, retrieved by the remote Bluetooth devices.
- *
- * @remarks The @a local_name must be released with free() by you.
- *
- * @param[out] local_name The local device name
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_set_name()
- */
-int bt_adapter_get_name(char **local_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the name of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] local_name The name of the Bluetooth device. \n
- * The maximum length is 248 characters.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_name_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_name()
- * @see bt_adapter_name_changed_cb()
- * @see bt_adapter_set_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-int bt_adapter_set_name(const char *local_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the visibility mode of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] mode The visibility mode of the Bluetooth device
- * @param[out] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds).
- * @a duration is valid only if @a mode is #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE. This value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_visibility(bt_adapter_visibility_mode_e *mode, int *duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Starts the device discovery, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details If a device is discovered, bt_adapter_device_discovery_state_changed_cb() will be invoked
- * with #BT_ADAPTER_DEVICE_DISCOVERY_FOUND, and then bt_adapter_device_discovery_state_changed_cb()
- * will be called with #BT_ADAPTER_DEVICE_DISCOVERY_FINISHED in case of the completion or cancellation of the discovery.
- *
- * @remarks To connect to peer Bluetooth device, you need to know its Bluetooth address. \n
- * The device discovery can be stopped by bt_adapter_stop_device_discovery().
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_is_discovering()
- * @see bt_adapter_stop_device_discovery()
- * @see bt_adapter_device_discovery_state_changed_cb()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_start_device_discovery(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Stops the device discovery, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks The device discovery process will take 10 ~ 20 seconds to get all the devices in vicinity.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The device discovery must be in progress with bt_adapter_start_device_discovery().
- * @post This function invokes bt_adapter_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_is_discovering()
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-int bt_adapter_stop_device_discovery(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Checks for the device discovery is in progress or not.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If Bluetooth discovery is in progress, other operations are not allowed and
- * you have to either stop the discovery operation, or wait for it to be finished,
- * before performing other operations.
-
- * @param[out] is_discovering The discovering status: (@c true = in progress , @c false = not in progress )
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_stop_device_discovery()
- */
-int bt_adapter_is_discovering(bool *is_discovering);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Get the service mask from the uuid list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] uuids The UUID list of the device.
- * @param[in] no_of_service The number of the UUID list count.
- * @param[out] service_mask_list Service mask list converted from the given UUID list.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_service_class_t
- */
-int bt_device_get_service_mask_from_uuid_list(char **uuids,
- int no_of_service,
- bt_service_class_t *service_mask_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Retrieves the device information of all bonded devices.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param [in] callback The callback function to invoke
- * @param [in] user_data The user data passed from the foreach function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_bonded_device_cb().
- *
- * @see bt_adapter_bonded_device_cb()
- */
-int bt_adapter_foreach_bonded_device(bt_adapter_bonded_device_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the device information of a bonded device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a device_info must be released with bt_adapter_free_device_info() by you .
- *
- * @param [in] remote_address The address of remote device
- * @param [out] device_info The bonded device information
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_bonded_device_cb().
- *
- * @see bt_adapter_bonded_device_cb()
- */
-int bt_adapter_get_bonded_device_info(const char *remote_address, bt_device_info_s **device_info);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Frees device info.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param [in] device_info The bonded device information
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_adapter_get_bonded_device_info()
- */
-int bt_adapter_free_device_info(bt_device_info_s *device_info);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Checks whether the UUID of service is used or not
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] service_uuid The UUID of service
- * @param[out] used Indicates whether the service is used or not
- * @return true on success, otherwise false.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_adapter_is_service_used(const char *service_uuid, bool *used);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the Bluetooth adapter state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- */
-int bt_adapter_set_state_changed_cb(bt_adapter_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_state_changed_cb()
- */
-int bt_adapter_unset_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the name of Bluetooth adapter changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_name_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-int bt_adapter_set_name_changed_cb(bt_adapter_name_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_name_changed_cb()
- */
-int bt_adapter_unset_name_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the visibility mode changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_visibility_mode_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-int bt_adapter_set_visibility_mode_changed_cb(bt_adapter_visibility_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_visibility_mode_changed_cb()
- */
-int bt_adapter_unset_visibility_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked every second
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * until the visibility mode is changed from #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE
- * to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @details When you set visibility mode as #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE,
- * @a callback will be called every second until visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @post bt_adapter_visibility_duration_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_adapter_visibility_duration_changed_cb()
- * @see bt_adapter_unset_visibility_duration_changed_cb()
- */
-int bt_adapter_set_visibility_duration_changed_cb(bt_adapter_visibility_duration_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_adapter_set_visibility_duration_changed_cb()
- */
-int bt_adapter_unset_visibility_duration_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the device discovery state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_device_discovery_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_device_discovery_state_changed_cb()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_set_device_discovery_state_changed_cb(bt_adapter_device_discovery_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- */
-int bt_adapter_unset_device_discovery_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Get the Hash and Randmoizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] hash The hash value received from the controller
- * @param[out] randomizer The hash value received from the controller
- * @param[out] hash_len The length of the hash value
- * @param[out] randomizer_len The length of the randomizer value
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_get_local_oob_data(unsigned char **hash, unsigned char **randomizer,
- int *hash_len, int *randomizer_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the Hash and Randmoizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @param[in] hash The hash value received from the controller
- * @param[in] randomizer The hash value received from the controller
- * @param[in] hash_len The length of the hash value. Allowed value is 16
- * @param[in] randomizer_len The length of the randomizer value. Allowed value is 16
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_set_remote_oob_data(const char *remote_address,
- unsigned char *hash, unsigned char *randomizer,
- int hash_len, int randomizer_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the Hash and Randmoizer value, synchronously.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks The @a hash192, randomizer192, hash256 and randomizer256 must be released using free()
- *
- * @param[out] hash192 The hash value derived from the P-192 public key
- * @param[out] randomizer192 The randomizer value associated with the P-192 public key
- * @param[out] hash192_len The length of @a hash192
- * @param[out] randomizer192_len The length of @a randomizer192
- * @param[out] hash256 The hash value derived from the P-256 public key
- * @param[out] randomizer256 The randomizer value associated with the P-256 public key
- * @param[out] hash256_len The length of @a hash256
- * @param[out] randomizer256_len The length of @a randomizer256
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_get_local_oob_ext_data(unsigned char **hash192, unsigned char **randomizer192,
- int *hash192_len, int *randomizer192_len,
- unsigned char **hash256, unsigned char **randomizer256,
- int *hash256_len, int *randomizer256_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the Hash and Randmoizer value, synchronously.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @param[in] hash192 The P-192 hash value received via OOB from remote device
- * @param[in] randomizer192 The P-192 randomizer value received via OOB from remote device
- * @param[in] hash192_len The length of @a hash192
- * @param[in] randomizer192_len The length of @a randomizer192
- * @param[in] hash256 The P-256 hash value received via OOB from remote device
- * @param[in] randomizer256 The P-256 randomizer value received via OOB from remote device
- * @param[in] hash256_len The length of @a hash256
- * @param[in] randomizer256_len The length of @a randomizer256
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_set_remote_oob_ext_data(const char *remote_address,
- const unsigned char *hash192, const unsigned char *randomizer192,
- int hash192_len, int randomizer192_len,
- const unsigned char *hash256, const unsigned char *randomizer256,
- int hash256_len, int randomizer256_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Deletes the Hash and Randomizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_remove_remote_oob_data(const char *remote_address);
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Starts the LE device discovery.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details If a LE device is discovered, bt_adapter_le_device_discovery_state_changed_cb()
-* will be invoked with #BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, and then bt_adapter_le_device_discovery_state_changed_cb()
- * will be called with #BT_ADAPTER_LE_DEVICE_DISCOVERY_FINISHED in case of the completion or cancellation of the discovery.
- *
- * @remarks To connect to peer Bluetooth device, you need to know its Bluetooth address. \n
- * The device discovery can be stopped by bt_adapter_le_stop_device_discovery().
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_le_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_le_is_discovering()
- * @see bt_adapter_le_device_discovery_state_changed_cb()
- * @see bt_adapter_le_set_device_discovery_state_changed_cb()
- * @see bt_adapter_le_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_le_start_device_discovery(void) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Stops the LE device discovery, asynchronously.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The device discovery must be in progress with bt_adapter_le_start_device_discovery().
- * @post This function invokes bt_adapter_le_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_le_is_discovering()
- * @see bt_adapter_le_start_device_discovery()
- * @see bt_adapter_le_set_device_discovery_state_changed_cb()
- * @see bt_adapter_le_unset_device_discovery_state_changed_cb()
- * @see bt_adapter_le_device_discovery_state_changed_cb()
- */
-int bt_adapter_le_stop_device_discovery(void) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Checks for the LE device discovery is in progress or not.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @remarks If Bluetooth LE discovery is in progress, other operations are not allowed and
- * you have to either stop the LE discovery operation, or wait for it to be finished,
- * before performing other operations.
-
- * @param[out] is_discovering The discovering status: (@c true = in progress , @c false = not in progress )
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_device_discovery()
- * @see bt_adapter_le_stop_device_discovery()
- */
-int bt_adapter_le_is_discovering(bool *is_discovering) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Registers a callback function to be invoked when the LE device discovery state changes.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_le_device_discovery_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_le_device_discovery_state_changed_cb()
- * @see bt_adapter_le_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_le_set_device_discovery_state_changed_cb(bt_adapter_le_device_discovery_state_changed_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_le_set_device_discovery_state_changed_cb()
- */
-int bt_adapter_le_unset_device_discovery_state_changed_cb(void) TIZEN_DEPRECATED_API;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Starts the LE scan to find LE advertisement.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details If a LE advertisement is found, bt_adapter_le_scan_result_cb() will be invoked.
- *
- * @param[in] cb The callback to report the result of this function
- * @param[in] user_data The user data to be passed when callback is called
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_le_scan_result_cb().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_start_scan(bt_adapter_le_scan_result_cb cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Stops the LE scan.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The LE scan must be in progress with bt_adapter_le_start_scan().
- *
- * @see bt_adapter_le_start_scan()
- */
-int bt_adapter_le_stop_scan(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service UUID list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a uuids must be iterated as count and each pointed data must be released with free().
- * Then uuids must be released with free(). \n
- * 16-bit service UUID or 128-bit service UUID is supported. (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] uuids The list of string of the service uuid
- * @param[out] count The count of the service UUIDs
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_uuids(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char ***uuids, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the device name from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a name must be released with free() by you.
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] name The device name
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_device_name(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the transmission power level from the scan result information
- * @since_tizen 2.3.1
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] power_level The transmission power level in dBm
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_tx_power_level(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *power_level);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service solicitation UUID list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a uuids must be iterated as count and each pointed data must be released with free().
- * Then uuids must be released with free(). \n
- * 16-bit service solicitation UUID or 128-bit service solicitation UUID is supported.
- * (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] uuids The list of string of the service solicitation uuid
- * @param[out] count The count of the service UUIDs
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_solicitation_uuids(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char ***uuids, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service data list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a data_list must be released with bt_adapter_le_free_service_data_list() by you .
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] data_list The list of the service data
- * @param[out] count The count of the service data list
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_data_list(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_le_service_data_s **data_list, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Frees service data list.
- * @since_tizen 2.3.1
- *
- * @param[in] data_list The list of the service data
- * @param[in] count The count of the service data list
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_adapter_le_get_scan_result_service_data_list()
- */
-int bt_adapter_le_free_service_data_list(bt_adapter_le_service_data_s *data_list, int count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the appearance from the scan result information
- * @since_tizen 2.3.1
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] appearance The appearance
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_appearance(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *appearance);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the manufacturer data from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a manufacturer_data must be released with free() by you.
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] manufacturer_id The manufacturer ID
- * @param[out] manufacturer_data The manufacturer data (byte array)
- * @param[out] manufacturer_data_len The length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_manufacturer_data(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *manufacturer_id, char **manufacturer_data, int *manufacturer_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Create advertiser to advertise device's existence or respond to LE scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_destroy_advertiser()
- */
-int bt_adapter_le_create_advertiser(bt_advertiser_h *advertiser);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Destroy advertiser.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_create_advertiser()
- */
-int bt_adapter_le_destroy_advertiser(bt_advertiser_h advertiser);
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set the data to be advertised or responded to scan request from LE scanning device.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @remarks In case the data_type is local name or tx power level, you don't need to input data
- * because the data value is written automatically by system.
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] data_type The data type that is included in packet
- * @param[in] data The data to be advertised or be responded to scan request from LE scanning device, no need in case of LOCAL_NAME or TX_POWER_LEVEL
- * @param[in] data_size The size of data to be set.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_le_packet_data_type_e data_type,
- void *data, unsigned int data_size) TIZEN_DEPRECATED_API;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add a service UUID to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit UUID or 128-bit UUID is supported. (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid The string of the service UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_uuid(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add a service solicitation UUID to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit service solicitation UUID or 128-bit service solicitation UUID is supported.
- * (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid The string of the service solicitation UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_solicitation_uuid(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add service data to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit UUID is supported. (e.g. 180F)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid 16-bit UUID of the service
- * @param[in] service_data The service data
- * @param[in] service_data_len The data length of service data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid,
- const char *service_data, int service_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets the external appearance of this device to advertise or scan response data.
- * Please refer to the adopted Bluetooth specification for the the appearance.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] appearance The external appearance of device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_appearance(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, int appearance);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add manufacturer specific data to advertise or scan response data.
- * Please refer to the Bluetooth Assigned Numbers provided by the Bluetooth SIG for a list of existing company identifiers.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] manufacturer_id Manufacturer identifier
- * @param[in] manufacturer_data The manufacturer specific data
- * @param[in] manufacturer_data_len The data length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_manufacturer_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, int manufacturer_id, const char *manufacturer_data, int manufacturer_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the device name should be included in advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] include_name Whether the device name should be included
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_device_name(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bool include_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the transmission power level should be included in advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] include_tx_power Whether the transmission power level should be included
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_tx_power_level(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bool include_tx_power);
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unset the data to be advertised or responded to scan request from LE scanning device.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] data_type The data type to be removed from selected packet
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_add_advertising_data()
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_remove_advertising_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_le_packet_data_type_e data_type) TIZEN_DEPRECATED_API;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Clear all data to be advertised or responded to scan request from LE scanning device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type to be cleared
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_add_advertising_data()
- */
-int bt_adapter_le_clear_advertising_data(bt_advertiser_h advertiser, bt_adapter_le_packet_type_e pkt_type);
-
-/**
- * @deprecated Deprecated since 2.3.1
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Start advertising with passed advertiser and advertising parameters.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details Once Bluetooth advertising is started, nearby Bluetooth LE(Low Energy) supported
- * devices can know this device's existence. And one of them can make a connection request,
- * if it is allowed.
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] adv_params The parameters of advertising \n
- * If NULL is passed, default values which are defined in driver / controller are used.
- * @param[in] cb The callback to report the result of this function
- * @param[in] user_data The user data to be passed when callback is called
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post This function invokes bt_adapter_le_advertising_state_changed_cb().
- *
- * @see bt_adapter_le_stop_advertising()
- * @see bt_adapter_le_advertising_state_changed_cb()
- */
-int bt_adapter_le_start_advertising(bt_advertiser_h advertiser, bt_adapter_le_advertising_params_s *adv_params,
- bt_adapter_le_advertising_state_changed_cb cb, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Stops the advertising.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The advertising must be going on with bt_adapter_le_start_advertising_new().
- * @post This function invokes bt_adapter_le_advertising_state_changed_cb().
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_advertising_state_changed_cb()
- */
-int bt_adapter_le_stop_advertising(bt_advertiser_h advertiser);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Start advertising with passed advertiser and advertising parameters.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details Once Bluetooth advertising is started, nearby Bluetooth LE(Low Energy) supported
- * devices can know this device's existence. And one of them can make a connection request,
- * if it is allowed.
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] cb The callback to report the result of this function
- * @param[in] user_data The user data to be passed when callback is called
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post This function invokes bt_adapter_le_advertising_state_changed_cb().
- *
- * @see bt_adapter_le_stop_advertising()
- * @see bt_adapter_le_advertising_state_changed_cb()
- */
-int bt_adapter_le_start_advertising_new(bt_advertiser_h advertiser, bt_adapter_le_advertising_state_changed_cb cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set advertising mode to control the advertising power and latency.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] mode The mode of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_mode(bt_advertiser_h advertiser, bt_adapter_le_advertising_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the advertising type should be connectable or non-connectable
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] connectable The type of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_connectable(bt_advertiser_h advertiser, bool connectable);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets Bluetooth LE scan mode
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] scan_mode The scan mode
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Parameter is invalid
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_le_set_scan_mode(bt_adapter_le_scan_mode_e scan_mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Creates a bond with a remote Bluetooth device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A bond can be destroyed by bt_device_destroy_bond().\n
- * The bonding request can be cancelled by bt_device_cancel_bonding().
- *
- * @param[in] remote_address The address of the remote Bluetooth device with which the bond should be created
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @post This function invokes bt_device_bond_created_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_bond_created_cb()
- * @see bt_device_cancel_bonding()
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_create_bond(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Cancels the bonding process.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Use this function when the remote Bluetooth device is not responding to the
- * bond request or you wish to cancel the bonding request.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The creating a bond must be in progress by bt_device_create_bond().
- *
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_cancel_bonding(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Destroys the bond, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device to remove bonding
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_device_bond_destroyed_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_device_bond_destroyed_cb()
- * @see bt_device_set_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-int bt_device_destroy_bond(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets an alias for the bonded device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] alias The alias of the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- *
- * @see bt_device_create_bond()
- */
-int bt_device_set_alias(const char *remote_address, const char *alias);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets the authorization of a bonded device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Once a device is authorized, you don't need to receive a confirmation.
- *
- * @param[in] remote_address The address of the remote Bluetooth device to authorize
- * @param[in] authorization_state The Bluetooth authorization state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post bt_device_authorization_changed_cb() will be invoked.
- *
- * @see bt_device_create_bond()
- * @see bt_device_authorization_changed_cb()
- * @see bt_device_set_authorization_changed_cb()
- * @see bt_device_unset_authorization_changed_cb()
- */
-int bt_device_set_authorization(const char *remote_address, bt_device_authorization_e authorization_state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Starts the search for services supported by the specified device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks If creating a bond succeeds, which means bt_device_bond_created_cb() is called with result #BT_ERROR_NONE,
- * then you don't need to run this function.\n
- * The service search takes a couple of seconds to complete normally. \n
- *
- * @param[in] remote_address The address of the remote Bluetooth device whose services need to be checked
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_SERVICE_SEARCH_FAILED Service search failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_device_service_searched_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_service_searched_cb()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_start_service_search(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the connected profiles.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] remote_address The address of the remote device
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_device_connected_profile() will be invoked.
- * @see bt_device_connected_profile()
- */
-int bt_device_foreach_connected_profiles(const char *remote_address, bt_device_connected_profile callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the profile connected status.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] remote_address The address of the remote device
- * @param[in] bt_profile wish to know bt_profile
- * @param[out] connected_status the connected status
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_device_is_profile_connected(const char *remote_address, bt_profile_e bt_profile,
- bool *connected_status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Updates a LE connection mode
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] mode The LE connection mode
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_update_le_connection_mode(const char *remote_address, bt_device_le_connection_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the bond creates.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_bond_created_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_set_bond_created_cb(bt_device_bond_created_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_bond_created_cb()
- */
-int bt_device_unset_bond_created_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the bond destroys.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_bond_destroyed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-int bt_device_set_bond_destroyed_cb(bt_device_bond_destroyed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_bond_destroyed_cb()
- */
-int bt_device_unset_bond_destroyed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the authorization of device changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_authorization_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_authorization_changed_cb()
- * @see bt_device_set_authorization_changed_cb()
- * @see bt_device_unset_authorization_changed_cb()
- */
-int bt_device_set_authorization_changed_cb(bt_device_authorization_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_authorization_changed_cb()
- */
-int bt_device_unset_authorization_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the process of service search finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_service_searched_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_set_service_searched_cb(bt_device_service_searched_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_service_searched_cb()
- */
-int bt_device_unset_service_searched_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-int bt_device_set_connection_state_changed_cb(bt_device_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function to be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_connection_state_changed_cb()
- */
-int bt_device_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Registers a rfcomm server socket with a specific UUID.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A socket can be destroyed by bt_socket_destroy_rfcomm().
- *
- * @param[in] service_uuid The UUID of service to provide
- * @param[out] socket_fd The file descriptor of socket to listen
- * @return 0 on success, otherwise a negative error value.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_socket_listen_and_accept_rfcomm()
- * @see bt_socket_destroy_rfcomm()
- */
-int bt_socket_create_rfcomm(const char *service_uuid, int *socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Removes the rfcomm server socket which was created using bt_socket_create_rfcomm().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called when this function is finished successfully.
- *
- * @param[in] socket_fd The file descriptor of socket (which was created using bt_socket_create_rfcomm()) to destroy
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called.
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_destroy_rfcomm(int socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket and accepts connection requests.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details Pop-up is shown automatically when a RFCOMM connection is requested.
- * bt_socket_connection_state_changed_cb() will be called with
- * #BT_SOCKET_CONNECTED if you click "yes" and connection is finished successfully.
- * @param[in] socket_fd The file descriptor of socket on which start to listen
- * @param[in] max_pending_connections The maximum number of pending connections
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post If callback function bt_socket_connection_state_changed_cb() is set,
- * then bt_socket_connection_state_changed_cb() will be called when the remote Bluetooth device is connected.
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_listen_and_accept_rfcomm(int socket_fd, int max_pending_connections);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Connects to a specific RFCOMM based service on a remote Bluetooth device UUID, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A connection can be disconnected by bt_socket_disconnect_rfcomm().
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] service_uuid The UUID of service provided by the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_socket_connection_state_changed_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_start_service_search()
- * @see bt_socket_disconnect_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_connect_rfcomm(const char *remote_address, const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Disconnects the RFCOMM connection with the given file descriptor of connected socket.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] socket_fd The file descriptor of socket to close which was received using bt_socket_connection_state_changed_cb().
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection must be established.
- *
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_disconnect_rfcomm(int socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Sends data to the connected device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remark The specific error code can be obtained using the get_last_result() method. Error codes are described in Exception section.
- *
- * @param[in] socket_fd The file descriptor of connected socket which was received using bt_socket_connection_state_changed_cb()
- * @param[in] data The data to be sent
- * @param[in] length The length of data to be sent
- *
- * @return the number of bytes written (zero indicates nothing was written).
- * @retval On error, -1 is returned, and errno is set appropriately. See write 2 man page.
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @exception BT_ERROR_PERMISSION_DENIED Permission denied
- * @exception BT_ERROR_AGAIN Resource temporarily unavailable
- *
- * @pre The connection must be established.
- *
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_send_data(int socket_fd, const char *data, int length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when you receive data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_data_received_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_data_received_cb()
- * @see bt_socket_set_data_received_cb()
- * @see bt_socket_unset_data_received_cb()
- */
-int bt_socket_set_data_received_cb(bt_socket_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_data_received_cb()
- * @see bt_socket_set_data_received_cb()
- */
-int bt_socket_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when a RFCOMM connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_connection_requested_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_unset_connection_requested_cb()
- */
-int bt_socket_set_connection_requested_cb(bt_socket_connection_requested_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_set_connection_requested_cb()
- * @see bt_socket_connection_requested_cb()
- */
-int bt_socket_unset_connection_requested_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_set_connection_state_changed_cb(bt_socket_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- */
-int bt_socket_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Initializes the Bluetooth OPP server requested by bt_opp_server_connection_requested_cb().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @details No popup appears when an OPP connection is requested from a remote device.
- * Instead, @a connection_requested_cb() will be called.
- * At that time, you can call either bt_opp_server_accept() or bt_opp_server_reject().
- * @remarks This function must be called to start Bluetooth OPP server. \n
- * You must free all resources of the Bluetooth service by calling bt_opp_server_deinitialize() if Bluetooth OPP service is no longer needed.
- * @param[in] destination The destination path
- * @param[in] connection_requested_cb The callback called when an OPP connection is requested
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_connection_requested_cb()
- * @see bt_opp_server_deinitialize()
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_initialize_by_connection_request(const char *destination, bt_opp_server_connection_requested_cb connection_requested_cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Deinitializes the Bluetooth OPP server.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_deinitialize()
- */
-int bt_opp_server_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Accepts the push request from the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks If you initialize OPP server by bt_opp_server_initialize_by_connection_request(), then name is ignored.
- * You can cancel the pushes by bt_opp_server_cancel_transfer() with transfer_id.
- * @param[in] progress_cb The callback called when a file is being transferred
- * @param[in] finished_cb The callback called when a transfer is finished
- * @param[in] name The name to store. This can be NULL if you initialize OPP server by bt_opp_server_initialize_by_connection_request().
- * @param[in] user_data The user data to be passed to the callback function
- * @param[out] transfer_id The ID of transfer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_accept(bt_opp_server_transfer_progress_cb progress_cb,
- bt_opp_server_transfer_finished_cb finished_cb, const char *name,
- void *user_data, int *transfer_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Rejects the push request from the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_accept()
- */
-int bt_opp_server_reject(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Cancels the transfer.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] transfer_id The ID of transfer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_accept()
- */
-int bt_opp_server_cancel_transfer(int transfer_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Sets the destination path of file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] destination The destination path of file to be pushed
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_opp_server_set_destination(const char *destination);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Initializes the Bluetooth OPP client.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth OPP client starts. \n
- * You must free all resources of the Bluetooth service by calling bt_opp_client_deinitialize()
- * if Bluetooth OPP service is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_deinitialize()
- */
-int bt_opp_client_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Deinitializes the Bluetooth OPP client.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_initialize()
- */
-int bt_opp_client_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Adds file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] file The path of file to be pushed
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_clear_files()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_add_file(const char *file);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Adds file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_add_file()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_clear_files(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Pushes the file to the remote device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details At first, bt_opp_client_push_responded_cb() will be called when OPP server responds to the push request.
- * After connection is established, bt_opp_client_push_progress_cb() will be called repeatedly until a file is transferred completely.
- * If you send several files, then bt_opp_client_push_progress_cb() with another file will be called repeatedly until the file is transferred completely.
- * bt_opp_client_push_finished_cb() will be called when the push request is finished.
- * @param[in] remote_address The remote address
- * @param[in] responded_cb The callback called when OPP server responds to the push request
- * @param[in] progress_cb The callback called when each file is being transferred
- * @param[in] finished_cb The callback called when the push request is finished
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_initialize()
- * @see bt_opp_client_cancel_push
- */
-int bt_opp_client_push_files(const char *remote_address,
- bt_opp_client_push_responded_cb responded_cb,
- bt_opp_client_push_progress_cb progress_cb,
- bt_opp_client_push_finished_cb finished_cb,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Cancels the push request in progress, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre bt_opp_client_push_files() must be called.
- * @post bt_opp_client_push_finished_cb() will be invoked with result #BT_ERROR_CANCELLED,
- * which is a parameter of bt_opp_client_push_files().
- * @see bt_opp_client_initialize()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_cancel_push(void);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Initializes the Bluetooth HID(Human Interface Device) Host.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth HID Host starts. \n
- * You must free all resources of the Bluetooth service by calling bt_hid_host_deinitialize()
- * if Bluetooth HID Host service is no longer needed.
- * @param[in] connection_cb The callback called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_host_deinitialize()
- */
-int bt_hid_host_initialize(bt_hid_host_connection_state_changed_cb connection_cb, void *user_data);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Deinitializes the Bluetooth HID(Human Interface Device) Host.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth HID service must be initialized with bt_hid_host_initialize().
- * @see bt_hid_host_initialize()
- */
-int bt_hid_host_deinitialize(void);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Connects the remote device with the HID(Human Interface Device) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @pre The Bluetooth HID service must be initialized with bt_hid_host_initialize().
- * @post bt_hid_host_connection_state_changed_cb() will be invoked.
- * @see bt_hid_host_disconnect()
- * @see bt_hid_host_connection_state_changed_cb()
- */
-int bt_hid_host_connect(const char *remote_address);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Disconnects the remote device with the HID(Human Interface Device) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_hid_host_connect().
- * @post bt_hid_host_connection_state_changed_cb() will be invoked.
- * @see bt_hid_host_connect()
- * @see bt_hid_host_connection_state_changed_cb()
- */
-int bt_hid_host_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Activates the Bluetooth HID Device role.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to register HID UUID.
- * Only then a remote device is able to identify this one as a HID device.
- *
- * @param[in] callback The callback called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Already activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_deactivate()
- */
-int bt_hid_device_activate(bt_hid_device_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Deactivates the Bluetooth HID Device role.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to deregister the HID UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_deactivate(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Initiates the HID device connection with the Device role, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to Initiate the HID device role connection.
- *
- * @param[in] remote_address The remote device's address.
-
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_ALREADY_DONE Already connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_connect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Disconnects from the HID Host device, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sends the mouse event data to the remote device.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] mouse_data The mouse data to be passed to the remote device.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_mouse_event(const char *remote_address,
- const bt_hid_mouse_data_s *mouse_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sends the keyboard event data to the remote device.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] key_data The key data to be passed to the remote device
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_key_event(const char *remote_address,
- const bt_hid_key_data_s *key_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sets the callback called when the device receives data from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] callback The callback function to be set when data is received.
- * @param[in] user_data The user data to be passed to the callback.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_set_data_received_cb(bt_hid_device_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Unsets the data received callback.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Responds to reports from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] header_type The response header type
- * @param[in] param_type The response parameter type
- * @param[in] data The response data
- * @param[in] data_len The length of the response data
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_reply_to_report(const char *remote_address,
- bt_hid_header_type_e header_type,
- bt_hid_param_type_e param_type,
- const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Initializes the Bluetooth profiles related with audio.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth profiles related with audio starts. \n
- * You must free all resources of the this service by calling bt_audio_deinitialize()
- * if Bluetooth profiles related with audio service is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_audio_deinitialize()
- */
-int bt_audio_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Deinitializes the Bluetooth profiles related with audio.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- */
-int bt_audio_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Connects the remote device with the given audio profile, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details If you input type as #BT_AUDIO_PROFILE_TYPE_ALL and connection request succeeds, then bt_audio_connection_state_changed_cb() will be called twice
- * when #BT_AUDIO_PROFILE_TYPE_HSP_HFP is connected and #BT_AUDIO_PROFILE_TYPE_A2DP is connected.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
-
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_audio_connection_state_changed_cb() will be invoked.
- * @see bt_audio_disconnect()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_connect(const char *remote_address, bt_audio_profile_type_e type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Disconnects the remote device with the given audio profile, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details If you input type as #BT_AUDIO_PROFILE_TYPE_ALL and disconnection request succeeds, then bt_audio_connection_state_changed_cb() will be called twice
- * when #BT_AUDIO_PROFILE_TYPE_HSP_HFP is disconnected and #BT_AUDIO_PROFILE_TYPE_A2DP is disconnected.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_audio_connect().
- * @post bt_audio_connection_state_changed_cb() will be invoked.
- * @see bt_audio_connect()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_disconnect(const char *remote_address, bt_audio_profile_type_e type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_set_connection_state_changed_cb(bt_audio_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- * @see bt_audio_set_connection_state_changed_cb()
- */
-int bt_audio_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Initializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) target service.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @remarks This function must be called before any other AVRCP target functions are called. \n
- * You must free all resources of the this service by calling bt_avrcp_target_deinitialize()
- * if Bluetooth AVRCP service is no longer needed.
- * @param[in] callback The callback function called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_avrcp_target_deinitialize()
- */
-int bt_avrcp_target_initialize(bt_avrcp_target_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Deinitializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) target service.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_target_initialize().
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the equalizer state to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The state of equalizer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_equalizer_state(bt_avrcp_equalizer_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the repeat mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The repeat mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_repeat_mode(bt_avrcp_repeat_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the shuffle mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The repeat mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_shuffle_mode(bt_avrcp_shuffle_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the scan mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The scan mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_scan_mode(bt_avrcp_scan_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the player state to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The player state
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_player_state(bt_avrcp_player_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the current position of song to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] position The current position in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_position(unsigned int position);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the track to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] title The title of track
- * @param[in] artist The artist of track
- * @param[in] album The album of track
- * @param[in] genre The genre of track
- * @param[in] track_num The track number
- * @param[in] total_tracks The number of all tracks
- * @param[in] duration The duration of track in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_track(const char *title, const char *artist, const char *album, const char *genre, unsigned int track_num, unsigned int total_tracks, unsigned int duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the equalizer state is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_equalizer_state_changed_cb()
- */
-int bt_avrcp_set_equalizer_state_changed_cb(bt_avrcp_equalizer_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the equalizer state is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_equalizer_state_changed_cb()
- */
-int bt_avrcp_unset_equalizer_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the repeat mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_repeat_mode_changed_cb()
- */
-int bt_avrcp_set_repeat_mode_changed_cb(bt_avrcp_repeat_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the repeat mode is changed. (e.g., by a TV remote control or other input devi)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_repeat_mode_changed_cb()
- */
-int bt_avrcp_unset_repeat_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the shuffle mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_shuffle_mode_changed_cb()
- */
-int bt_avrcp_set_shuffle_mode_changed_cb(bt_avrcp_shuffle_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the shuffle mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_shuffle_mode_changed_cb()
- */
-int bt_avrcp_unset_shuffle_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the scan mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_scan_mode_changed_cb()
- */
-int bt_avrcp_set_scan_mode_changed_cb(bt_avrcp_scan_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the scan mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_scan_mode_changed_cb()
- */
-int bt_avrcp_unset_scan_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the song position is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_position_changed_cb()
- */
-int bt_avrcp_set_position_changed_cb(bt_avrcp_position_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the song position is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_position_changed_cb()
- */
-int bt_avrcp_unset_position_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the Play status is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-int bt_avrcp_set_play_status_changed_cb(bt_avrcp_play_status_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the Play status is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-int bt_avrcp_unset_play_status_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the track metadata is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_track_info_changed_cb()
- */
-int bt_avrcp_set_track_info_changed_cb(bt_avrcp_track_info_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the track metadata is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_track_info_changed_cb()
- */
-int bt_avrcp_unset_track_info_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Initializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) controller service.
- * @since_tizen 3.0
- * @remarks This function must be called before any other AVRCP controller functions are called. \n
- * You must free all resources of the this service by calling bt_avrcp_control_deinitialize()
- * if Bluetooth AVRCP service is no longer needed.
- * @param[in] callback The callback function called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_avrcp_control_deinitialize()
- */
-int bt_avrcp_control_initialize(bt_avrcp_control_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Deinitializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) controller service.
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- */
-int bt_avrcp_control_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Connects the AVRCP (Audio/Video Remote Control Profile) target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- */
-int bt_avrcp_control_connect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Disconnects from the AVRCP (Audio/Video Remote Control Profile) target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_connect()
- */
-int bt_avrcp_control_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends a command to the target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] cmd The commands, one of: Play, Pause, Next, Rewind.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_connect()
- */
-int bt_avrcp_control_send_player_command(bt_avrcp_player_command_e cmd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the equalizer state change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The new equalizer state, one of: ON, OFF
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_equalizer_state(bt_avrcp_equalizer_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the the equalizer state of the remote device.
- * @since_tizen 3.0
- * @param[out] state The equalizer state, one of: ON, OFF
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_equalizer_state(bt_avrcp_equalizer_state_e *state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the repeat change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new repeat mode, one of: OFF, SINGLE, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_repeat_mode(bt_avrcp_repeat_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the repeat state of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The repeat mode, one of: OFF, SINGLE, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_repeat_mode(bt_avrcp_repeat_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the shuffle mode change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new shuffle mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_shuffle_mode(bt_avrcp_shuffle_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the shuffle mode of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The shuffle mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_shuffle_mode(bt_avrcp_shuffle_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the scan mode change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new scan mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_scan_mode(bt_avrcp_scan_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the scan mode of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The scan mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_scan_mode(bt_avrcp_scan_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the position of the song played by the remote device.
- * @since_tizen 3.0
- * @param[out] position The position, in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_position(unsigned int *position);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the play status of the remote device.
- * @since_tizen 3.0
- * @param[out] status The play status, one of: PLAYING, STOPPED...
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_play_status(bt_avrcp_player_state_e *status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the metadata of the track played by the remote device.
- * @since_tizen 3.0
- * @remarks The @a track must be released using bt_avrcp_control_free_track_info()
- * @param[out] track The track metadata.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_track_info(bt_avrcp_metadata_attributes_info_s **track);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Frees the track metadata.
- * @since_tizen 3.0
- * @param[in] track The track metadata.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre track should point to valid metadata address.
- * @see bt_avrcp_control_get_track_info()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_free_track_info(bt_avrcp_metadata_attributes_info_s *track);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers an application that acts as the @a Sink role of HDP(Health Device Profile).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks The @a app_id must be released with free() by you.
- * @param[in] data_type The data type of MDEP. This value is defined in ISO/IEEE 11073-20601 spec.
- * For example, pulse oximeter is 0x1004 and blood pressure monitor is 0x1007.
- * @param[out] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_hdp_unregister_sink_app()
- */
-int bt_hdp_register_sink_app(unsigned short data_type, char **app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters the given application that acts as the @a Sink role of HDP(Health Device Profile).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hdp_register_sink_app()
- */
-int bt_hdp_unregister_sink_app(const char *app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Connects the remote device which acts as @a Source role, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Sink role of HDP must be registered with bt_hdp_register_sink_app().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_hdp_connected_cb() will be invoked.
- * @see bt_hdp_disconnect()
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_connect_to_source(const char *remote_address, const char *app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Disconnects the remote device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] channel The connected data channel
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @post bt_hdp_disconnected_cb() will be invoked.
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_disconnect(const char *remote_address, unsigned int channel);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Sends the data to the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] channel The connected data channel
- * @param[in] data The data to send
- * @param[in] size The size of data to send (byte)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_hdp_data_received_cb()
- * @see bt_hdp_set_data_received_cb()
- * @see bt_hdp_unset_data_received_cb()
- */
-int bt_hdp_send_data(unsigned int channel, const char *data, unsigned int size);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] connected_cb The callback function called when a connection is established
- * @param[in] disconnected_cb The callback function called when a connection is disconnected
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_set_connection_state_changed_cb(bt_hdp_connected_cb connected_cb, bt_hdp_disconnected_cb disconnected_cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_set_connection_state_changed_cb()
- */
-int bt_hdp_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers a callback function that will be invoked when you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_unset_data_received_cb()
- */
-int bt_hdp_set_data_received_cb(bt_hdp_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters a callback function that will be invoked when you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_set_data_received_cb()
- */
-int bt_hdp_unset_data_received_cb(void);
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_foreach_services or bt_gatt_client_get_service instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the primary services of GATT(Generic Attribute Profile).
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The address of the remote device
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post @a callback will be called if there are primary services.
- * @see bt_gatt_primary_service_cb()
- */
-int bt_gatt_foreach_primary_services(const char *remote_address, bt_gatt_primary_service_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. This function call is not required because characteristic discovery is happened automatically.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Discovers the characteristics in service, asynchronously.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] service The attribute handle of service
- * @param[in] callback The result callback
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post @a callback will be called.
- * @see bt_gatt_characteristics_discovered_cb()
- */
-int bt_gatt_discover_characteristics(bt_gatt_attribute_h service, bt_gatt_characteristics_discovered_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_get_uuid instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the UUID of service.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks @a uuid must be released with free() by you.
- * @param[in] service The attribute handle of service
- * @param[out] uuid The UUID of service
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_gatt_get_service_uuid(bt_gatt_attribute_h service, char **uuid) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_service_foreach_included_services or bt_gatt_service_get_included_service instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the included services in service.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] service The attribute handle of service
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post @a callback will be called if there are included services.
- * @see bt_gatt_included_service_cb()
- */
-int bt_gatt_foreach_included_services(bt_gatt_attribute_h service, bt_gatt_included_service_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_set_characteristic_value_changed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function that will be invoked when a characteristic value is changed.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_gatt_unset_characteristic_changed_cb()
- */
-int bt_gatt_set_characteristic_changed_cb(bt_gatt_characteristic_changed_cb callback, void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_unset_characteristic_value_changed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function that will be invoked when a characteristic is changed.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_gatt_set_characteristic_changed_cb()
- */
-int bt_gatt_unset_characteristic_changed_cb(void) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_set_characteristic_value_changed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Watches all the characteristic value changes of the service.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] service The attribute handle of service
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_gatt_unset_characteristic_changed_cb()
- */
-int bt_gatt_watch_characteristic_changes(bt_gatt_attribute_h service) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_client_unset_characteristic_value_changed_cb instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Remove watching of all the characteristic value changes of the service.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] service The attribute handle of service
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_gatt_set_characteristic_changed_cb()
- */
-int bt_gatt_unwatch_characteristic_changes(bt_gatt_attribute_h service) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_get_value or bt_gatt_get_uuid after bt_gatt_client_read_value instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the characteristic declaration.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks @a uuid and @a value must be released with free() by you.
- * @param[in] characteristic The attribute handle of characteristic
- * @param[out] uuid The UUID of service
- * @param[out] value The value of characteristic (byte array)
- * @param[out] value_length The length of value
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_set_characteristic_value()
- */
-int bt_gatt_get_characteristic_declaration(bt_gatt_attribute_h characteristic, char **uuid, unsigned char **value, int *value_length) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_set_value and bt_gatt_client_write_value instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Sets the value of characteristic.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] characteristic The attribute handle of characteristic
- * @param[in] value The value of characteristic (byte array)
- * @param[in] value_length The length of value
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_get_characteristic_declaration()
- */
-int bt_gatt_set_characteristic_value(bt_gatt_attribute_h characteristic, const unsigned char *value, int value_length) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use bt_gatt_set_value and bt_gatt_client_write_value instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Sets the value of characteristic request.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] characteristic The attribute handle of characteristic
- * @param[in] value The value of characteristic (byte array)
- * @param[in] value_length The length of value
- * @param[in] callback The result callback
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_get_characteristic_declaration()
- */
-int bt_gatt_set_characteristic_value_request(bt_gatt_attribute_h characteristic, const unsigned char *value,
- int value_length, bt_gatt_characteristic_write_cb callback) TIZEN_DEPRECATED_API;
-
-/**
-* @deprecated Deprecated since 2.3.1. GATT handle clone is not allowed. Instead, all handles for client role must be got from GATT client handle.
-* @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
-* @brief Clones the attribute handle.
-* @since_tizen @if WEARABLE @else 2.3 @endif
-* @remarks @a clone must be released with bt_gatt_destroy_attribute_handle().
-* @param[out] clone The cloned attribute handle
-* @param[in] origin The origin attribute handle
-* @return 0 on success, otherwise negative error value.
-* @retval #BT_ERROR_NONE Successful
-* @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
-* @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
-* @retval #BT_ERROR_NOT_SUPPORTED Not supported
-*
-* @see bt_gatt_destroy_attribute_handle()
-*/
-int bt_gatt_clone_attribute_handle(bt_gatt_attribute_h *clone,
- bt_gatt_attribute_h origin) TIZEN_DEPRECATED_API;
-
-/**
-* @deprecated Deprecated since 2.3.1. GATT handle clone and destroy are not allowed.
-* @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
-* @brief Destroys the attribute handle.
-* @since_tizen @if WEARABLE @else 2.3 @endif
-* @param[in] handle The attribute handle
-* @return 0 on success, otherwise negative error value.
-* @retval #BT_ERROR_NONE Successful
-* @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
-* @retval #BT_ERROR_NOT_SUPPORTED Not supported
-*
-* @see bt_gatt_clone_attribute_handle()
-*/
-int bt_gatt_destroy_attribute_handle(bt_gatt_attribute_h handle) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. Use gatt_client_read_value instead.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Reads the value of characteristic from remote device.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] char_handle The attribute handle of characteristic
- * @param[in] callback The result callback
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_get_characteristic_declaration()
- */
-int bt_gatt_read_characteristic_value(bt_gatt_attribute_h char_handle,
- bt_gatt_characteristic_read_cb callback) TIZEN_DEPRECATED_API;
-
-/**
- * @deprecated Deprecated since 2.3.1. This function call is not required because descriptor discovery is happened automatically.
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Discovers the characteristic descriptors of a characteristic within its definition, asynchronously.
- * @since_tizen @if WEARABLE @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] characteristic_handle The attribute handle of characteristic
- * @param[in] callback The result callback
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post @a callback will be called.
- * @see bt_gatt_characteristic_descriptor_discovered_cb()
- */
-int bt_gatt_discover_characteristic_descriptor(bt_gatt_attribute_h characteristic_handle,
- bt_gatt_characteristic_descriptor_discovered_cb callback,
- void *user_data) TIZEN_DEPRECATED_API;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks @a value must be released using free(). \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[out] value The value of @a gatt_handle. It is a byte stream type.
- * @param[out] value_length The length of @a value
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_value(bt_gatt_h gatt_handle, char **value, int *value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle as an integer type.
- * @since_tizen 2.3.1
- *
- * @remarks This function returns a locally saved value in @a gatt_handle. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type The type of a saved value in @a gatt_handle
- * @param[in] offset The offset from where a value will be read from @a gatt_handle as an integer type
- * @param[out] value The integer type's value of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_int_value(bt_gatt_h gatt_handle, bt_data_type_int_e type,
- int offset, int *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle as a float type.
- * @since_tizen 2.3.1
- *
- * @remarks This function returns a locally saved value in @a gatt_handle. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type The type of a saved value in @a gatt_handle
- * @param[in] offset The offset from where a value will be read from @a gatt_handle as an integer type
- * @param[out] value The float type's value of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_float_value(bt_gatt_h gatt_handle, bt_data_type_float_e type,
- int offset, float *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] value The value to be updated
- * @param[in] value_length The length of @a value
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_value(bt_gatt_h gatt_handle, const char *value, int value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle using a integer type's value.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type @a value will be saved in @a gatt_handle as this type
- * @param[in] value The integer type's value to be updated
- * @param[in] offset The offset from where @a value will be saved in @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_int_value(bt_gatt_h gatt_handle, bt_data_type_int_e type,
- int value, int offset);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle using a float type's value.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type @a mantissa and @a exponent will be saved in @a gatt_handle as this type
- * @param[in] mantissa The mantissa of float type's value to be updated
- * @param[in] exponent The exponent of float type's value to be updated
- * @param[in] offset The offset from where @a mantissa and @a exponent will be saved in @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_float_value(bt_gatt_h gatt_handle, bt_data_type_float_e type,
- int mantissa, int exponent, int offset);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the UUID of a service, characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks @a uuid must be released using free(). \n
- * 16-bit UUID or 128-bit UUID is supported. (e.g. 2A19, 00002A19-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] gatt_handle The handle of a service, characteristic or descriptor
- * @param[out] uuid The string of the UUID of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_uuid(bt_gatt_h gatt_handle, char **uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the type of GATT handle.
- * @since_tizen 2.3.1
- *
- * @param[in] gatt_handle The GATT handle
- * @param[out] gatt_type The type of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_type(bt_gatt_h gatt_handle, bt_gatt_type_e *gatt_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the GATT client handle which the specified service belongs to.
- * @since_tizen 2.3.1
- *
- * @remark This function doesn't allocate new memory for GATT client handle.
- * The returned GATT client handle is the same one which was got from bt_gatt_client_create().
- * So if it is destroyed by bt_gatt_client_destroy(), all related GATT handles are freed also.
- *
- * @param[in] service The service's GATT handle
- * @param[out] client The GATT client handle which @a service belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_service_get_client(bt_gatt_h service, bt_gatt_client_h *client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a characteristic's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple characteristics which have same UUID, only the first matched one will be returned.
- *
- * @param[in] service The service's GATT handle
- * @param[in] uuid The characteristic's GATT handle which has this UUID will be returned if it exists
- * @param[out] characteristic The characteristic's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_service_get_characteristic(bt_gatt_h service, const char *uuid,
- bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each characteristic that belongs to the specified service.
- * @since_tizen 2.3.1
- *
- * @param[in] service The service's GATT handle
- * @param[in] callback The function to be invoked on each characteristic
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_service_foreach_characteristics(bt_gatt_h service,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets an included service's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple included services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] service The service's GATT handle
- * @param[in] uuid The included service's GATT handle which has this UUID will be returned if it exists
- * @param[out] included_service The included service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_service_get_included_service(bt_gatt_h service, const char *uuid,
- bt_gatt_h *included_service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each included service that belongs to the specified service.
- * @since_tizen 2.3.1
- *
- * @param[in] service The service's GATT handle
- * @param[in] callback The function to be invoked on each included service
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_service_foreach_included_services(bt_gatt_h service,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the service's GATT handle which the specified characteristic belongs to.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] service The service's GATT handle which @a characteristic belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_characteristic_get_service(bt_gatt_h characteristic, bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the properties which a characteristic's GATT handle has.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] properties The properties which a characteristic's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_property_e
- */
-int bt_gatt_characteristic_get_properties(bt_gatt_h characteristic, int *properties);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the write type of the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] write_type The write type of the specified characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_write_type_e
- */
-int bt_gatt_characteristic_get_write_type(bt_gatt_h characteristic,
- bt_gatt_write_type_e *write_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the write type of the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] write_type The write type to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_write_value()
- * @see bt_gatt_write_type_e
- */
-int bt_gatt_characteristic_set_write_type(bt_gatt_h characteristic,
- bt_gatt_write_type_e write_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a descriptor's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple descriptors which have same UUID, only the first matched one will be returned.
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] uuid The descriptor's GATT handle which has this UUID will be returned if it exists
- * @param[out] descriptor The descriptor's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_characteristic_get_descriptor(bt_gatt_h characteristic, const char *uuid,
- bt_gatt_h *descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each descriptor that belongs to the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] callback The function to be invoked on each descriptor
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_characteristic_foreach_descriptors(bt_gatt_h characteristic,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the characteristic's GATT handle which the specified descriptor belongs to.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- *
- * @param[in] descriptor The descriptor's GATT handle
- * @param[out] characteristic The characteristic's GATT handle which @a descriptor belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_descriptor_get_characteristic(bt_gatt_h descriptor, bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Creates the GATT client handle.
- * @since_tizen 2.3.1
- *
- * @remark The GATT client handle must be freed by bt_gatt_client_destroy() after use
- *
- * @param[in] remote_address The address of the remote device
- * @param[out] client The created GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_destroy()
- */
-int bt_gatt_client_create(const char *remote_address, bt_gatt_client_h *client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Destroys the GATT client's handle.
- * @since_tizen 2.3.1
- *
- * @remark All related service, characteristic and descriptor's GATT handles are freed also
- *
- * @param[in] client The GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_client_destroy(bt_gatt_client_h client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the address of remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] client The created GATT client's handle
- * @param[out] remote_address The address of the remote device which is associated with @a client
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_client_get_remote_address(bt_gatt_client_h client,
- char **remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Reads the value of a characteristic or descriptor from the remote device asynchronously.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback When a read request is completed, this callback function will be called
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- * @see bt_gatt_client_request_completed_cb()
- */
-int bt_gatt_client_read_value(bt_gatt_h gatt_handle,
- bt_gatt_client_request_completed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Writes the value of a characteristic or descriptor to the remote device asynchronously.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback When a write request is completed, this callback function will be called
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- * @see bt_gatt_characteristic_set_write_type()
- * @see bt_gatt_set_value()
- * @see bt_gatt_set_int_value()
- * @see bt_gatt_set_float_value()
- * @see bt_gatt_client_request_completed_cb()
- */
-int bt_gatt_client_write_value(bt_gatt_h gatt_handle,
- bt_gatt_client_request_completed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function to be invoked when the characteristic value is changed on the remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] callback The callback to be invoked when the value is changed and it is informed
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_characteristic_value_changed_cb()
- * @see bt_gatt_client_unset_characteristic_value_change()
- */
-int bt_gatt_client_set_characteristic_value_changed_cb(bt_gatt_h characteristic,
- bt_gatt_client_characteristic_value_changed_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function to be invoked when the characteristic value is changed on the remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle, whose value change will not be informed
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-int bt_gatt_client_unset_characteristic_value_changed_cb(bt_gatt_h characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a service's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] client The GATT client's handle
- * @param[in] uuid The service's GATT handle which has this UUID will be returned if it exists
- * @param[out] service The service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_client_get_service(bt_gatt_client_h client, const char *uuid,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each service that belongs to the specified GATT client.
- * @since_tizen 2.3.1
- *
- * @param[in] client The GATT client's handle
- * @param[in] callback The function to be invoked on each service
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_client_foreach_services(bt_gatt_client_h client,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function to be invoked when service is changed from a remote device(GATT server).
- * @since_tizen 3.0
- *
- * @param[in] client The GATT client's handle
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_unset_service_changed_cb()
- */
-int bt_gatt_client_set_service_changed_cb(bt_gatt_client_h client,
- bt_gatt_client_service_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function
- * @since_tizen 3.0
- *
- * @param[in] client The GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_set_service_changed_cb()
- */
-int bt_gatt_client_unset_service_changed_cb(bt_gatt_client_h client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Connect to a specific LE based service on a remote bluetooth device address, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A connection can be disconnected by bt_gatt_disconnect().
- *
- * @param[in] address The address of the remote Bluetooth device.
- * @param[in] auto_connect The flag of the auto connection.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @pre The remote device must support le connection.
- * @post This function invokes bt_gatt_connection_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_connect(const char *address, bool auto_connect);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Disconnect to LE connection with the given remote Bluetooth device address, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The address of the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection must be established.
- * @post This function invokes bt_gatt_connection_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_gatt_connect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_disconnect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register.
- * @param[in] user_data The user data to be passed to the callback function.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_unset_connection_state_changed_cb()
- */
-int bt_gatt_set_connection_state_changed_cb(bt_gatt_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of service.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- */
-int bt_gatt_service_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of characteristic.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- */
-int bt_gatt_characteristic_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of descriptor.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_descriptor_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the permissions which a characteristic's GATT handle has.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- *
- * @param[in] gatt_handle The handle of a characteristic
- * @param[out] permissions The permissions which a characteristic's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_characteristic_get_permissions(bt_gatt_h gatt_handle, int *permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the permissions which a descriptor's GATT handle has.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- *
- * @param[in] gatt_handle The handle of a descriptor
- * @param[out] permissions The permissions which a descriptor's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_descriptor_get_permissions(bt_gatt_h gatt_handle, int *permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT service.
- * @since_tizen 3.0
- *
- * @remarks The @a service should be destroyed by using bt_gatt_service_destroy()
- *
- * @param[in] uuid The UUID of the service
- * @param[in] type The type of the service
- * @param[out] service The GATT handle of the created service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_destroy()
- */
-int bt_gatt_service_create(const char *uuid, bt_gatt_service_type_e type,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a characteristic to a specified service.
- * @since_tizen 3.0
- *
- * @param[in] service The service's GATT handle
- * @param[in] characteristic The characteristic's GATT handle to be added
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- * @see bt_gatt_characteristic_create()
- */
-int bt_gatt_service_add_characteristic(bt_gatt_h service,
- bt_gatt_h characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a service to a specified service as included service.
- * @since_tizen 3.0
- *
- * @param[in] service The service's GATT handle
- * @param[in] included_service The service's GATT handle to be added as included service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- */
-int bt_gatt_service_add_included_service(bt_gatt_h service,
- bt_gatt_h included_service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the GATT server handle to which the specified service belongs.
- * @since_tizen 3.0
- *
- * @remarks The returned Server handle must not be freed by application.
- *
- * @param[in] service The service's GATT handle
- * @param[out] server The GATT server handle to which @a service belongs
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_service_get_server(bt_gatt_h service, bt_gatt_server_h *server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT characteristic.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- * @remarks The @a properties can be one or more values of #bt_gatt_property_e, combined with bitwise 'or'.
- * @remarks The @a characteristic should be destroyed by using bt_gatt_characteristic_destroy().
- *
- * @param[in] uuid The UUID of the characteristic
- * @param[in] permissions the permissions of the characteristic
- * @param[in] properties The properties of the characteristic
- * @param[in] value The value(byte stream) of the characteristic
- * @param[in] value_length The length of @a value
- * @param[out] characteristic The GATT handle of the created characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_destroy()
- */
-int bt_gatt_characteristic_create(const char *uuid, int permissions,
- int properties, const char *value, int value_length,
- bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a descriptor to a specified characteristic.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The GATT handle of the characteristic
- * @param[in] descriptor The descriptor's GATT handle to be added
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_characteristic_add_descriptor(bt_gatt_h characteristic,
- bt_gatt_h descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT characteristic descriptor.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- * @remarks The @a descriptor should be destroyed by using bt_gatt_descriptor_destroy().
- *
- * @param[in] uuid The UUID of the descriptor
- * @param[in] permissions The permissions of the descriptor
- * @param[in] value The value(byte stream) associated with the descriptor
- * @param[in] value_length The length of @a value
- * @param[out] descriptor The GATT handle of the created characteristic descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_destroy()
- */
-int bt_gatt_descriptor_create(const char *uuid, int permissions,
- const char *value, int value_length,
- bt_gatt_h *descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Initializes the GATT Server.
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_server_deinitialize()
- */
-int bt_gatt_server_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief DeInitializes the GATT server.
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_server_initialize()
- */
-int bt_gatt_server_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT server's handle.
- * @since_tizen 3.0
- *
- * @remarks The @a server handle should be destroyed by using bt_gatt_server_destroy()
- *
- * @param[out] server The GATT server's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_destroy()
- */
-int bt_gatt_server_create(bt_gatt_server_h *server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT server's handle.
- * @since_tizen 3.0
- *
- * @remarks All registered services to GATT server are unregistered
- *
- * @param[in] server The GATT server's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- */
-int bt_gatt_server_destroy(bt_gatt_server_h server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when a read request for a specified characteristic or descriptor is issued from a remote device(GATT client).
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_read_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-int bt_gatt_server_set_read_value_requested_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_read_value_requested_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when the remote device enables or disables the Notification/Indication for particular characteristics.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_characteristic_notification_state_changed_cb()
- */
-int bt_gatt_server_set_characteristic_notification_state_change_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_characteristic_notification_state_changed_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when a value of a characteristic or descriptor has been changed by a remote device(GATT client)'s request.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_write_value_requested_cb()
- */
-int bt_gatt_server_set_write_value_requested_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_write_value_requested_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a specified service to the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @param[in] service The service, which needs to be registered in @a server
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_start()
- * @see bt_gatt_server_unregister_service()
- */
-int bt_gatt_server_register_service(bt_gatt_server_h server, bt_gatt_h service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Unregisters a specified service from the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @param[in] service The service, which needs to be unregistered from @a server
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_SERVICE_NOT_FOUND Service not found
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_server_unregister_service(bt_gatt_server_h server, bt_gatt_h service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Unregisters all services from the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_server_unregister_all_services(bt_gatt_server_h server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers the application along with the GATT services of the application it is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_initialize()
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_unregister_service()
- */
-int bt_gatt_server_start(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Sends a response to the remote device as a result of a read/write request.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Until this function is called, a read/write request is not finished.
- *
- * @param[in] request_id The identification of a read/write request
- * @param[in] request_type The request type for read/write
- * @param[in] offset The offset from where a value is read
- * @param[in] resp_status The application error if any occurred or BT_ERROR_NONE for successful.
- * @param[in] value The value to be sent. It will be sent from @a offset. If it is NULL, a requested GATT handle's value will be sent from @a offset.
- * @param[in] value_length Value Length
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_read_value_requested_cb()
- */
-int bt_gatt_server_send_response(int request_id, bt_gatt_att_request_type_e request_type,
- int offset, int resp_status, char *value, int value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Notifies value change of the characteristic to the remote devices which enable a Client Characteristic Configuration Descriptor.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The characteristic which has a changed value
- * @param[in] callback The function to be invoked on each remote device when a sending operation is done
- * @param[in] device_address Remote device address to send notify or indicate and if set to NULL then notify/indicate all is enabled.
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_notification_sent_cb()
- */
-int bt_gatt_server_notify_characteristic_changed_value(bt_gatt_h characteristic,
- bt_gatt_server_notification_sent_cb callback,
- const char *device_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets a service's GATT handle which has specific UUID.
- * @since_tizen 3.0
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated server is destroyed by bt_gatt_server_destroy().
- * If there are multiple services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] server The GATT server's handle
- * @param[in] uuid The service's GATT handle which has this UUID will be returned if it exists
- * @param[out] service The service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_server_get_service(bt_gatt_server_h server, const char *uuid,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Invokes @a callback function on each service that belongs to the specified GATT server.
- * @since_tizen 3.0
- *
- * @param[in] server The GATT server's handle
- * @param[in] callback The function to be invoked on each service
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_server_foreach_services(bt_gatt_server_h server,
- bt_gatt_foreach_cb callback, void *user_data);
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Initializes the Bluetooth PBAP Client.
- * @details This initialization is necessary to call other PBAP client APIs.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @remarks This function must be called to initialize Bluetooth PBAP client. You must free all resources of the Bluetooth service
- * by calling bt_pbap_client_deinitialize() if Bluetooth PBAP Client is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_pbap_client_deinitialize()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_pull_vcard()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Deinitializes the Bluetooth PBAP Client.
- * @details This deinitialization must be done to free resources when the PBAP client is not longer needed.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_deinitialize()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_pull_vcard()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_initialize()
- */
-int bt_pbap_client_set_connection_state_changed_cb(bt_pbap_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_initialize()
- */
-int bt_pbap_client_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Connects to PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_pbap_connection_state_changed_cb() will be invoked.
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_set_connection_state_changed_cb()
- */
-int bt_pbap_client_connect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Disconnects from PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- * @post bt_pbap_connection_state_changed_cb() will be invoked.
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_set_connection_state_changed_cb()
- */
-int bt_pbap_client_disconnect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets size of phone book from PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of the phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] callback The callback function called when PBAP phone book size is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book size callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_phone_book_size(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_phone_book_size_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets all contacts and call logs as vCard from PBAP server, asynchronously.
- * @details The received phone book file will be saved in the platform downloads folder.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- * http://tizen.org/privilege/mediastorage
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] format The vCard format
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset The number of vCards to be excluded, counting from the beginning
- * @param[in] max_list_count The maximum number of vCards to be fetched
- * @param[in] fields vCard fields to be fetched; one or more #bt_pbap_field_e values combined with bitwise 'or'
- * @param[in] callback The callback function called when PBAP phone book is Pulled.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_phone_book(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_vcard_format_e format,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- unsigned int fields,
- bt_pbap_phone_book_received_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets contact and call log information from the PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset vCards to be excluded from beginning.
- * @param[in] max_list_count Maximum number of vCards to be fetched
- * @param[in] callback The callback function called when PBAP List is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_list(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- bt_pbap_list_vcards_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets the selected contact using the index parameter as vCard from PBAP server, asynchronously.
- * @details The received phone book file will be saved in the platform downloads folder.
- * The @a index value should be equal to the value of the @a index field in the #bt_pbap_vcard_info_s structure,
- * which can be obtained with bt_pbap_client_get_list() or bt_pbap_client_search_phone_book().
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- * http://tizen.org/privilege/mediastorage
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] index The handle index of vCard to be fetched
- * @param[in] format Format of vCard
- * @param[in] fields vCard fields to be fetched; one or more #bt_pbap_field_e values combined with bitwise 'or'
- * @param[in] callback The callback function called when PBAP phone book is Pulled.
- * @param[in] user_data Data to be passed to the PBAP phone book Pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- * @pre The vCard information (#bt_pbap_vcard_info_s) must be obtained with bt_pbap_client_get_list() or bt_pbap_client_search_phone_book().
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_pull_vcard(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- int index,
- bt_pbap_vcard_format_e format,
- unsigned int fields,
- bt_pbap_phone_book_received_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Finds and fetches the contact and call log information from the PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] search_attribute field to be search
- * @param[in] search_value pattern to be searched for
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset vCards to be excluded from beginning.
- * @param[in] max_list_count Maximum number of vCards to be fetched
- * @param[in] callback The callback function called when PBAP List is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_search_phone_book(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_search_field_e search_attribute,
- const char *search_value,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- bt_pbap_list_vcards_cb callback,
- void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_H__ */
diff --git a/include/tv/bluetooth_extension.h b/include/tv/bluetooth_extension.h
deleted file mode 100644
index 64c76c8..0000000
--- a/include/tv/bluetooth_extension.h
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__
-#define __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__
-
-#include "bluetooth_type.h"
-#include "bluetooth_type_extension.h"
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_extension.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Opens a SCO(Synchronous Connection Oriented link) to connected remote device, asynchronously.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @post bt_ag_sco_state_changed_cb() will be invoked.
- * @see bt_ag_close_sco()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_audio_connect()
- */
-int bt_ag_open_sco(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Closes an opened SCO(Synchronous Connection Oriented link), asynchronously.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The SCO must be opened with bt_ag_open_sco().
- * @post bt_ag_sco_state_changed_cb() will be invoked.
- * @see bt_ag_open_sco()
- * @see bt_ag_sco_state_changed_cb()
- */
-int bt_ag_close_sco(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether an opened SCO(Synchronous Connection Oriented link) exists or not.
- * @since_tizen 2.3
- * @param[out] opened The SCO status: (@c true = opened, @c false = not opened)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-int bt_ag_is_sco_opened(bool *opened);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen 2.3
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- */
-int bt_ag_set_sco_state_changed_cb(bt_ag_sco_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_set_sco_state_changed_cb()
- */
-int bt_ag_unset_sco_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_voice_recognition_state(bool state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the speaker gain to the remote device.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details This function sends a signal to the remote device. This signal has the gain value.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * When the speaker gain of remote device is changed to the requested gain, bt_audio_speaker_gain_changed_cb() will be called.
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_ag_get_speaker_gain()
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_notify_speaker_gain(int gain);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Gets the current speaker gain of the remote device.
- * @since_tizen 2.3
- * @details This function gets the value of speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[out] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_ag_notify_speaker_gain()
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_get_speaker_gain(int *gain);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen 2.3
- * @details This function let you know the change of the speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_set_speaker_gain_changed_cb(bt_ag_speaker_gain_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_set_speaker_gain_changed_cb()
- */
-int bt_ag_unset_speaker_gain_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the microphone gain of the remote device is changed.
- * @since_tizen 2.3
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_unset_microphone_gain_changed_cb()
- */
-int bt_ag_set_microphone_gain_changed_cb(bt_ag_microphone_gain_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the microphone gain of the remote device is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_set_microphone_gain_changed_cb()
- */
-int bt_ag_unset_microphone_gain_changed_cb(void);
-
-/**
- * @}
- */
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__ */
-
diff --git a/include/tv/bluetooth_type_extension.h b/include/tv/bluetooth_type_extension.h
deleted file mode 100644
index 3bb2434..0000000
--- a/include/tv/bluetooth_type_extension.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type_extension.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the SCO state is changed.
- * When you call bt_ag_open_sco() or bt_ag_close_sco(), this callback is also called with error result even though these functions failed.
- * @param[in] result The result of changing the connection state
- * @param[in] opened The state to be changed: (@c true = opened, @c false = not opened)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-typedef void (*bt_ag_sco_state_changed_cb) (int result, bool opened, void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__ */
diff --git a/include/tv/bluetooth_type_internal.h b/include/tv/bluetooth_type_internal.h
deleted file mode 100644
index c46b056..0000000
--- a/include/tv/bluetooth_type_internal.h
+++ /dev/null
@@ -1,737 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type_internal.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth adapter le state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_DISABLED = 0x00, /**< Bluetooth le is disabled */
- BT_ADAPTER_LE_ENABLED, /**< Bluetooth le is enabled */
-} bt_adapter_le_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the Bluetooth adapter le state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the adapter state changing
- * @param[in] adapter_le_state The adapter le state to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_adapter_le_enable() or bt_adapter_le_disable() will invoke this callback if you register this callback using bt_adapter_le_set_state_changed_cb().
- * @see bt_adapter_le_enable()
- * @see bt_adapter_le_disable()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- */
-typedef void (*bt_adapter_le_state_changed_cb)(int result, bt_adapter_le_state_e adapter_le_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_EVENT_IDLE = 0x00, /**< Idle */
- BT_AG_CALL_EVENT_ANSWERED, /**< Answered */
- BT_AG_CALL_EVENT_HELD, /**< Held */
- BT_AG_CALL_EVENT_RETRIEVED, /**< Retrieved */
- BT_AG_CALL_EVENT_DIALING, /**< Dialing */
- BT_AG_CALL_EVENT_ALERTING, /**< Alerting */
- BT_AG_CALL_EVENT_INCOMING, /**< Incoming */
-} bt_ag_call_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_STATE_IDLE = 0x00, /**< Idle state */
- BT_AG_CALL_STATE_ACTIVE, /**< Active state */
- BT_AG_CALL_STATE_HELD, /**< Held state */
- BT_AG_CALL_STATE_DIALING, /**< Dialing state */
- BT_AG_CALL_STATE_ALERTING, /**< Alerting state */
- BT_AG_CALL_STATE_INCOMING, /**< Incoming state */
- BT_AG_CALL_STATE_WAITING, /**< Waiting for connected indication event after answering an incoming call*/
-} bt_ag_call_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_MODULE
- * @brief Enumerations for the transfer type
- * @since_tizen 3.0
- */
-typedef enum {
- BT_TRANSFER_INBOUND, /**< Inbound Transfer Type */
- BT_TRANSFER_OUTBOUND, /**< Outbound Transfer Type */
-} bt_opp_transfer_type_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the connectable state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the connectable state changing
- * @param[in] connectable The connectable to be changed
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre This function will be invoked when the connectable state of local Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_connectable_changed_cb().
- *
- * @see bt_adapter_set_connectable()
- * @see bt_adapter_set_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-typedef void (*bt_adapter_connectable_changed_cb)
- (int result, bool connectable, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when the push is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details You must call bt_opp_server_accept() if you want to accept.
- * Otherwise, you must call bt_opp_server_reject().
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_initialize()
- */
-typedef void (*bt_opp_server_push_requested_cb)(const char *file, int size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth adapter le scan type.
- * @since_tizen 2.3
- */
-typedef enum {
- BT_ADAPTER_LE_PASSIVE_SCAN = 0x00,
- BT_ADAPTER_LE_ACTIVE_SCAN
-} bt_adapter_le_scan_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the call handling event
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_CALL_HANDLING_EVENT_ANSWER = 0x00, /**< Request to answer an incoming call */
- BT_HF_CALL_HANDLING_EVENT_RELEASE, /**< Request to release a call */
- BT_HF_CALL_HANDLING_EVENT_REJECT, /**< Request to reject an incoming call */
- BT_HF_CALL_HANDLING_EVENT_RING, /**< Request of ringing call */
- BT_HF_CALL_HANDLING_EVENT_CALL_STARTED, /**< Request of Call started */
- BT_HF_CALL_HANDLING_EVENT_CALL_ENDED, /**< Request of Call Ended */
- BT_HF_CALL_HANDLING_EVENT_VOICE_RECOGNITION_ENABLED, /**< Request of voice recognition enabled */
- BT_HF_CALL_HANDLING_EVENT_VOICE_RECOGNITION_DISABLED, /**< Request of voice recognition disabled */
- BT_HF_CALL_HANDLING_EVENT_VENDOR_DEP_CMD, /**< Request of Vendor command */
- BT_HF_CALL_HANDLING_EVENT_WAITING, /**< Request to waiting a call */
- BT_HF_CALL_HANDLING_EVENT_HELD, /**< Request to hold a call */
- BT_HF_CALL_HANDLING_EVENT_UNHELD, /**< Request to unhold calls */
- BT_HF_CALL_HANDLING_EVENT_SWAPPED, /**< Request to swap calls */
-} bt_hf_call_handling_event_e;
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the multi call handling event
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_MULTI_CALL_HANDLING_EVENT_RELEASE_HELD_CALLS = 0x00, /**< Request to release held calls */
- BT_HF_MULTI_CALL_HANDLING_EVENT_RELEASE_ACTIVE_CALLS, /**< Request to release active calls */
- BT_HF_MULTI_CALL_HANDLING_EVENT_ACTIVATE_HELD_CALL, /**< Request to put active calls into hold state and activate another (held or waiting) call */
- BT_HF_MULTI_CALL_HANDLING_EVENT_MERGE_CALLS, /**< Request to add a held call to the conversation */
- BT_HF_MULTI_CALL_HANDLING_EVENT_EXPLICIT_CALL_TRANSFER, /**< Request to let a user who has two calls to connect these two calls together and release its connections to both other parties */
-} bt_hf_multi_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Enumerations for the call state
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef enum {
- BT_HF_CALL_EVENT_IDLE = 0x00, /**< Idle */
- BT_HF_CALL_EVENT_ANSWER, /**< Answered */
- BT_HF_CALL_EVENT_HOLD, /**< Held */
- BT_HF_CALL_EVENT_RETRIEVE, /**< Retrieved */
- BT_HF_CALL_EVENT_DIAL, /**< Dialing */
- BT_HF_CALL_EVENT_ALERT, /**< Alerting */
- BT_HF_CALL_EVENT_INCOMING, /**< Incoming */
- BT_HF_CALL_EVENT_REDIAL, /**< Redialling */
- BT_HF_CALL_EVENT_RELEASE_ALL_NONACTIVE_CALLS, /**< Release all nonactive calls */
- BT_HF_CALL_EVENT_ACCEPT_AND_RELEASE, /**< Accept and Release */
- BT_HF_CALL_EVENT_ACCEPT_AND_HOLD, /**< Accept and Hold */
- BT_HF_CALL_EVENT_ADD_TO_CONVERSATION, /**< Add to the conversation */
-} bt_hf_call_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief HF Call status information.
- * @since_tizen @if WEARABLE 2.3 @endif
- */
-typedef struct {
- char *number; /**< Phone Number */
- int direction; /**< Direction :Incoming(1), Outgoing(0) */
- int status; /**< Call Status :Active(0), Held(1), Waiting(5), Dailing(2) */
- int multi_party; /**< Multiparty/conf call: Yes(1), No(0) */
- int index; /**< Call index/ID */
-} bt_hf_call_status_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the manufacturer dat changes.
- * @since_tizen 2.3
- *
- * @param[in] data The manufacurer data of the Bluetooth device to be changed
- * @param[in] len The length of @a data
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked when the manufacturer data of Bluetooth adapter changes
- * if callback is registered using bt_adapter_set_manufacturer_data_changed_cb().
- * @see bt_adapter_set_manufacturer_data()
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-typedef void (*bt_adapter_manufacturer_data_changed_cb) (char *data,
- int len, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called repeatedly when you get the devices connected with specific profile.
- * @since_tizen 3.0
- *
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_adapter_foreach_profile_connected_devices() will invoke this function.
- * @see bt_adapter_foreach_profile_connected_devices()
- */
-typedef bool (*bt_adapter_profile_connected_devices_cb)(const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @details This callback is called when the SCO state is changed.
- * When you call bt_ag_open_sco() or bt_ag_close_sco(), this callback is also called with error result even though these functions failed.
- * @param[in] result The result of changing the connection state
- * @param[in] opened The state to be changed: (@c true = opened, @c false = not opened)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-typedef void (*bt_hf_sco_state_changed_cb) (int result, bool opened, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-typedef void (*bt_hf_call_handling_event_cb) (bt_hf_call_handling_event_e event, char *phone_number, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-typedef void (*bt_hf_multi_call_handling_event_cb) (bt_hf_multi_call_handling_event_e event, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when the speaker gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3 @endif
- *
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hf_set_speaker_gain_changed_cb()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-typedef void (*bt_hf_speaker_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Called when a call status updated event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3 @endif
- * @remarks call_info_list has elements which consist of bt_hf_call_status_info_s
- * @remarks The @a call_info_list must be released with bt_hf_free_call_status_info_list() by you.
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hf_call_status_info_s
- * @see bt_hf_set_call_status_updated_event_cb()
- * @see bt_hf_unset_call_status_updated_event_cb()
- */
-typedef void (*bt_hf_call_status_updated_event_cb) (GSList *call_info_list, void *user_data);
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM BT allowance state
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_ERROR = -1, /**< bluetooth allowance error */
- BT_DPM_BT_ALLOWED, /**< bluetooth allowance allowed */
- BT_DPM_HANDSFREE_ONLY, /**< bluetooth allowance handsfree only */
- BT_DPM_BT_RESTRICTED, /**< bluetooth allowance restricted */
-} bt_dpm_allow_e;
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM Policy status
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_STATUS_ERROR = -1,
-
- BT_DPM_ALLOWED = 0, /**< DPM Policy status allowed. */
- BT_DPM_RESTRICTED = 1, /**< DPM Policy status restricted. */
-
- BT_DPM_ENABLE = 1, /**< DPM Policy status enabled. */
- BT_DPM_DISABLE = 0, /**< DPM Policy status disabled. */
-
- BT_DPM_FALSE = 0, /**< DPM Policy status false. */
- BT_DPM_TRUE = 1, /**< DPM Policy status true. */
-} bt_dpm_status_e;
-
-/**
-* @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
-* @brief DPM Profile states
-* @since_tizen 3.0
-*/
-typedef enum {
- BT_DPM_POLICY_A2DP_PROFILE_STATE,
- BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- BT_DPM_POLICY_BPP_PROFILE_STATE,
- BT_DPM_POLICY_DUN_PROFILE_STATE,
- BT_DPM_POLICY_FTP_PROFILE_STATE,
- BT_DPM_POLICY_HFP_PROFILE_STATE,
- BT_DPM_POLICY_HSP_PROFILE_STATE,
- BT_DPM_POLICY_PBAP_PROFILE_STATE,
- BT_DPM_POLICY_SAP_PROFILE_STATE,
- BT_DPM_POLICY_SPP_PROFILE_STATE,
- BT_DPM_PROFILE_NONE,
-} bt_dpm_profile_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle to control Bluetooth LE scan filter
- * @since_tizen 2.4
- */
-typedef void *bt_scan_filter_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device LE connection update structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef struct {
- unsigned int interval_min; /**< Minimum value for the connection event interval (msec) */
- unsigned int interval_max; /**< Maximum value for the connection event interval (msec) */
- unsigned int latency; /**< Slave latency (msec) */
- unsigned int time_out; /**< Supervision timeout (msec) */
-} bt_le_conn_update_s;
-
-/**
- * Structure to DPM device list
- */
-typedef struct {
- int count;
- char **devices;
-} bt_dpm_device_list_s;
-
-/**
- * Structure to DPM uuid list
- */
-typedef struct {
- int count;
- char **uuids;
-} bt_dpm_uuids_list_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID mouse's button.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_MOUSE_BUTTON_NONE = 0x00, /**<The mouse's none value*/
- BT_HID_MOUSE_BUTTON_LEFT = 0x01, /**<The mouse's left button value*/
- BT_HID_MOUSE_BUTTON_RIGHT = 0x02, /**<The mouse's right button value*/
- BT_HID_MOUSE_BUTTON_MIDDLE = 0x04 /**<The mouse's middle button value*/
-} bt_hid_mouse_button_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID mouse event information.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @see bt_hid_device_send_mouse_event()
- */
-typedef struct {
- int buttons; /**< The button values, we can combine key's values when we pressed multiple mouse buttons*/
- int axis_x; /**< The location's x value, -128 ~127 */
- int axis_y; /**< The location's y value, -128 ~127 */
- int padding; /**< The padding value, -128 ~127 */
-} bt_hid_mouse_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID keyboard event information.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- * @details If you want to know more detail values, refer to http://www.usb.org/developers/hidpage/ and see "HID Usage Tables"
- *
- * @see bt_hid_device_send_key_event()
- */
-typedef struct {
- unsigned char modifier; /**< The modifier keys : such as shift, alt */
- unsigned char key[8]; /**< The key value - currently pressed keys : Max 8 at once */
-} bt_hid_key_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID header type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_HEADER_HANDSHAKE, /**< The Bluetooth HID header type: Handshake */
- BT_HID_HEADER_HID_CONTROL, /**< The Bluetooth HID header type: HID control */
- BT_HID_HEADER_GET_REPORT, /**< The Bluetooth HID header type: Get report */
- BT_HID_HEADER_SET_REPORT, /**< The Bluetooth HID header type: Set report */
- BT_HID_HEADER_GET_PROTOCOL, /**< The Bluetooth HID header type: Get protocol */
- BT_HID_HEADER_SET_PROTOCOL, /**< The Bluetooth HID header type: Set protocol */
- BT_HID_HEADER_DATA, /**< The Bluetooth HID header type: Data */
- BT_HID_HEADER_UNKNOWN /**< The Bluetooth HID header type: Unknown */
-} bt_hid_header_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID parameter type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_PARAM_DATA_RTYPE_INPUT, /**< Parameter type: Input */
- BT_HID_PARAM_DATA_RTYPE_OUTPUT /**< Parameter type: Output */
-} bt_hid_param_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID handshake type.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef enum {
- BT_HID_HANDSHAKE_SUCCESSFUL = 0x00, /**< Handshake error code none */
- BT_HID_HANDSHAKE_NOT_READY, /**< Handshake error code Not Ready */
- BT_HID_HANDSHAKE_ERR_INVALID_REPORT_ID, /**< Handshake error code send invalid report id */
- BT_HID_HANDSHAKE_ERR_UNSUPPORTED_REQUEST, /**< Handshake error code request unsupported request */
- BT_HID_HANDSHAKE_ERR_INVALID_PARAMETER, /**< Handshake error code received invalid parameter */
- BT_HID_HANDSHAKE_ERR_UNKNOWN = 0x0e, /**< unknown error */
- BT_HID_HANDSHAKE_ERR_FATAL /**< Fatal error */
-} bt_hid_handshake_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing data received from the HID Host.
- * @since_tizen @if WEARABLE @else 3.0 @endif
- */
-typedef struct {
- const char *address; /**< The remote device's address */
- bt_hid_header_type_e header_type; /**< The header type */
- bt_hid_param_type_e param_type; /**< The parameter type */
- int data_size; /**< The length of the received data */
- const char *data; /**< The received data */
-} bt_hid_device_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the Bluetooth HID Device connection state changes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The requested state. @a true means the connection is enabled, @false means the connection is disabled.
- * @param[in] remote_address The remote device's address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_activate()
- */
-typedef void (*bt_hid_device_connection_state_changed_cb) (int result,
- bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the HID Device receives data from the HID Host.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE @else 3.0 @endif
- *
- * @param[in] data The data received from the HID Host.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_set_data_received_cb()
- */
-typedef void (*bt_hid_device_data_received_cb)(const bt_hid_device_received_data_s *data, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Trusted Profile enumeration.
- * @since_tizen 3.0
- *
- * @see bt_device_set_profile_trusted()
- * @see bt_device_get_profile_trusted()
- */
-typedef enum {
- BT_TRUSTED_PROFILE_PBAP = 1,
- BT_TRUSTED_PROFILE_MAP,
- BT_TRUSTED_PROFILE_SAP,
- BT_TRUSTED_PROFILE_ALL = 0xFFFFFFFF,
-} bt_trusted_profile_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Restricted Profile enumeration.
- * @since_tizen 3.0
- *
- * @see bt_device_set_profile_restricted()
- * @see bt_device_get_profile_restricted()
- */
-typedef enum {
- BT_RESTRICTED_PROFILE_HFP_HS = 1,
- BT_RESTRICTED_PROFILE_A2DP,
-} bt_restricted_profile_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the authentication event types.
- * @since_tizen 3.0
- *
- */
-typedef enum {
- BT_AUTH_KEYBOARD_PASSKEY_DISPLAY = 0, /**< PIN display event to user for entering PIN in keyboard */
- BT_AUTH_PIN_REQUEST, /**< Legacy PIN or PASSKEY request event */
- BT_AUTH_PASSKEY_CONFIRM_REQUEST, /**< PASSKEY confirmation event to match PASSKEY in remote device */
-} bt_authentication_type_info_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PROXIMITY_MODULE
- * @brief Proximity Profile Role
- * @since_tizen 3.0
- */
-typedef enum {
- BT_PROXIMITY_REPORTER, /**< Proximity Profile Reporter role. */
- BT_PROXIMITY_MONITOR, /**< Proximity Profile Monitor role. */
-} bt_proximity_role_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PROXIMITY_MODULE
- * @brief Proximity Profile Role
- * @since_tizen 3.0
- */
-typedef enum {
- BT_PROXIMITY_LINKLOSS_ALERT = 0x01, /**< Proximity profile Link Loss alert property */
- BT_PROXIMITY_IMMEDIATE_ALERT = 0x02, /**< Proximity Profile Immediate alert property */
- BT_PROXIMITY_TX_POWER = 0x04, /**< Proximity Profile Immediate alert property */
-} bt_proximity_property_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when Trusted Profiles is changed.
- * @since_tizen 3.0
- *
- * @param[in] result The result of supported profile callback
- * @param[in] remote_address Address of remote device
- * @param[in] trusted_profiles Trusted profile FLAG
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_trusted_profile_cb()
- * @see bt_device_unset_trusted_profile_cb()
- */
-typedef void (*bt_device_trusted_profiles_cb)
- (int result, char *remote_address, int trusted_profile, bool supported, bool trusted, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Attribute protocol MTU change information structure.
- * @since_tizen 3.0
- *
- * @see bt_device_att_mtu_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- unsigned int mtu; /** < MTU value */
- unsigned int status; /** < request status*/
-} bt_device_att_mtu_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen 3.0
- *
- * @param[in] connected The connection status: (@c true = connected, @c false = disconnected)
- * @param[in] conn_info The connection information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-typedef void (*bt_device_att_mtu_changed_cb)(int result, bt_device_att_mtu_info_s *mtu_info, void *user_data);
-
-/**
- * @internal
- * @ingroup
- * @brief IPSP Init state changed callback
- * @since_tizen 3.0
- */
-typedef void (*bt_ipsp_init_state_changed_cb)
- (int result, bool ipsp_initialized, void *user_data);
-
-/**
- * @internal
- * @ingroup
- * @since_tizen 3.0
-
- * @brief IPSP Connection state changed callback
- */
-typedef void (*bt_ipsp_connection_state_changed_cb)
- (int result, bool connected, const char *remote_address, const char *iface_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a Proximity Monitor client handle which is associated with a remote device.
- * @since_tizen 3.0
- */
-typedef void *bt_proximity_monitor_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief The handle of a Proximity Reporter server.
- * @since_tizen 3.0
- */
-typedef void *bt_proximity_reporter_h;
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity profile reporter property changed callback
- */
-typedef void (*bt_proximity_reporter_property_changed_cb)
- (int result, const char *remote_address, int service_type, int prop_value, void *user_data);
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity monitor profile connection state changed callback
- */
-typedef void (*bt_proximity_monitor_connection_state_changed_cb)
- (int result, const char *remote_address, bt_proximity_monitor_h monitor, bool connected, int supported_service, void *user_data);
-
-/**
- * @internal
- * @since_tizen 3.0
- * @brief Proximity reporter profile connection state changed callback
- */
-typedef void (*bt_proximity_reporter_connection_state_changed_cb)
- (int result, const char *remote_address, bt_proximity_reporter_h reporter, bool connected, int supported_service, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when remote device requests authentication.
- * @since_tizen 3.0
- * @param[in] result
- * @param[in] auth_type
- * typedef enum {
- * BT_AUTH_KEYBOARD_PASSKEY_DISPLAY = 0, : PIN display event to user for entering PIN in keyboard
- * BT_AUTH_PIN_REQUEST, : Legacy PIN or PASSKEY request event
- * BT_AUTH_PASSKEY_CONFIRM_REQUEST, : PASSKEY confirmation event to match PASSKEY in remote device
- * } bt_authentication_type_info_e;
- * @param[in] device_name Name of the remote device
- * @param[in] remote_addr Remote BD address
- * @param[in] pass_key PASSKEY string
- * PASSKEY string is valid only if authentication types are following
- * a/ BT_AUTH_KEYBOARD_PASSKEY_DISPLAY
- * b/ BT_AUTH_PASSKEY_CONFIRM_REQUEST
- * pass_key string will be invalid if authentication event is of type BT_AUTH_PIN_REQUEST
- * as this event indicates that user MUST enter PIN or PASSKEY and perform authentication.
- *
- * Upon receiving BT_AUTH_KEYBOARD_PASSKEY_DISPLAY event, user should enter PASSKEY in keyboard
- * Application can also call bt_device_cancel_bonding() Upon receiving BT_AUTH_KEYBOARD_PASSKEY_DISPLAY
- * event which will fail the on-going pairing with remote device.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_adapter_set_authentication_req_cb()
- */
-typedef void (*bt_adapter_authentication_req_cb)(int result, bt_authentication_type_info_e auth_type,
- char *device_name, char *remote_addr,
- char *pass_key, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Samsung XSAT Vendor dependent command.
- * @since_tizen 2.3.2
- */
-typedef struct {
- int app_id; /**< The application ID */
- char *message; /**< Command message */
-} bt_hf_vendor_dep_at_cmd_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a XSAT vendor command is transmitted from Hands-Free.
- * @since_tizen 2.3
- *
- * @param[in] command The XSAT vendor command transmitted from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_vendor_cmd_cb()
- * @see bt_ag_unset_vendor_cmd_cb()
- */
-typedef void (*bt_ag_vendor_cmd_cb) (char *command, void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_INTERNAL_H__ */
diff --git a/include/wearable/bluetooth.h b/include/wearable/bluetooth.h
deleted file mode 100644
index 2b736de..0000000
--- a/include/wearable/bluetooth.h
+++ /dev/null
@@ -1,5311 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_H__
-#define __TIZEN_NETWORK_BLUETOOTH_H__
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <stdbool.h>
-#include <tizen_error.h>
-#include <tizen.h>
-
-#include <bluetooth_type.h>
-
-#ifndef TIZEN_DEPRECATED_API
-#define TIZEN_DEPRECATED_API __attribute__((__visibility__("default"), deprecated))
-#endif
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth.h
- * @brief API to control the Bluetooth adapter and devices and communications.
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- */
-
-
-/**
- * @addtogroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @{
- */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Initializes the Bluetooth API.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This function must be called before Bluetooth API starts. \n
- * You must free all resources of the Bluetooth service by calling bt_deinitialize() if Bluetooth service is no longer needed.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_deinitialize()
- */
-int bt_initialize(void);
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Releases all resources of the Bluetooth API.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This function must be called if Bluetooth API is no longer needed.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth API must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Gets the specification name for the given UUID.
- * @since_tizen 3.0
- *
- * @remarks The @a name must be released using free().
- *
- * @param[in] uuid The UUID
- * @param[out] name The specification name defined at www.bluetooth.com
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_get_uuid()
- */
-int bt_get_uuid_name(const char *uuid, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the current state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] adapter_state The current adapter state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_adapter_get_state(bt_adapter_state_e *adapter_state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the address of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks The @a local_address must be released with free() by you.
- *
- * @param[out] local_address The device address of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_adapter_get_name()
- */
-int bt_adapter_get_address(char **local_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the name of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details Use this function to get the friendly name associated with Bluetooth
- * device, retrieved by the remote Bluetooth devices.
- *
- * @remarks The @a local_name must be released with free() by you.
- *
- * @param[out] local_name The local device name
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_set_name()
- */
-int bt_adapter_get_name(char **local_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the name of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] local_name The name of the Bluetooth device. \n
- * The maximum length is 248 characters.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_name_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_name()
- * @see bt_adapter_name_changed_cb()
- * @see bt_adapter_set_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-int bt_adapter_set_name(const char *local_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the visibility mode of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] mode The visibility mode of the Bluetooth device
- * @param[out] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds).
- * @a duration is valid only if @a mode is #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE. This value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_visibility(bt_adapter_visibility_mode_e *mode, int *duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Starts the device discovery, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details If a device is discovered, bt_adapter_device_discovery_state_changed_cb() will be invoked
- * with #BT_ADAPTER_DEVICE_DISCOVERY_FOUND, and then bt_adapter_device_discovery_state_changed_cb()
- * will be called with #BT_ADAPTER_DEVICE_DISCOVERY_FINISHED in case of the completion or cancellation of the discovery.
- *
- * @remarks To connect to peer Bluetooth device, you need to know its Bluetooth address. \n
- * The device discovery can be stopped by bt_adapter_stop_device_discovery().
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_is_discovering()
- * @see bt_adapter_stop_device_discovery()
- * @see bt_adapter_device_discovery_state_changed_cb()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_start_device_discovery(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Stops the device discovery, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks The device discovery process will take 10 ~ 20 seconds to get all the devices in vicinity.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The device discovery must be in progress with bt_adapter_start_device_discovery().
- * @post This function invokes bt_adapter_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_is_discovering()
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-int bt_adapter_stop_device_discovery(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Checks for the device discovery is in progress or not.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If Bluetooth discovery is in progress, other operations are not allowed and
- * you have to either stop the discovery operation, or wait for it to be finished,
- * before performing other operations.
-
- * @param[out] is_discovering The discovering status: (@c true = in progress , @c false = not in progress )
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_stop_device_discovery()
- */
-int bt_adapter_is_discovering(bool *is_discovering);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Get the service mask from the uuid list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] uuids The UUID list of the device.
- * @param[in] no_of_service The number of the UUID list count.
- * @param[out] service_mask_list Service mask list converted from the given UUID list.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_service_class_t
- */
-int bt_device_get_service_mask_from_uuid_list(char **uuids,
- int no_of_service,
- bt_service_class_t *service_mask_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Retrieves the device information of all bonded devices.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param [in] callback The callback function to invoke
- * @param [in] user_data The user data passed from the foreach function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_bonded_device_cb().
- *
- * @see bt_adapter_bonded_device_cb()
- */
-int bt_adapter_foreach_bonded_device(bt_adapter_bonded_device_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the device information of a bonded device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a device_info must be released with bt_adapter_free_device_info() by you .
- *
- * @param [in] remote_address The address of remote device
- * @param [out] device_info The bonded device information
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_bonded_device_cb().
- *
- * @see bt_adapter_bonded_device_cb()
- */
-int bt_adapter_get_bonded_device_info(const char *remote_address, bt_device_info_s **device_info);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Frees device info.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param [in] device_info The bonded device information
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_adapter_get_bonded_device_info()
- */
-int bt_adapter_free_device_info(bt_device_info_s *device_info);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Checks whether the UUID of service is used or not
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] service_uuid The UUID of service
- * @param[out] used Indicates whether the service is used or not
- * @return true on success, otherwise false.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_adapter_is_service_used(const char *service_uuid, bool *used);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the Bluetooth adapter state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- */
-int bt_adapter_set_state_changed_cb(bt_adapter_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_state_changed_cb()
- */
-int bt_adapter_unset_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the name of Bluetooth adapter changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_name_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-int bt_adapter_set_name_changed_cb(bt_adapter_name_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_name_changed_cb()
- */
-int bt_adapter_unset_name_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the visibility mode changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_visibility_mode_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-int bt_adapter_set_visibility_mode_changed_cb(bt_adapter_visibility_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_visibility_mode_changed_cb()
- */
-int bt_adapter_unset_visibility_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked every second
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * until the visibility mode is changed from #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE
- * to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @details When you set visibility mode as #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE,
- * @a callback will be called every second until visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @post bt_adapter_visibility_duration_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_adapter_visibility_duration_changed_cb()
- * @see bt_adapter_unset_visibility_duration_changed_cb()
- */
-int bt_adapter_set_visibility_duration_changed_cb(bt_adapter_visibility_duration_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_adapter_set_visibility_duration_changed_cb()
- */
-int bt_adapter_unset_visibility_duration_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the device discovery state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_device_discovery_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_device_discovery_state_changed_cb()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- */
-int bt_adapter_set_device_discovery_state_changed_cb(bt_adapter_device_discovery_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- */
-int bt_adapter_unset_device_discovery_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Get the Hash and Randmoizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] hash The hash value received from the controller
- * @param[out] randomizer The hash value received from the controller
- * @param[out] hash_len The length of the hash value
- * @param[out] randomizer_len The length of the randomizer value
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_get_local_oob_data(unsigned char **hash, unsigned char **randomizer,
- int *hash_len, int *randomizer_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the Hash and Randmoizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @param[in] hash The hash value received from the controller
- * @param[in] randomizer The hash value received from the controller
- * @param[in] hash_len The length of the hash value. Allowed value is 16
- * @param[in] randomizer_len The length of the randomizer value. Allowed value is 16
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_set_remote_oob_data(const char *remote_address,
- unsigned char *hash, unsigned char *randomizer,
- int hash_len, int randomizer_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the Hash and Randmoizer value, synchronously.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks The @a hash192, randomizer192, hash256 and randomizer256 must be released using free()
- *
- * @param[out] hash192 The hash value derived from the P-192 public key
- * @param[out] randomizer192 The randomizer value associated with the P-192 public key
- * @param[out] hash192_len The length of @a hash192
- * @param[out] randomizer192_len The length of @a randomizer192
- * @param[out] hash256 The hash value derived from the P-256 public key
- * @param[out] randomizer256 The randomizer value associated with the P-256 public key
- * @param[out] hash256_len The length of @a hash256
- * @param[out] randomizer256_len The length of @a randomizer256
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_get_local_oob_ext_data(unsigned char **hash192, unsigned char **randomizer192,
- int *hash192_len, int *randomizer192_len,
- unsigned char **hash256, unsigned char **randomizer256,
- int *hash256_len, int *randomizer256_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the Hash and Randmoizer value, synchronously.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @param[in] hash192 The P-192 hash value received via OOB from remote device
- * @param[in] randomizer192 The P-192 randomizer value received via OOB from remote device
- * @param[in] hash192_len The length of @a hash192
- * @param[in] randomizer192_len The length of @a randomizer192
- * @param[in] hash256 The P-256 hash value received via OOB from remote device
- * @param[in] randomizer256 The P-256 randomizer value received via OOB from remote device
- * @param[in] hash256_len The length of @a hash256
- * @param[in] randomizer256_len The length of @a randomizer256
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_set_remote_oob_ext_data(const char *remote_address,
- const unsigned char *hash192, const unsigned char *randomizer192,
- int hash192_len, int randomizer192_len,
- const unsigned char *hash256, const unsigned char *randomizer256,
- int hash256_len, int randomizer256_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Deletes the Hash and Randomizer value, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address Remote device address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_remove_remote_oob_data(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Starts the LE scan to find LE advertisement.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details If a LE advertisement is found, bt_adapter_le_scan_result_cb() will be invoked.
- *
- * @param[in] cb The callback to report the result of this function
- * @param[in] user_data The user data to be passed when callback is called
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post This function invokes bt_adapter_le_scan_result_cb().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_start_scan(bt_adapter_le_scan_result_cb cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Stops the LE scan.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The LE scan must be in progress with bt_adapter_le_start_scan().
- *
- * @see bt_adapter_le_start_scan()
- */
-int bt_adapter_le_stop_scan(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service UUID list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a uuids must be iterated as count and each pointed data must be released with free().
- * Then uuids must be released with free(). \n
- * 16-bit service UUID or 128-bit service UUID is supported. (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] uuids The list of string of the service uuid
- * @param[out] count The count of the service UUIDs
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_uuids(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char ***uuids, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the device name from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a name must be released with free() by you.
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] name The device name
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_device_name(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the transmission power level from the scan result information
- * @since_tizen 2.3.1
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] power_level The transmission power level in dBm
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_tx_power_level(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *power_level);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service solicitation UUID list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a uuids must be iterated as count and each pointed data must be released with free().
- * Then uuids must be released with free(). \n
- * 16-bit service solicitation UUID or 128-bit service solicitation UUID is supported.
- * (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] uuids The list of string of the service solicitation uuid
- * @param[out] count The count of the service UUIDs
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_solicitation_uuids(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, char ***uuids, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the service data list from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a data_list must be released with bt_adapter_le_free_service_data_list() by you .
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] data_list The list of the service data
- * @param[out] count The count of the service data list
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_service_data_list(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_le_service_data_s **data_list, int *count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Frees service data list.
- * @since_tizen 2.3.1
- *
- * @param[in] data_list The list of the service data
- * @param[in] count The count of the service data list
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_adapter_le_get_scan_result_service_data_list()
- */
-int bt_adapter_le_free_service_data_list(bt_adapter_le_service_data_s *data_list, int count);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the appearance from the scan result information
- * @since_tizen 2.3.1
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] appearance The appearance
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_appearance(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *appearance);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the manufacturer data from the scan result information
- * @since_tizen 2.3.1
- *
- * @remarks The @a manufacturer_data must be released with free() by you.
- *
- * @param[in] info The scan result information
- * @param[in] pkt_type The packet type
- * @param[out] manufacturer_id The manufacturer ID
- * @param[out] manufacturer_data The manufacturer data (byte array)
- * @param[out] manufacturer_data_len The length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_scan_result_cb()
- */
-int bt_adapter_le_get_scan_result_manufacturer_data(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, int *manufacturer_id, char **manufacturer_data, int *manufacturer_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Create advertiser to advertise device's existence or respond to LE scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_destroy_advertiser()
- */
-int bt_adapter_le_create_advertiser(bt_advertiser_h *advertiser);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Destroy advertiser.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_create_advertiser()
- */
-int bt_adapter_le_destroy_advertiser(bt_advertiser_h advertiser);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add a service UUID to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit UUID or 128-bit UUID is supported. (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid The string of the service UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_uuid(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add a service solicitation UUID to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit service solicitation UUID or 128-bit service solicitation UUID is supported.
- * (e.g. 180F, 0000180F-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid The string of the service solicitation UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_solicitation_uuid(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add service data to advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @remarks 16-bit UUID is supported. (e.g. 180F)
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] uuid 16-bit UUID of the service
- * @param[in] service_data The service data
- * @param[in] service_data_len The data length of service data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_service_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, const char *uuid,
- const char *service_data, int service_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets the external appearance of this device to advertise or scan response data.
- * Please refer to the adopted Bluetooth specification for the the appearance.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] appearance The external appearance of device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_appearance(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, int appearance);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Add manufacturer specific data to advertise or scan response data.
- * Please refer to the Bluetooth Assigned Numbers provided by the Bluetooth SIG for a list of existing company identifiers.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] manufacturer_id Manufacturer identifier
- * @param[in] manufacturer_data The manufacturer specific data
- * @param[in] manufacturer_data_len The data length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_add_advertising_manufacturer_data(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, int manufacturer_id, const char *manufacturer_data, int manufacturer_data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the device name should be included in advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] include_name Whether the device name should be included
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_device_name(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bool include_name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the transmission power level should be included in advertise or scan response data.
- * The maximum advertised or responded data size is 31 bytes
- * including data type and system wide data.
- * @since_tizen 2.3.1
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type
- * @param[in] include_tx_power Whether the transmission power level should be included
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_QUOTA_EXCEEDED Quota exceeded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_clear_advertising_data()
- */
-int bt_adapter_le_set_advertising_tx_power_level(bt_advertiser_h advertiser,
- bt_adapter_le_packet_type_e pkt_type, bool include_tx_power);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Clear all data to be advertised or responded to scan request from LE scanning device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] pkt_type The packet type to be cleared
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- */
-int bt_adapter_le_clear_advertising_data(bt_advertiser_h advertiser, bt_adapter_le_packet_type_e pkt_type);
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Stops the advertising.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation is not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The advertising must be going on with bt_adapter_le_start_advertising_new().
- * @post This function invokes bt_adapter_le_advertising_state_changed_cb().
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_advertising_state_changed_cb()
- */
-int bt_adapter_le_stop_advertising(bt_advertiser_h advertiser);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Start advertising with passed advertiser and advertising parameters.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @details Once Bluetooth advertising is started, nearby Bluetooth LE(Low Energy) supported
- * devices can know this device's existence. And one of them can make a connection request,
- * if it is allowed.
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] cb The callback to report the result of this function
- * @param[in] user_data The user data to be passed when callback is called
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post This function invokes bt_adapter_le_advertising_state_changed_cb().
- *
- * @see bt_adapter_le_stop_advertising()
- * @see bt_adapter_le_advertising_state_changed_cb()
- */
-int bt_adapter_le_start_advertising_new(bt_advertiser_h advertiser, bt_adapter_le_advertising_state_changed_cb cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set advertising mode to control the advertising power and latency.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] mode The mode of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_mode(bt_advertiser_h advertiser, bt_adapter_le_advertising_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set whether the advertising type should be connectable or non-connectable
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] connectable The type of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_connectable(bt_advertiser_h advertiser, bool connectable);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets Bluetooth LE scan mode
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] scan_mode The scan mode
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Parameter is invalid
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- */
-int bt_adapter_le_set_scan_mode(bt_adapter_le_scan_mode_e scan_mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Creates a bond with a remote Bluetooth device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A bond can be destroyed by bt_device_destroy_bond().\n
- * The bonding request can be cancelled by bt_device_cancel_bonding().
- *
- * @param[in] remote_address The address of the remote Bluetooth device with which the bond should be created
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @post This function invokes bt_device_bond_created_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_bond_created_cb()
- * @see bt_device_cancel_bonding()
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_create_bond(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Cancels the bonding process.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Use this function when the remote Bluetooth device is not responding to the
- * bond request or you wish to cancel the bonding request.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The creating a bond must be in progress by bt_device_create_bond().
- *
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_cancel_bonding(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Destroys the bond, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device to remove bonding
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_device_bond_destroyed_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_device_bond_destroyed_cb()
- * @see bt_device_set_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-int bt_device_destroy_bond(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets an alias for the bonded device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] alias The alias of the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- *
- * @see bt_device_create_bond()
- */
-int bt_device_set_alias(const char *remote_address, const char *alias);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets the authorization of a bonded device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Once a device is authorized, you don't need to receive a confirmation.
- *
- * @param[in] remote_address The address of the remote Bluetooth device to authorize
- * @param[in] authorization_state The Bluetooth authorization state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post bt_device_authorization_changed_cb() will be invoked.
- *
- * @see bt_device_create_bond()
- * @see bt_device_authorization_changed_cb()
- * @see bt_device_set_authorization_changed_cb()
- * @see bt_device_unset_authorization_changed_cb()
- */
-int bt_device_set_authorization(const char *remote_address, bt_device_authorization_e authorization_state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Starts the search for services supported by the specified device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks If creating a bond succeeds, which means bt_device_bond_created_cb() is called with result #BT_ERROR_NONE,
- * then you don't need to run this function.\n
- * The service search takes a couple of seconds to complete normally. \n
- *
- * @param[in] remote_address The address of the remote Bluetooth device whose services need to be checked
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_SERVICE_SEARCH_FAILED Service search failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_device_service_searched_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_service_searched_cb()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_start_service_search(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the connected profiles.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] remote_address The address of the remote device
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_device_connected_profile() will be invoked.
- * @see bt_device_connected_profile()
- */
-int bt_device_foreach_connected_profiles(const char *remote_address, bt_device_connected_profile callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the profile connected status.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] remote_address The address of the remote device
- * @param[in] bt_profile wish to know bt_profile
- * @param[out] connected_status the connected status
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_device_is_profile_connected(const char *remote_address, bt_profile_e bt_profile,
- bool *connected_status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Updates a LE connection mode
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] mode The LE connection mode
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_update_le_connection_mode(const char *remote_address, bt_device_le_connection_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the bond creates.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_bond_created_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_set_bond_created_cb(bt_device_bond_created_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_bond_created_cb()
- */
-int bt_device_unset_bond_created_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the bond destroys.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_bond_destroyed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-int bt_device_set_bond_destroyed_cb(bt_device_bond_destroyed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_bond_destroyed_cb()
- */
-int bt_device_unset_bond_destroyed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the authorization of device changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_authorization_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_authorization_changed_cb()
- * @see bt_device_set_authorization_changed_cb()
- * @see bt_device_unset_authorization_changed_cb()
- */
-int bt_device_set_authorization_changed_cb(bt_device_authorization_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_authorization_changed_cb()
- */
-int bt_device_unset_authorization_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the process of service search finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_service_searched_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_set_service_searched_cb(bt_device_service_searched_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_service_searched_cb()
- */
-int bt_device_unset_service_searched_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-int bt_device_set_connection_state_changed_cb(bt_device_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function to be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_connection_state_changed_cb()
- */
-int bt_device_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Registers a rfcomm server socket with a specific UUID.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A socket can be destroyed by bt_socket_destroy_rfcomm().
- *
- * @param[in] service_uuid The UUID of service to provide
- * @param[out] socket_fd The file descriptor of socket to listen
- * @return 0 on success, otherwise a negative error value.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_socket_listen_and_accept_rfcomm()
- * @see bt_socket_destroy_rfcomm()
- */
-int bt_socket_create_rfcomm(const char *service_uuid, int *socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Removes the rfcomm server socket which was created using bt_socket_create_rfcomm().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called when this function is finished successfully.
- *
- * @param[in] socket_fd The file descriptor of socket (which was created using bt_socket_create_rfcomm()) to destroy
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called.
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_destroy_rfcomm(int socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket and accepts connection requests.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details Pop-up is shown automatically when a RFCOMM connection is requested.
- * bt_socket_connection_state_changed_cb() will be called with
- * #BT_SOCKET_CONNECTED if you click "yes" and connection is finished successfully.
- * @param[in] socket_fd The file descriptor of socket on which start to listen
- * @param[in] max_pending_connections The maximum number of pending connections
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post If callback function bt_socket_connection_state_changed_cb() is set,
- * then bt_socket_connection_state_changed_cb() will be called when the remote Bluetooth device is connected.
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_listen_and_accept_rfcomm(int socket_fd, int max_pending_connections);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Connects to a specific RFCOMM based service on a remote Bluetooth device UUID, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A connection can be disconnected by bt_socket_disconnect_rfcomm().
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] service_uuid The UUID of service provided by the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @pre The bond with the remote device must be created with bt_device_create_bond().
- * @post This function invokes bt_socket_connection_state_changed_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_start_service_search()
- * @see bt_socket_disconnect_rfcomm()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_connect_rfcomm(const char *remote_address, const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Disconnects the RFCOMM connection with the given file descriptor of connected socket.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] socket_fd The file descriptor of socket to close which was received using bt_socket_connection_state_changed_cb().
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection must be established.
- *
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_disconnect_rfcomm(int socket_fd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Sends data to the connected device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remark The specific error code can be obtained using the get_last_result() method. Error codes are described in Exception section.
- *
- * @param[in] socket_fd The file descriptor of connected socket which was received using bt_socket_connection_state_changed_cb()
- * @param[in] data The data to be sent
- * @param[in] length The length of data to be sent
- *
- * @return the number of bytes written (zero indicates nothing was written).
- * @retval On error, -1 is returned, and errno is set appropriately. See write 2 man page.
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @exception BT_ERROR_PERMISSION_DENIED Permission denied
- * @exception BT_ERROR_AGAIN Resource temporarily unavailable
- *
- * @pre The connection must be established.
- *
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_send_data(int socket_fd, const char *data, int length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when you receive data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_data_received_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_data_received_cb()
- * @see bt_socket_set_data_received_cb()
- * @see bt_socket_unset_data_received_cb()
- */
-int bt_socket_set_data_received_cb(bt_socket_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_data_received_cb()
- * @see bt_socket_set_data_received_cb()
- */
-int bt_socket_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when a RFCOMM connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_connection_requested_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_unset_connection_requested_cb()
- */
-int bt_socket_set_connection_requested_cb(bt_socket_connection_requested_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_set_connection_requested_cb()
- * @see bt_socket_connection_requested_cb()
- */
-int bt_socket_unset_connection_requested_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Register a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_socket_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_set_connection_state_changed_cb(bt_socket_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- */
-int bt_socket_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Initializes the Bluetooth OPP server requested by bt_opp_server_connection_requested_cb().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @details No popup appears when an OPP connection is requested from a remote device.
- * Instead, @a connection_requested_cb() will be called.
- * At that time, you can call either bt_opp_server_accept() or bt_opp_server_reject().
- * @remarks This function must be called to start Bluetooth OPP server. \n
- * You must free all resources of the Bluetooth service by calling bt_opp_server_deinitialize() if Bluetooth OPP service is no longer needed.
- * @param[in] destination The destination path
- * @param[in] connection_requested_cb The callback called when an OPP connection is requested
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_connection_requested_cb()
- * @see bt_opp_server_deinitialize()
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_initialize_by_connection_request(const char *destination, bt_opp_server_connection_requested_cb connection_requested_cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Deinitializes the Bluetooth OPP server.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_deinitialize()
- */
-int bt_opp_server_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Accepts the push request from the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks If you initialize OPP server by bt_opp_server_initialize_by_connection_request(), then name is ignored.
- * You can cancel the pushes by bt_opp_server_cancel_transfer() with transfer_id.
- * @param[in] progress_cb The callback called when a file is being transferred
- * @param[in] finished_cb The callback called when a transfer is finished
- * @param[in] name The name to store. This can be NULL if you initialize OPP server by bt_opp_server_initialize_by_connection_request().
- * @param[in] user_data The user data to be passed to the callback function
- * @param[out] transfer_id The ID of transfer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_accept(bt_opp_server_transfer_progress_cb progress_cb,
- bt_opp_server_transfer_finished_cb finished_cb, const char *name,
- void *user_data, int *transfer_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Rejects the push request from the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_accept()
- */
-int bt_opp_server_reject(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Cancels the transfer.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] transfer_id The ID of transfer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_accept()
- */
-int bt_opp_server_cancel_transfer(int transfer_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Sets the destination path of file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] destination The destination path of file to be pushed
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_opp_server_set_destination(const char *destination);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Initializes the Bluetooth OPP client.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth OPP client starts. \n
- * You must free all resources of the Bluetooth service by calling bt_opp_client_deinitialize()
- * if Bluetooth OPP service is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_deinitialize()
- */
-int bt_opp_client_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Deinitializes the Bluetooth OPP client.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_initialize()
- */
-int bt_opp_client_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Adds file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] file The path of file to be pushed
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_clear_files()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_add_file(const char *file);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Adds file to be pushed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_add_file()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_clear_files(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Pushes the file to the remote device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details At first, bt_opp_client_push_responded_cb() will be called when OPP server responds to the push request.
- * After connection is established, bt_opp_client_push_progress_cb() will be called repeatedly until a file is transferred completely.
- * If you send several files, then bt_opp_client_push_progress_cb() with another file will be called repeatedly until the file is transferred completely.
- * bt_opp_client_push_finished_cb() will be called when the push request is finished.
- * @param[in] remote_address The remote address
- * @param[in] responded_cb The callback called when OPP server responds to the push request
- * @param[in] progress_cb The callback called when each file is being transferred
- * @param[in] finished_cb The callback called when the push request is finished
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_client_initialize()
- * @see bt_opp_client_cancel_push
- */
-int bt_opp_client_push_files(const char *remote_address,
- bt_opp_client_push_responded_cb responded_cb,
- bt_opp_client_push_progress_cb progress_cb,
- bt_opp_client_push_finished_cb finished_cb,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Cancels the push request in progress, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre bt_opp_client_push_files() must be called.
- * @post bt_opp_client_push_finished_cb() will be invoked with result #BT_ERROR_CANCELLED,
- * which is a parameter of bt_opp_client_push_files().
- * @see bt_opp_client_initialize()
- * @see bt_opp_client_push_files()
- */
-int bt_opp_client_cancel_push(void);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Initializes the Bluetooth HID(Human Interface Device) Host.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth HID Host starts. \n
- * You must free all resources of the Bluetooth service by calling bt_hid_host_deinitialize()
- * if Bluetooth HID Host service is no longer needed.
- * @param[in] connection_cb The callback called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_host_deinitialize()
- */
-int bt_hid_host_initialize(bt_hid_host_connection_state_changed_cb connection_cb, void *user_data);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Deinitializes the Bluetooth HID(Human Interface Device) Host.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth HID service must be initialized with bt_hid_host_initialize().
- * @see bt_hid_host_initialize()
- */
-int bt_hid_host_deinitialize(void);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Connects the remote device with the HID(Human Interface Device) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @pre The Bluetooth HID service must be initialized with bt_hid_host_initialize().
- * @post bt_hid_host_connection_state_changed_cb() will be invoked.
- * @see bt_hid_host_disconnect()
- * @see bt_hid_host_connection_state_changed_cb()
- */
-int bt_hid_host_connect(const char *remote_address);
-
-/**
- * @ingroup @if WEARABLE CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE CAPI @else_NETWORK_BLUETOOTH_HID_MODULE @endif
- * @brief Disconnects the remote device with the HID(Human Interface Device) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_hid_host_connect().
- * @post bt_hid_host_connection_state_changed_cb() will be invoked.
- * @see bt_hid_host_connect()
- * @see bt_hid_host_connection_state_changed_cb()
- */
-int bt_hid_host_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Activates the Bluetooth HID Device role.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to register HID UUID.
- * Only then a remote device is able to identify this one as a HID device.
- *
- * @param[in] callback The callback called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Already activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_deactivate()
- */
-int bt_hid_device_activate(bt_hid_device_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Deactivates the Bluetooth HID Device role.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to deregister the HID UUID.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_deactivate(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Initiates the HID device connection with the Device role, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks This function must be called to Initiate the HID device role connection.
- *
- * @param[in] remote_address The remote device's address.
-
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_IN_PROGRESS Not activated
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_ALREADY_DONE Already connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @see bt_initialize()
- * @see bt_hid_device_activate()
- */
-int bt_hid_device_connect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Disconnects from the HID Host device, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sends the mouse event data to the remote device.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] mouse_data The mouse data to be passed to the remote device.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_mouse_event(const char *remote_address,
- const bt_hid_mouse_data_s *mouse_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sends the keyboard event data to the remote device.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] key_data The key data to be passed to the remote device
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_key_event(const char *remote_address,
- const bt_hid_key_data_s *key_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Sets the callback called when the device receives data from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] callback The callback function to be set when data is received.
- * @param[in] user_data The user data to be passed to the callback.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_set_data_received_cb(bt_hid_device_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Unsets the data received callback.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Responds to reports from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel pubilc
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] remote_address The remote device's address.
- * @param[in] header_type The response header type
- * @param[in] param_type The response parameter type
- * @param[in] data The response data
- * @param[in] data_len The length of the response data
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_reply_to_report(const char *remote_address,
- bt_hid_header_type_e header_type,
- bt_hid_param_type_e param_type,
- const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Initializes the Bluetooth profiles related with audio.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks This function must be called before Bluetooth profiles related with audio starts. \n
- * You must free all resources of the this service by calling bt_audio_deinitialize()
- * if Bluetooth profiles related with audio service is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_audio_deinitialize()
- */
-int bt_audio_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Deinitializes the Bluetooth profiles related with audio.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- */
-int bt_audio_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Connects the remote device with the given audio profile, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details If you input type as #BT_AUDIO_PROFILE_TYPE_ALL and connection request succeeds, then bt_audio_connection_state_changed_cb() will be called twice
- * when #BT_AUDIO_PROFILE_TYPE_HSP_HFP is connected and #BT_AUDIO_PROFILE_TYPE_A2DP is connected.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
-
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_audio_connection_state_changed_cb() will be invoked.
- * @see bt_audio_disconnect()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_connect(const char *remote_address, bt_audio_profile_type_e type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Disconnects the remote device with the given audio profile, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @details If you input type as #BT_AUDIO_PROFILE_TYPE_ALL and disconnection request succeeds, then bt_audio_connection_state_changed_cb() will be called twice
- * when #BT_AUDIO_PROFILE_TYPE_HSP_HFP is disconnected and #BT_AUDIO_PROFILE_TYPE_A2DP is disconnected.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_audio_connect().
- * @post bt_audio_connection_state_changed_cb() will be invoked.
- * @see bt_audio_connect()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_disconnect(const char *remote_address, bt_audio_profile_type_e type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_audio_set_connection_state_changed_cb(bt_audio_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- * @see bt_audio_set_connection_state_changed_cb()
- */
-int bt_audio_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Initializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) target service.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @remarks This function must be called before any other AVRCP target functions are called. \n
- * You must free all resources of the this service by calling bt_avrcp_target_deinitialize()
- * if Bluetooth AVRCP service is no longer needed.
- * @param[in] callback The callback function called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_avrcp_target_deinitialize()
- */
-int bt_avrcp_target_initialize(bt_avrcp_target_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Deinitializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) target service.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_target_initialize().
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the equalizer state to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The state of equalizer
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_equalizer_state(bt_avrcp_equalizer_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the repeat mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The repeat mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_repeat_mode(bt_avrcp_repeat_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the shuffle mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The repeat mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_shuffle_mode(bt_avrcp_shuffle_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the scan mode to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The scan mode
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_scan_mode(bt_avrcp_scan_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the player state to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The player state
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_player_state(bt_avrcp_player_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the current position of song to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] position The current position in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_position(unsigned int position);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_TARGET_MODULE
- * @brief Notifies the track to the remote device.
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] title The title of track
- * @param[in] artist The artist of track
- * @param[in] album The album of track
- * @param[in] genre The genre of track
- * @param[in] track_num The track number
- * @param[in] total_tracks The number of all tracks
- * @param[in] duration The duration of track in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_target_notify_track(const char *title, const char *artist, const char *album, const char *genre, unsigned int track_num, unsigned int total_tracks, unsigned int duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the equalizer state is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_equalizer_state_changed_cb()
- */
-int bt_avrcp_set_equalizer_state_changed_cb(bt_avrcp_equalizer_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the equalizer state is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_equalizer_state_changed_cb()
- */
-int bt_avrcp_unset_equalizer_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the repeat mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_repeat_mode_changed_cb()
- */
-int bt_avrcp_set_repeat_mode_changed_cb(bt_avrcp_repeat_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the repeat mode is changed. (e.g., by a TV remote control or other input devi)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_repeat_mode_changed_cb()
- */
-int bt_avrcp_unset_repeat_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the shuffle mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_shuffle_mode_changed_cb()
- */
-int bt_avrcp_set_shuffle_mode_changed_cb(bt_avrcp_shuffle_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the shuffle mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_shuffle_mode_changed_cb()
- */
-int bt_avrcp_unset_shuffle_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the scan mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_scan_mode_changed_cb()
- */
-int bt_avrcp_set_scan_mode_changed_cb(bt_avrcp_scan_mode_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the scan mode is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_scan_mode_changed_cb()
- */
-int bt_avrcp_unset_scan_mode_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the song position is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_position_changed_cb()
- */
-int bt_avrcp_set_position_changed_cb(bt_avrcp_position_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the song position is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_position_changed_cb()
- */
-int bt_avrcp_unset_position_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the Play status is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-int bt_avrcp_set_play_status_changed_cb(bt_avrcp_play_status_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the Play status is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-int bt_avrcp_unset_play_status_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Registers a callback function that will be invoked when the track metadata is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_unset_track_info_changed_cb()
- */
-int bt_avrcp_set_track_info_changed_cb(bt_avrcp_track_info_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Unregisters a callback function that will be invoked when the track metadata is changed. (e.g., by a TV remote control or other input devices)
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The AVRCP service must be initialized with bt_avrcp_target_initialize() or bt_avrcp_control_initialize().
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_set_track_info_changed_cb()
- */
-int bt_avrcp_unset_track_info_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Initializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) controller service.
- * @since_tizen 3.0
- * @remarks This function must be called before any other AVRCP controller functions are called. \n
- * You must free all resources of the this service by calling bt_avrcp_control_deinitialize()
- * if Bluetooth AVRCP service is no longer needed.
- * @param[in] callback The callback function called when the connection state is changed
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_avrcp_control_deinitialize()
- */
-int bt_avrcp_control_initialize(bt_avrcp_control_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Deinitializes the Bluetooth AVRCP (Audio/Video Remote Control Profile) controller service.
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- */
-int bt_avrcp_control_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Connects the AVRCP (Audio/Video Remote Control Profile) target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- */
-int bt_avrcp_control_connect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Disconnects from the AVRCP (Audio/Video Remote Control Profile) target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_connect()
- */
-int bt_avrcp_control_disconnect(const char *remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends a command to the target device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] cmd The commands, one of: Play, Pause, Next, Rewind.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_avrcp_control_initialize().
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_connect()
- */
-int bt_avrcp_control_send_player_command(bt_avrcp_player_command_e cmd);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the equalizer state change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] state The new equalizer state, one of: ON, OFF
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_equalizer_state(bt_avrcp_equalizer_state_e state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the the equalizer state of the remote device.
- * @since_tizen 3.0
- * @param[out] state The equalizer state, one of: ON, OFF
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_equalizer_state(bt_avrcp_equalizer_state_e *state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the repeat change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new repeat mode, one of: OFF, SINGLE, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_repeat_mode(bt_avrcp_repeat_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the repeat state of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The repeat mode, one of: OFF, SINGLE, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_repeat_mode(bt_avrcp_repeat_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the shuffle mode change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new shuffle mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_shuffle_mode(bt_avrcp_shuffle_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the shuffle mode of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The shuffle mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_shuffle_mode(bt_avrcp_shuffle_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Sends the scan mode change request to the remote device.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] mode The new scan mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_set_scan_mode(bt_avrcp_scan_mode_e mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the scan mode of the remote device.
- * @since_tizen 3.0
- * @param[out] mode The scan mode, one of: OFF, GROUP, ALL
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_scan_mode(bt_avrcp_scan_mode_e *mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the position of the song played by the remote device.
- * @since_tizen 3.0
- * @param[out] position The position, in milliseconds
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_position(unsigned int *position);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the play status of the remote device.
- * @since_tizen 3.0
- * @param[out] status The play status, one of: PLAYING, STOPPED...
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_play_status(bt_avrcp_player_state_e *status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Gets the metadata of the track played by the remote device.
- * @since_tizen 3.0
- * @remarks The @a track must be released using bt_avrcp_control_free_track_info()
- * @param[out] track The track metadata.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_avrcp_target_connection_state_changed_cb()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_get_track_info(bt_avrcp_metadata_attributes_info_s **track);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_CONTROL_MODULE
- * @brief Frees the track metadata.
- * @since_tizen 3.0
- * @param[in] track The track metadata.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre track should point to valid metadata address.
- * @see bt_avrcp_control_get_track_info()
- * @see bt_avrcp_target_initialize()
- */
-int bt_avrcp_control_free_track_info(bt_avrcp_metadata_attributes_info_s *track);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers an application that acts as the @a Sink role of HDP(Health Device Profile).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @remarks The @a app_id must be released with free() by you.
- * @param[in] data_type The data type of MDEP. This value is defined in ISO/IEEE 11073-20601 spec.
- * For example, pulse oximeter is 0x1004 and blood pressure monitor is 0x1007.
- * @param[out] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_hdp_unregister_sink_app()
- */
-int bt_hdp_register_sink_app(unsigned short data_type, char **app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters the given application that acts as the @a Sink role of HDP(Health Device Profile).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hdp_register_sink_app()
- */
-int bt_hdp_unregister_sink_app(const char *app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Connects the remote device which acts as @a Source role, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] app_id The ID of application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Sink role of HDP must be registered with bt_hdp_register_sink_app().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_hdp_connected_cb() will be invoked.
- * @see bt_hdp_disconnect()
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_connect_to_source(const char *remote_address, const char *app_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Disconnects the remote device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] channel The connected data channel
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @post bt_hdp_disconnected_cb() will be invoked.
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_disconnect(const char *remote_address, unsigned int channel);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Sends the data to the remote device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] channel The connected data channel
- * @param[in] data The data to send
- * @param[in] size The size of data to send (byte)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected.
- * @see bt_hdp_data_received_cb()
- * @see bt_hdp_set_data_received_cb()
- * @see bt_hdp_unset_data_received_cb()
- */
-int bt_hdp_send_data(unsigned int channel, const char *data, unsigned int size);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] connected_cb The callback function called when a connection is established
- * @param[in] disconnected_cb The callback function called when a connection is disconnected
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-int bt_hdp_set_connection_state_changed_cb(bt_hdp_connected_cb connected_cb, bt_hdp_disconnected_cb disconnected_cb, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_set_connection_state_changed_cb()
- */
-int bt_hdp_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Registers a callback function that will be invoked when you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_unset_data_received_cb()
- */
-int bt_hdp_set_data_received_cb(bt_hdp_data_received_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Unregisters a callback function that will be invoked when you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hdp_set_data_received_cb()
- */
-int bt_hdp_unset_data_received_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks @a value must be released using free(). \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[out] value The value of @a gatt_handle. It is a byte stream type.
- * @param[out] value_length The length of @a value
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_value(bt_gatt_h gatt_handle, char **value, int *value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle as an integer type.
- * @since_tizen 2.3.1
- *
- * @remarks This function returns a locally saved value in @a gatt_handle. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type The type of a saved value in @a gatt_handle
- * @param[in] offset The offset from where a value will be read from @a gatt_handle as an integer type
- * @param[out] value The integer type's value of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_int_value(bt_gatt_h gatt_handle, bt_data_type_int_e type,
- int offset, int *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the value of a characteristic or descriptor's GATT handle as a float type.
- * @since_tizen 2.3.1
- *
- * @remarks This function returns a locally saved value in @a gatt_handle. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_read_value() must be used prior to this function \n
- * in order to get the remote device's current value.
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type The type of a saved value in @a gatt_handle
- * @param[in] offset The offset from where a value will be read from @a gatt_handle as an integer type
- * @param[out] value The float type's value of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_float_value(bt_gatt_h gatt_handle, bt_data_type_float_e type,
- int offset, float *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] value The value to be updated
- * @param[in] value_length The length of @a value
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_value(bt_gatt_h gatt_handle, const char *value, int value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle using a integer type's value.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type @a value will be saved in @a gatt_handle as this type
- * @param[in] value The integer type's value to be updated
- * @param[in] offset The offset from where @a value will be saved in @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_int_value(bt_gatt_h gatt_handle, bt_data_type_int_e type,
- int value, int offset);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the value of a characteristic or descriptor's GATT handle using a float type's value.
- * @since_tizen 2.3.1
- *
- * @remarks This function updates a value of @a gatt_handle locally. \n
- * When @a gatt_handle is associated with bt_gatt_client_h, bt_gatt_client_write_value() can be used after this function \n
- * in order to update the remote device's value. \n
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] type @a mantissa and @a exponent will be saved in @a gatt_handle as this type
- * @param[in] mantissa The mantissa of float type's value to be updated
- * @param[in] exponent The exponent of float type's value to be updated
- * @param[in] offset The offset from where @a mantissa and @a exponent will be saved in @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_set_float_value(bt_gatt_h gatt_handle, bt_data_type_float_e type,
- int mantissa, int exponent, int offset);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the UUID of a service, characteristic or descriptor's GATT handle.
- * @since_tizen 2.3.1
- *
- * @remarks @a uuid must be released using free(). \n
- * 16-bit UUID or 128-bit UUID is supported. (e.g. 2A19, 00002A19-0000-1000-8000-00805F9B34FB)
- *
- * @param[in] gatt_handle The handle of a service, characteristic or descriptor
- * @param[out] uuid The string of the UUID of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_uuid(bt_gatt_h gatt_handle, char **uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the type of GATT handle.
- * @since_tizen 2.3.1
- *
- * @param[in] gatt_handle The GATT handle
- * @param[out] gatt_type The type of @a gatt_handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_get_type(bt_gatt_h gatt_handle, bt_gatt_type_e *gatt_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the GATT client handle which the specified service belongs to.
- * @since_tizen 2.3.1
- *
- * @remark This function doesn't allocate new memory for GATT client handle.
- * The returned GATT client handle is the same one which was got from bt_gatt_client_create().
- * So if it is destroyed by bt_gatt_client_destroy(), all related GATT handles are freed also.
- *
- * @param[in] service The service's GATT handle
- * @param[out] client The GATT client handle which @a service belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_service_get_client(bt_gatt_h service, bt_gatt_client_h *client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a characteristic's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple characteristics which have same UUID, only the first matched one will be returned.
- *
- * @param[in] service The service's GATT handle
- * @param[in] uuid The characteristic's GATT handle which has this UUID will be returned if it exists
- * @param[out] characteristic The characteristic's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_service_get_characteristic(bt_gatt_h service, const char *uuid,
- bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each characteristic that belongs to the specified service.
- * @since_tizen 2.3.1
- *
- * @param[in] service The service's GATT handle
- * @param[in] callback The function to be invoked on each characteristic
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_service_foreach_characteristics(bt_gatt_h service,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets an included service's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple included services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] service The service's GATT handle
- * @param[in] uuid The included service's GATT handle which has this UUID will be returned if it exists
- * @param[out] included_service The included service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_service_get_included_service(bt_gatt_h service, const char *uuid,
- bt_gatt_h *included_service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each included service that belongs to the specified service.
- * @since_tizen 2.3.1
- *
- * @param[in] service The service's GATT handle
- * @param[in] callback The function to be invoked on each included service
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_service_foreach_included_services(bt_gatt_h service,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the service's GATT handle which the specified characteristic belongs to.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] service The service's GATT handle which @a characteristic belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_characteristic_get_service(bt_gatt_h characteristic, bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the properties which a characteristic's GATT handle has.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] properties The properties which a characteristic's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_property_e
- */
-int bt_gatt_characteristic_get_properties(bt_gatt_h characteristic, int *properties);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the write type of the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[out] write_type The write type of the specified characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_write_type_e
- */
-int bt_gatt_characteristic_get_write_type(bt_gatt_h characteristic,
- bt_gatt_write_type_e *write_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Updates the write type of the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] write_type The write type to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_write_value()
- * @see bt_gatt_write_type_e
- */
-int bt_gatt_characteristic_set_write_type(bt_gatt_h characteristic,
- bt_gatt_write_type_e write_type);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a descriptor's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple descriptors which have same UUID, only the first matched one will be returned.
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] uuid The descriptor's GATT handle which has this UUID will be returned if it exists
- * @param[out] descriptor The descriptor's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_characteristic_get_descriptor(bt_gatt_h characteristic, const char *uuid,
- bt_gatt_h *descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each descriptor that belongs to the specified characteristic.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] callback The function to be invoked on each descriptor
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_characteristic_foreach_descriptors(bt_gatt_h characteristic,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the characteristic's GATT handle which the specified descriptor belongs to.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- *
- * @param[in] descriptor The descriptor's GATT handle
- * @param[out] characteristic The characteristic's GATT handle which @a descriptor belongs to
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_descriptor_get_characteristic(bt_gatt_h descriptor, bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Creates the GATT client handle.
- * @since_tizen 2.3.1
- *
- * @remark The GATT client handle must be freed by bt_gatt_client_destroy() after use
- *
- * @param[in] remote_address The address of the remote device
- * @param[out] client The created GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_destroy()
- */
-int bt_gatt_client_create(const char *remote_address, bt_gatt_client_h *client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Destroys the GATT client's handle.
- * @since_tizen 2.3.1
- *
- * @remark All related service, characteristic and descriptor's GATT handles are freed also
- *
- * @param[in] client The GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_client_destroy(bt_gatt_client_h client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the address of remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] client The created GATT client's handle
- * @param[out] remote_address The address of the remote device which is associated with @a client
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- */
-int bt_gatt_client_get_remote_address(bt_gatt_client_h client,
- char **remote_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Reads the value of a characteristic or descriptor from the remote device asynchronously.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback When a read request is completed, this callback function will be called
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- * @see bt_gatt_client_request_completed_cb()
- */
-int bt_gatt_client_read_value(bt_gatt_h gatt_handle,
- bt_gatt_client_request_completed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Writes the value of a characteristic or descriptor to the remote device asynchronously.
- * @since_tizen 2.3.1
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback When a write request is completed, this callback function will be called
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_create()
- * @see bt_gatt_characteristic_set_write_type()
- * @see bt_gatt_set_value()
- * @see bt_gatt_set_int_value()
- * @see bt_gatt_set_float_value()
- * @see bt_gatt_client_request_completed_cb()
- */
-int bt_gatt_client_write_value(bt_gatt_h gatt_handle,
- bt_gatt_client_request_completed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function to be invoked when the characteristic value is changed on the remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] callback The callback to be invoked when the value is changed and it is informed
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_characteristic_value_changed_cb()
- * @see bt_gatt_client_unset_characteristic_value_change()
- */
-int bt_gatt_client_set_characteristic_value_changed_cb(bt_gatt_h characteristic,
- bt_gatt_client_characteristic_value_changed_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function to be invoked when the characteristic value is changed on the remote device.
- * @since_tizen 2.3.1
- *
- * @param[in] characteristic The characteristic's GATT handle, whose value change will not be informed
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-int bt_gatt_client_unset_characteristic_value_changed_cb(bt_gatt_h characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets a service's GATT handle which has specific UUID.
- * @since_tizen 2.3.1
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated client is destroyed by bt_gatt_client_destroy().
- * If there are multiple services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] client The GATT client's handle
- * @param[in] uuid The service's GATT handle which has this UUID will be returned if it exists
- * @param[out] service The service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_client_get_service(bt_gatt_client_h client, const char *uuid,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Invokes @a callback function on each service that belongs to the specified GATT client.
- * @since_tizen 2.3.1
- *
- * @param[in] client The GATT client's handle
- * @param[in] callback The function to be invoked on each service
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_client_foreach_services(bt_gatt_client_h client,
- bt_gatt_foreach_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function to be invoked when service is changed from a remote device(GATT server).
- * @since_tizen 3.0
- *
- * @param[in] client The GATT client's handle
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_unset_service_changed_cb()
- */
-int bt_gatt_client_set_service_changed_cb(bt_gatt_client_h client,
- bt_gatt_client_service_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function
- * @since_tizen 3.0
- *
- * @param[in] client The GATT client's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_client_set_service_changed_cb()
- */
-int bt_gatt_client_unset_service_changed_cb(bt_gatt_client_h client);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Connect to a specific LE based service on a remote bluetooth device address, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks A connection can be disconnected by bt_gatt_disconnect().
- *
- * @param[in] address The address of the remote Bluetooth device.
- * @param[in] auto_connect The flag of the auto connection.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @pre The remote device must support le connection.
- * @post This function invokes bt_gatt_connection_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_connect(const char *address, bool auto_connect);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Disconnect to LE connection with the given remote Bluetooth device address, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The address of the remote Bluetooth device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection must be established.
- * @post This function invokes bt_gatt_connection_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_gatt_connect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_disconnect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register.
- * @param[in] user_data The user data to be passed to the callback function.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_unset_connection_state_changed_cb()
- */
-int bt_gatt_set_connection_state_changed_cb(bt_gatt_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_connection_state_changed_cb()
- */
-int bt_gatt_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of service.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- */
-int bt_gatt_service_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of characteristic.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- */
-int bt_gatt_characteristic_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT handle of descriptor.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_descriptor_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the permissions which a characteristic's GATT handle has.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- *
- * @param[in] gatt_handle The handle of a characteristic
- * @param[out] permissions The permissions which a characteristic's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_characteristic_get_permissions(bt_gatt_h gatt_handle, int *permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the permissions which a descriptor's GATT handle has.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- *
- * @param[in] gatt_handle The handle of a descriptor
- * @param[out] permissions The permissions which a descriptor's GATT handle has
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_descriptor_get_permissions(bt_gatt_h gatt_handle, int *permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT service.
- * @since_tizen 3.0
- *
- * @remarks The @a service should be destroyed by using bt_gatt_service_destroy()
- *
- * @param[in] uuid The UUID of the service
- * @param[in] type The type of the service
- * @param[out] service The GATT handle of the created service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_destroy()
- */
-int bt_gatt_service_create(const char *uuid, bt_gatt_service_type_e type,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a characteristic to a specified service.
- * @since_tizen 3.0
- *
- * @param[in] service The service's GATT handle
- * @param[in] characteristic The characteristic's GATT handle to be added
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- * @see bt_gatt_characteristic_create()
- */
-int bt_gatt_service_add_characteristic(bt_gatt_h service,
- bt_gatt_h characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a service to a specified service as included service.
- * @since_tizen 3.0
- *
- * @param[in] service The service's GATT handle
- * @param[in] included_service The service's GATT handle to be added as included service
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- */
-int bt_gatt_service_add_included_service(bt_gatt_h service,
- bt_gatt_h included_service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets the GATT server handle to which the specified service belongs.
- * @since_tizen 3.0
- *
- * @remarks The returned Server handle must not be freed by application.
- *
- * @param[in] service The service's GATT handle
- * @param[out] server The GATT server handle to which @a service belongs
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_service_get_server(bt_gatt_h service, bt_gatt_server_h *server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT characteristic.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- * @remarks The @a properties can be one or more values of #bt_gatt_property_e, combined with bitwise 'or'.
- * @remarks The @a characteristic should be destroyed by using bt_gatt_characteristic_destroy().
- *
- * @param[in] uuid The UUID of the characteristic
- * @param[in] permissions the permissions of the characteristic
- * @param[in] properties The properties of the characteristic
- * @param[in] value The value(byte stream) of the characteristic
- * @param[in] value_length The length of @a value
- * @param[out] characteristic The GATT handle of the created characteristic
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_destroy()
- */
-int bt_gatt_characteristic_create(const char *uuid, int permissions,
- int properties, const char *value, int value_length,
- bt_gatt_h *characteristic);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Adds a descriptor to a specified characteristic.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The GATT handle of the characteristic
- * @param[in] descriptor The descriptor's GATT handle to be added
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_characteristic_add_descriptor(bt_gatt_h characteristic,
- bt_gatt_h descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT characteristic descriptor.
- * @since_tizen 3.0
- *
- * @remarks The @a permissions can be one or more values of #bt_gatt_permission_e, combined with bitwise 'or'.
- * @remarks The @a descriptor should be destroyed by using bt_gatt_descriptor_destroy().
- *
- * @param[in] uuid The UUID of the descriptor
- * @param[in] permissions The permissions of the descriptor
- * @param[in] value The value(byte stream) associated with the descriptor
- * @param[in] value_length The length of @a value
- * @param[out] descriptor The GATT handle of the created characteristic descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_descriptor_destroy()
- */
-int bt_gatt_descriptor_create(const char *uuid, int permissions,
- const char *value, int value_length,
- bt_gatt_h *descriptor);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Initializes the GATT Server.
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_server_deinitialize()
- */
-int bt_gatt_server_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief DeInitializes the GATT server.
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @see bt_gatt_server_initialize()
- */
-int bt_gatt_server_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Creates the GATT server's handle.
- * @since_tizen 3.0
- *
- * @remarks The @a server handle should be destroyed by using bt_gatt_server_destroy()
- *
- * @param[out] server The GATT server's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_destroy()
- */
-int bt_gatt_server_create(bt_gatt_server_h *server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Destroys the GATT server's handle.
- * @since_tizen 3.0
- *
- * @remarks All registered services to GATT server are unregistered
- *
- * @param[in] server The GATT server's handle
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- */
-int bt_gatt_server_destroy(bt_gatt_server_h server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when a read request for a specified characteristic or descriptor is issued from a remote device(GATT client).
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_read_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-int bt_gatt_server_set_read_value_requested_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_read_value_requested_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when the remote device enables or disables the Notification/Indication for particular characteristics.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_characteristic_notification_state_changed_cb()
- */
-int bt_gatt_server_set_characteristic_notification_state_change_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_characteristic_notification_state_changed_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a callback function to be invoked when a value of a characteristic or descriptor has been changed by a remote device(GATT client)'s request.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The GATT handle of a characteristic or descriptor
- * @param[in] callback The callback to be invoked
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_write_value_requested_cb()
- */
-int bt_gatt_server_set_write_value_requested_cb(bt_gatt_h gatt_handle,
- bt_gatt_server_write_value_requested_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers a specified service to the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @param[in] service The service, which needs to be registered in @a server
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_start()
- * @see bt_gatt_server_unregister_service()
- */
-int bt_gatt_server_register_service(bt_gatt_server_h server, bt_gatt_h service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Unregisters a specified service from the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @param[in] service The service, which needs to be unregistered from @a server
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_SERVICE_NOT_FOUND Service not found
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_server_unregister_service(bt_gatt_server_h server, bt_gatt_h service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Unregisters all services from the specified GATT server that the local device is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] server The GATT server that local device is hosting
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_register_service()
- */
-int bt_gatt_server_unregister_all_services(bt_gatt_server_h server);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Registers the application along with the GATT services of the application it is hosting.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_initialize()
- * @see bt_gatt_server_create()
- * @see bt_gatt_service_create()
- * @see bt_gatt_server_unregister_service()
- */
-int bt_gatt_server_start(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Sends a response to the remote device as a result of a read/write request.
- * @since_tizen 3.0
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @remarks Until this function is called, a read/write request is not finished.
- *
- * @param[in] request_id The identification of a read/write request
- * @param[in] request_type The request type for read/write
- * @param[in] offset The offset from where a value is read
- * @param[in] resp_status The application error if any occurred or BT_ERROR_NONE for successful.
- * @param[in] value The value to be sent. It will be sent from @a offset. If it is NULL, a requested GATT handle's value will be sent from @a offset.
- * @param[in] value_length Value Length
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_read_value_requested_cb()
- */
-int bt_gatt_server_send_response(int request_id, bt_gatt_att_request_type_e request_type,
- int offset, int resp_status, char *value, int value_length);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Notifies value change of the characteristic to the remote devices which enable a Client Characteristic Configuration Descriptor.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The characteristic which has a changed value
- * @param[in] callback The function to be invoked on each remote device when a sending operation is done
- * @param[in] device_address Remote device address to send notify or indicate and if set to NULL then notify/indicate all is enabled.
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_server_notification_sent_cb()
- */
-int bt_gatt_server_notify_characteristic_changed_value(bt_gatt_h characteristic,
- bt_gatt_server_notification_sent_cb callback,
- const char *device_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Gets a service's GATT handle which has specific UUID.
- * @since_tizen 3.0
- *
- * @remark The returned GATT handle must not be freed by application.
- * It will be freed when an associated server is destroyed by bt_gatt_server_destroy().
- * If there are multiple services which have same UUID, only the first matched one will be returned.
- *
- * @param[in] server The GATT server's handle
- * @param[in] uuid The service's GATT handle which has this UUID will be returned if it exists
- * @param[out] service The service's GATT handle which has @a uuid if it exists
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NO_DATA No data available
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_gatt_server_get_service(bt_gatt_server_h server, const char *uuid,
- bt_gatt_h *service);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Invokes @a callback function on each service that belongs to the specified GATT server.
- * @since_tizen 3.0
- *
- * @param[in] server The GATT server's handle
- * @param[in] callback The function to be invoked on each service
- * @param[in] user_data The user data to be passed to @a callback function
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_foreach_cb()
- */
-int bt_gatt_server_foreach_services(bt_gatt_server_h server,
- bt_gatt_foreach_cb callback, void *user_data);
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Initializes the Bluetooth PBAP Client.
- * @details This initialization is necessary to call other PBAP client APIs.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @remarks This function must be called to initialize Bluetooth PBAP client. You must free all resources of the Bluetooth service
- * by calling bt_pbap_client_deinitialize() if Bluetooth PBAP Client is no longer needed.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_pbap_client_deinitialize()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_pull_vcard()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Deinitializes the Bluetooth PBAP Client.
- * @details This deinitialization must be done to free resources when the PBAP client is not longer needed.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_deinitialize()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_pull_vcard()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_initialize()
- */
-int bt_pbap_client_set_connection_state_changed_cb(bt_pbap_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state is changed.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @see bt_pbap_client_initialize()
- */
-int bt_pbap_client_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Connects to PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_pbap_connection_state_changed_cb() will be invoked.
- * @see bt_pbap_client_disconnect()
- * @see bt_pbap_client_set_connection_state_changed_cb()
- */
-int bt_pbap_client_connect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Disconnects from PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- * @post bt_pbap_connection_state_changed_cb() will be invoked.
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_set_connection_state_changed_cb()
- */
-int bt_pbap_client_disconnect(const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets size of phone book from PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of the phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] callback The callback function called when PBAP phone book size is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book size callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_phone_book_size(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_phone_book_size_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets all contacts and call logs as vCard from PBAP server, asynchronously.
- * @details The received phone book file will be saved in the platform downloads folder.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- * http://tizen.org/privilege/mediastorage
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] format The vCard format
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset The number of vCards to be excluded, counting from the beginning
- * @param[in] max_list_count The maximum number of vCards to be fetched
- * @param[in] fields vCard fields to be fetched; one or more #bt_pbap_field_e values combined with bitwise 'or'
- * @param[in] callback The callback function called when PBAP phone book is Pulled.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_phone_book(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_vcard_format_e format,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- unsigned int fields,
- bt_pbap_phone_book_received_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets contact and call log information from the PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset vCards to be excluded from beginning.
- * @param[in] max_list_count Maximum number of vCards to be fetched
- * @param[in] callback The callback function called when PBAP List is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_get_list(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- bt_pbap_list_vcards_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets the selected contact using the index parameter as vCard from PBAP server, asynchronously.
- * @details The received phone book file will be saved in the platform downloads folder.
- * The @a index value should be equal to the value of the @a index field in the #bt_pbap_vcard_info_s structure,
- * which can be obtained with bt_pbap_client_get_list() or bt_pbap_client_search_phone_book().
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- * http://tizen.org/privilege/mediastorage
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] index The handle index of vCard to be fetched
- * @param[in] format Format of vCard
- * @param[in] fields vCard fields to be fetched; one or more #bt_pbap_field_e values combined with bitwise 'or'
- * @param[in] callback The callback function called when PBAP phone book is Pulled.
- * @param[in] user_data Data to be passed to the PBAP phone book Pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- * @pre The vCard information (#bt_pbap_vcard_info_s) must be obtained with bt_pbap_client_get_list() or bt_pbap_client_search_phone_book().
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_search_phone_book()
- */
-int bt_pbap_client_pull_vcard(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- int index,
- bt_pbap_vcard_format_e format,
- unsigned int fields,
- bt_pbap_phone_book_received_cb callback,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Finds and fetches the contact and call log information from the PBAP server, asynchronously.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel public
- * @privilege http://tizen.org/privilege/bluetooth
- *
- * @param[in] address The other device's address
- * @param[in] source Source of phone book (Phone/SIM)
- * @param[in] folder_type Type of folder
- * @param[in] search_attribute field to be search
- * @param[in] search_value pattern to be searched for
- * @param[in] order Specifies which field shall be used to sort vCards.
- * @param[in] offset vCards to be excluded from beginning.
- * @param[in] max_list_count Maximum number of vCards to be fetched
- * @param[in] callback The callback function called when PBAP List is returned.
- * @param[in] user_data Data to be passed to the PBAP phone book pulling callback.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of the local Bluetooth adapter must be #BT_ADAPTER_ENABLED.
- * @pre The PBAP client must be initialized with bt_pbap_client_initialize().
- * @pre PBAP connection must be created with bt_pbap_client_connect().
- *
- * @see bt_pbap_client_connect()
- */
-int bt_pbap_client_search_phone_book(const char *address,
- bt_pbap_address_book_source_e source,
- bt_pbap_folder_type_e folder_type,
- bt_pbap_search_field_e search_attribute,
- const char *search_value,
- bt_pbap_sort_order_e order,
- unsigned short offset,
- unsigned short max_list_count,
- bt_pbap_list_vcards_cb callback,
- void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_H__ */
diff --git a/include/wearable/bluetooth_extension.h b/include/wearable/bluetooth_extension.h
deleted file mode 100644
index 64c76c8..0000000
--- a/include/wearable/bluetooth_extension.h
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__
-#define __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__
-
-#include "bluetooth_type.h"
-#include "bluetooth_type_extension.h"
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_extension.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Opens a SCO(Synchronous Connection Oriented link) to connected remote device, asynchronously.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @post bt_ag_sco_state_changed_cb() will be invoked.
- * @see bt_ag_close_sco()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_audio_connect()
- */
-int bt_ag_open_sco(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Closes an opened SCO(Synchronous Connection Oriented link), asynchronously.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The SCO must be opened with bt_ag_open_sco().
- * @post bt_ag_sco_state_changed_cb() will be invoked.
- * @see bt_ag_open_sco()
- * @see bt_ag_sco_state_changed_cb()
- */
-int bt_ag_close_sco(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether an opened SCO(Synchronous Connection Oriented link) exists or not.
- * @since_tizen 2.3
- * @param[out] opened The SCO status: (@c true = opened, @c false = not opened)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-int bt_ag_is_sco_opened(bool *opened);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen 2.3
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- */
-int bt_ag_set_sco_state_changed_cb(bt_ag_sco_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_set_sco_state_changed_cb()
- */
-int bt_ag_unset_sco_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_voice_recognition_state(bool state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the speaker gain to the remote device.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details This function sends a signal to the remote device. This signal has the gain value.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * When the speaker gain of remote device is changed to the requested gain, bt_audio_speaker_gain_changed_cb() will be called.
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_ag_get_speaker_gain()
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_notify_speaker_gain(int gain);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Gets the current speaker gain of the remote device.
- * @since_tizen 2.3
- * @details This function gets the value of speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[out] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_ag_notify_speaker_gain()
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_get_speaker_gain(int *gain);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen 2.3
- * @details This function let you know the change of the speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-int bt_ag_set_speaker_gain_changed_cb(bt_ag_speaker_gain_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_set_speaker_gain_changed_cb()
- */
-int bt_ag_unset_speaker_gain_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when the microphone gain of the remote device is changed.
- * @since_tizen 2.3
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_unset_microphone_gain_changed_cb()
- */
-int bt_ag_set_microphone_gain_changed_cb(bt_ag_microphone_gain_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when the microphone gain of the remote device is changed.
- * @since_tizen 2.3
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_set_microphone_gain_changed_cb()
- */
-int bt_ag_unset_microphone_gain_changed_cb(void);
-
-/**
- * @}
- */
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_EXTENSION_H__ */
-
diff --git a/include/wearable/bluetooth_internal.h b/include/wearable/bluetooth_internal.h
deleted file mode 100644
index 893e614..0000000
--- a/include/wearable/bluetooth_internal.h
+++ /dev/null
@@ -1,3467 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__
-#define __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__
-
-#include <glib.h>
-#include "bluetooth_type.h"
-#include "bluetooth_type_internal.h"
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_internal.h
- */
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enables the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function enables Bluetooth protocol stack and hardware.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_ALREADY_DONE Already enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @pre The state of local Bluetooth must be #BT_ADAPTER_DISABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_adapter_get_state()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- * @see bt_adapter_state_changed_cb()
- *
- */
-int bt_adapter_enable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Disables the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function disables Bluetooth protocol stack and hardware.
- *
- * @remarks You should disable Bluetooth adapter, which is helpful for saving power.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_adapter_get_state()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb ()
- *
- */
-int bt_adapter_disable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Recover the local Bluetooth adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function does recovery logic, disables Bluetooth protocol stack and hardware, then enables after a few seconds.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @post This function invokes bt_adapter_state_changed_cb().
- *
- * @see bt_adapter_get_state()
- * @see bt_adapter_state_changed_cb()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb ()
- *
- */
-int bt_adapter_recover(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Reset the local Bluetooth adapter, synchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function resets Bluetooth protocol and values.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_state_changed_cb() will be invoked if The state of local Bluetooth was #BT_ADAPTER_ENABLED.
- *
- * @see bt_initialize()
- * @see bt_adapter_get_state()
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- * @see bt_adapter_state_changed_cb()
- *
- */
-int bt_adapter_reset(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the version of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a local_version must be released with free() by you.
- *
- * @param[out] local_version The version of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_version(char **local_version);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the information regarding local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @remarks The @a all parameters must be released with free() by you.
- *
- * @param[out] chipset Chipset name of local Bluetooth adapter
- * @param[out] firmware Firmware info. of local Bluetooth adapter
- * @param[out] stack_version Bluetooth stack version
- * @param[out] profiles The profile list of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_local_info(char **chipset, char **firmware, char **stack_version, char **profiles);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the visibility mode.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE will change to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE
- * after the given @a duration goes.
- *
- * @param[in] discoverable_mode The Bluetooth visibility mode to set
- * @param[in] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds).
- * @a duration is used only for #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE mode.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_visibility_mode_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_visibility()
- * @see bt_adapter_visibility_mode_changed_cb()
- * @see bt_adapter_set_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-int bt_adapter_set_visibility(bt_adapter_visibility_mode_e discoverable_mode, int duration);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function that will be invoked when remote device requests authentication.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @param[in] callback callback function to be set when a request is received.
- * @param[in] user_data data from application which will be provided in callback.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @see bt_initialize()
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_set_authentication_req_cb(bt_adapter_authentication_req_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters a callback function that will be invoked when remote device requests authentication.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @see bt_initialize()
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_unset_authentication_req_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief API to reply with PIN or PASSKEY with authentication type - TRUE or FALSE.
- * @remarks This function can be called by application when remote device requests PIN or PASSKEY from
- * local adapter.
- * @param[in] passkey The passkey to be provided by application when remote devices requests for it.
- * @param[in] authentication_reply This indicates whether application wants to accept or cancel the on-going pairing
- * @pre This function can only be called when application receieves authentication event (BT_AUTH_PIN_REQUEST)
- * from remote device.
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_passkey_reply(char *passkey, bool authentication_reply);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief API to reply to the PASSKEY confirmation for on-going pairing with remote device.
- * @remarks This function can be called by application, when local adapter wants PASSKEY confirmation from user.
- * @param[in] confirmation_reply This indicates whether application wants to accepts or cancels the on-going pairing
- * confirmation_reply : TRUE will indicate that Application has confirmed the PASSKEY
- * confirmation_reply : FALSE will indicate that Application has failed to confirm the PASSKEY. In this situation
- * the pairing will be failed.
- * @pre This function can only be called when application receives authentication event (BT_AUTH_PASSKEY_CONFIRM_REQUEST)
- * from remote device.
- * @see bt_adapter_set_authentication_req_cb()
- */
-int bt_adapter_passkey_confirmation_reply(bool confirmation_reply);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked when the connectable state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_connectable_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-int bt_adapter_set_connectable_changed_cb(bt_adapter_connectable_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_connectable_changed_cb()
- */
-int bt_adapter_unset_connectable_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Gets the connectable state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks When connectable state is false, no device can connect to this device and visibility mode cannot be changed.
- *
- * @param[out] connectable The connectable state of local Bluetooth adapter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_set_connectable()
- */
-int bt_adapter_get_connectable(bool *connectable);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the connectable state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks When connectable state is false, no device can connect to this device and visibility mode cannot be changed.
- *
- * @param[in] connectable The connectable state to set
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_connectable_changed_cb() will be invoked if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_get_connectable()
- * @see bt_adapter_connectable_changed_cb()
- * @see bt_adapter_set_connectable_changed_cb()
- * @see bt_adapter_unset_connectable_changed_cb()
- */
-int bt_adapter_set_connectable(bool connectable);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Sets the manufacturer data of local Bluetooth adapter.
- * @since_tizen 2.3
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] data The manufacturer specific data of the Bluetooth device.
- * @param[in] len The length of @a data.Maximaum length is 240 bytes.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @post bt_adapter_manufacturer_data_changed_cb() will be invoked
- * if this function returns #BT_ERROR_NONE.
- *
- * @see bt_adapter_manufacturer_data_changed_cb
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-int bt_adapter_set_manufacturer_data(char *data, int len);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Registers a callback function to be invoked
- * when the manufacturer data of Bluetooth adapter changes.
- * @since_tizen 2.3
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_manufacturer_data_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_unset_manufacturer_data_changed_cb()
- */
-int bt_adapter_set_manufacturer_data_changed_cb(
- bt_adapter_manufacturer_data_changed_cb callback,
- void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen 2.3
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_set_manufacturer_data_changed_cb()
- */
-int bt_adapter_unset_manufacturer_data_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enables the local Bluetooth le adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function enables Bluetooth protocol stack and hardware.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_ALREADY_DONE Already enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- * @post This function invokes bt_adapter_le_state_changed_cb().
- *
- * @see bt_initialize()
- * @see bt_adapter_le_get_state()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- * @see bt_adapter_le_state_changed_cb()
- *
- */
-int bt_adapter_le_enable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Disables the local Bluetooth le adapter, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @details This function disables Bluetooth le protocol stack and hardware.
- *
- * @remarks
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_LE_ENABLED
- * @post This function invokes bt_adapter_le_state_changed_cb().
- *
- * @see bt_adapter_le_get_state()
- * @see bt_adapter_le_state_changed_cb()
- * @see bt_adapter_le_set_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb ()
- *
- */
-int bt_adapter_le_disable(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Gets the current state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] adapter_le_state The current adapter le state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- */
-int bt_adapter_le_get_state(bt_adapter_le_state_e *adapter_le_state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Registers a callback function to be invoked when the Bluetooth adapter le state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] callback The callback function to invoke
- * @param[in] user_data The user data to be passed to the callback function
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_adapter_le_state_changed_cb() will be invoked.
- *
- * @see bt_initialize()
- * @see bt_adapter_le_state_changed_cb()
- * @see bt_adapter_le_unset_state_changed_cb()
- */
-int bt_adapter_le_set_state_changed_cb(bt_adapter_le_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters the callback function.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_initialize()
- * @see bt_adapter_le_set_state_changed_cb()
- */
-int bt_adapter_le_unset_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief add address to whitelist for accepting scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks If the adress is in the whitelist then other LE devices are able to
- * search this device. Before calling this API, make sure that the adapter is
- * enabled. There is no callback event for this API.
-
- * @param[in] address The other device's address
- * @param[in] address_type The other device's address type
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-int bt_adapter_le_add_white_list(const char *address, bt_device_address_type_e address_type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief remove address from the whitelist for not accepting scanning request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks If the adress is in the whitelist then other LE devices are able to
- * search this device. Before calling this API, make sure that the adapter is
- * enabled. There is no callback event for this API.
- *
- * @param[in] address The other device's address
- * @param[in] address_type The other device's address type
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Adapter is not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-int bt_adapter_le_remove_white_list(const char *address, bt_device_address_type_e address_type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Sets the Privacy feature state of local Bluetooth adapter.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] enable_privacy The privacy feature to set/unset.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The state of local Bluetooth must be #BT_ADAPTER_LE_ENABLED.
- *
- */
-int bt_adapter_le_enable_privacy(bool enable_privacy);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Creates scan filter to find only LE advertisement which has specific data.
- * @since_tizen 2.4
- *
- * @param[out] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_destroy_scan_filter()
- */
-int bt_adapter_le_create_scan_filter(bt_scan_filter_h *scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Destroys scan filter.
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_create_scan_filter()
- */
-int bt_adapter_le_destroy_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the device address to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] address The device address to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_device_address(bt_scan_filter_h scan_filter, const char *address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the device name to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] name The device name to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_device_name(bt_scan_filter_h scan_filter, const char *name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service UUID to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_uuid(bt_scan_filter_h scan_filter, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service uuid and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] mask The mask to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_uuid_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *mask);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service solicitation UUID to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service solicitation UUID to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_solicitation_uuid(bt_scan_filter_h scan_filter, const char *uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service solicitation uuid and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service solicitation uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service solicitation UUID to filter advertisements
- * @param[in] mask The mask to filter advertisements
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_solicitation_uuid_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *mask);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service data to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] data The service data to filter advertisements
- * @param[in] data_len The length of the service data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_data(bt_scan_filter_h scan_filter,
- const char *uuid, const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the service data and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service data.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] uuid The service UUID to filter advertisements
- * @param[in] data The service data to filter advertisements
- * @param[in] data_len The length of the service data
- * @param[in] mask The mask to filter advertisements
- * @param[in] mask_len The length of the mask to be set.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_service_data_with_mask(bt_scan_filter_h scan_filter,
- const char *uuid, const char *data, unsigned int data_len, const char *mask, unsigned int mask_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the manufacturer data to filter advertisements
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] manufacturer_id The manufacturer ID (0x0000 ~ 0xFFFF)
- * @param[in] data The manufacturer data (byte array)
- * @param[in] data_len The length of manufacturer data
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_manufacturer_data(bt_scan_filter_h scan_filter,
- int manufacturer_id, const char *data, unsigned int data_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Adds the manufacturer data and the mask to filter advertisements by partial data
- * @since_tizen 2.4
- *
- * @remarks the length of mask msut be the same with the length of service uuid.
- *
- * @param[in] scan_filter The handle of scan filter
- * @param[in] manufacturer_id The manufacturer ID (0x0000 ~ 0xFFFF)
- * @param[in] data The manufacturer data (byte array)
- * @param[in] data_len The length of manufacturer data
- * @param[in] mask The mask to filter advertisements
- * @param[in] mask_len The length of the mask to be set.
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_scan_filter_set_manufacturer_data_with_mask(bt_scan_filter_h scan_filter,
- int manufacturer_id, const char *data, unsigned int data_len, const char *mask, unsigned int mask_len);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Registers the scan filter to use for scanning
- * @since_tizen 2.4
- *
- * @remarks Several scan filters can be registered. And the specific advertisements, satisfy the one of scan filters, will be found.
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_register_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters the scan filter to be registered
- * @since_tizen 2.4
- *
- * @param[in] scan_filter The handle of scan filter
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_unregister_scan_filter(bt_scan_filter_h scan_filter);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Unregisters all scan filters to be registered
- * @since_tizen 2.4
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOW_IN_PROGRESS Scan is in progress
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- */
-int bt_adapter_le_unregister_all_scan_filters(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Set advertising filter policy to use white list
- * @since_tizen 2.4
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- *
- * @param[in] advertiser The handle of advertiser
- * @param[in] filter_policy The filter policy of advertising
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Operation is now in progress
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- *
- * @see bt_adapter_le_start_advertising_new()
- */
-int bt_adapter_le_set_advertising_filter_policy(bt_advertiser_h advertiser, bt_adapter_le_advertising_filter_policy_e filter_policy);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Creates a bond with a remote Bluetooth device, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks A bond can be destroyed by bt_device_destroy_bond().\n
- * The bonding request can be cancelled by bt_device_cancel_bonding().
- *
- * @param[in] remote_address The address of the remote Bluetooth device with which the bond should be created
- * @param[in] conn_type The connection type(LE or BREDR) to create bond with remote device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- * @pre The remote device must be discoverable with bt_adapter_start_device_discovery().
- * @post This function invokes bt_device_bond_created_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_device_create_bond()
- * @see bt_device_bond_created_cb()
- * @see bt_device_cancel_bonding()
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-int bt_device_create_bond_by_type(const char *remote_address,
- bt_device_connection_link_type_e conn_type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Cancels service search process.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The service search must be in progress by bt_device_start_service_search().
- *
- * @see bt_device_start_service_search()
- * @see bt_device_service_searched_cb()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- */
-int bt_device_cancel_service_search(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets a connection state
- * @since_tizen @if WEARABLE 2.4 @endif
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] link_type The link type to get a connection state
- * @param[out] connected The connection state
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- */
-int bt_device_get_connection_state(const char *remote_address, bt_device_connection_link_type_e link_type, bool *connected);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Sets a profile restricted connection for a device
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_set_profile_restricted(const char *device_address, bt_restricted_profile_t profile, bool restricted);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets a profile restricted connection for a device
- * @since_tizen 3.0
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_NOT_IN_PROGRESS Operation not in progress
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_get_profile_restricted(const char *device_address, bt_restricted_profile_t profile, int *restricted);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Request to change ATT MTU value
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[in] mtu New MTU value to be changed
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_request_att_mtu(const char *remote_address, unsigned int mtu);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the ATT MTU value set for a connection
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address The address of the remote Bluetooth device
- * @param[ot] mtu MTU value set for a connection
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_device_get_att_mtu(const char *remote_address, unsigned int *mtu);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Registers a callback function to be invoked when the ATT MTU is changed.
- * @since_tizen 3.0
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_device_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_device_unset_att_mtu_changed_cb()
- */
-int bt_device_set_att_mtu_changed_cb(bt_device_att_mtu_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Unregisters the callback function to be invoked when the ATT MTU is changed.
- * @since_tizen 3.0
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_initialize()
- * @see bt_device_set_att_mtu_changed_cb()
- */
-int bt_device_unset_att_mtu_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Registers a rfcomm server socket with a specific UUID. Activation by dbus is possible when the profile is connected.
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @remarks A socket can be destroyed by bt_socket_destroy_rfcomm_ex().
- * Application should call this API to receive a connection event when launched again by dbus.
- *
- * @param[in] uuid The UUID of service to provide
- * @param[in] bus_name bus_name of the application which is provided in service file.
- * @param[in] object_path dbus of the application
- * @return 0 on success, otherwise a negative error value.
- *
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOW_IN_PROGRESS Already registered
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- *
- * @see bt_socket_listen_and_accept_rfcomm_ex()
- * @see bt_socket_destroy_rfcomm_ex()
- */
-int bt_socket_create_rfcomm_ex(const char *uuid, const char *bus_name, const char *object_path);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Removes the rfcomm server socket which was created using bt_socket_create_rfcomm_ex().
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @remarks If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called when this function is finished successfully.
- *
- * @param[in] uuid The UUID (which was created using bt_socket_create_rfcomm()) to destroy
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm_ex().
- * @post If callback function bt_socket_connection_state_changed_cb() is set and the remote Bluetooth device is connected,
- * then bt_socket_connection_state_changed_cb() will be called.
- * @see bt_socket_create_rfcomm_ex()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_destroy_rfcomm_ex(const char *uuid);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket and accepts connection requests. Activation by dbus is possible when the profile is connected.
- * @since_tizen 2.4
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details Pop-up is shown automatically when a RFCOMM connection is requested.
- * bt_socket_connection_state_changed_cb() will be called with
- * #BT_SOCKET_CONNECTED if you click "yes" and connection is finished successfully.
- * @param[in] uuid The UUID of service to provide
- * @param[in] max_pending_connections The maximum number of pending connections
- * @param[in] bus_name bus_name of the application which is provided in service file.
- * @param[in] object_path dbus of the application
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm_ex().
- * @post If callback function bt_socket_connection_state_changed_cb() is set,
- * then bt_socket_connection_state_changed_cb() will be called when the remote Bluetooth device is connected.
- * @see bt_socket_create_rfcomm_ex()
- * @see bt_socket_connection_state_changed_cb()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-int bt_socket_listen_and_accept_rfcomm_ex(const char *uuid, int max_pending_connections, const char* bus_name, const char *object_path);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Starts listening on passed rfcomm socket.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @details bt_socket_connection_requested_cb() will be called when a RFCOMM connection is requested.
- *
- * @param[in] socket_fd The file descriptor socket on which start to listen
- * @param[in] max_pending_connections The number of pending connections
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The socket must be created with bt_socket_create_rfcomm().
- * @post This function invokes bt_socket_connection_state_changed_cb().
- *
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_set_connection_requested_cb()
- * @see bt_socket_unset_connection_requested_cb()
- * @see bt_socket_connection_requested_cb()
- */
-int bt_socket_listen(int socket_fd, int max_pending_connections);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Accepts a connection request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] requested_socket_fd The file descriptor of socket on which a connection is requested
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection is requested by bt_socket_connection_requested_cb().
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_requested_cb()
- * @see bt_socket_listen()
- * @see bt_socket_reject()
-*/
-int bt_socket_accept(int requested_socket_fd);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Rejects a connection request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] socket_fd The file descriptor of socket on which a connection is requested
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The connection is requested by bt_socket_connection_requested_cb().
- * @see bt_socket_create_rfcomm()
- * @see bt_socket_connection_requested_cb()
- * @see bt_socket_listen()
- * @see bt_socket_accept()
- */
-int bt_socket_reject(int socket_fd);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Initializes the Bluetooth OPP server requested by bt_opp_server_push_requested_cb().
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @details The popup appears when an OPP connection is requested from a remote device.
- * If you accept the request, then connection will be established and bt_opp_server_push_requested_cb() will be called.
- * At that time, you can call either bt_opp_server_accept() or bt_opp_server_reject().
- * @remarks This function must be called to start Bluetooth OPP server. You must free all resources of the Bluetooth service
- * by calling bt_opp_server_deinitialize() if Bluetooth OPP service is no longer needed.
- * @param[in] destination The destination path
- * @param[in] push_requested_cb The callback called when a push is requested
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_RESOURCE_BUSY Device or resource busy
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_opp_server_push_requested_cb()
- * @see bt_opp_server_deinitialize()
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-int bt_opp_server_initialize(const char *destination, bt_opp_server_push_requested_cb push_requested_cb, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_MODULE
- * @brief Gets the percentage progress for ongoing transfers.
- * @since_tizen 3.0
- * @exception None
- * @param[in] transfer_type Transfer Type: (@c BLUETOOTH_TRANSFER_INBOUND = receiving , @c BLUETOOTH_TRANSFER_OUTBOUND = sending)
- * @param[in] transfer_id Transfer ID
- * @param[out] progress Percentage Progress
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- */
-int bt_opp_get_transfer_progress(bt_opp_transfer_type_t transfer_type,
- int transfer_id, unsigned char *progress);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the call event to the remote bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @remarks Before notifying #BT_AG_CALL_EVENT_ANSWERED or #BT_AG_CALL_EVENT_DIALING, you should open SCO(Synchronous Connection Oriented link)
- * if Bluetooth Hands-Free need SCO connection.
- * @param[in] event The call event
- * @param[in] call_id The call ID
- * @param[in] phone_number The phone number. You must set this value in case of #BT_AG_CALL_EVENT_DIALING and #BT_AG_CALL_EVENT_INCOMING.
- * In other cases, this value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_call_event(bt_ag_call_event_e event, unsigned int call_id, const char *phone_number);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the call list to the remote bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] list The call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_call_list(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_ag_notify_voice_recognition_state(bool state);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-int bt_ag_set_call_handling_event_cb(bt_ag_call_handling_event_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_set_call_handling_event_cb()
- */
-int bt_ag_unset_call_handling_event_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-int bt_ag_set_multi_call_handling_event_cb(bt_ag_multi_call_handling_event_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_set_multi_call_handling_event_cb()
- */
-int bt_ag_unset_multi_call_handling_event_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Registers a callback function that will be invoked when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_dtmf_transmitted_cb()
- * @see bt_ag_unset_dtmf_transmitted_cb()
- */
-int bt_ag_set_dtmf_transmitted_cb(bt_ag_dtmf_transmitted_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Unregisters a callback function that will be invoked when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_dtmf_transmitted_cb()
- * @see bt_ag_set_dtmf_transmitted_cb()
- */
-int bt_ag_unset_dtmf_transmitted_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether the remoted device enables NREC(Noise Reduction and Echo Canceling) or not.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] enabled The NREC status: (@c true = enabled, @c false = not enabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_audio_connect()
- */
-int bt_ag_is_nrec_enabled(bool *enabled);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Creates a handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[out] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_destroy()
- */
-int bt_call_list_create(bt_call_list_h *list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Destroys the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_destroy(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Resets the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_reset(bt_call_list_h list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_CALL_MODULE
- * @brief Adds a call to the handle of call list.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] list The handle of call list
- * @param[in] call_id The call ID
- * @param[in] state The state of audio gate call
- * @param[in] phone_number The phone number. You must set this value in case of #BT_AG_CALL_EVENT_DIALING and #BT_AG_CALL_EVENT_INCOMING.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_call_list_create()
- */
-int bt_call_list_add(bt_call_list_h list, unsigned int call_id, bt_ag_call_state_e state, const char *phone_number);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Checks whether the remoted device is wbs (Wide Band Speech) mode or not.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @param[out] wbs_mode The wbs status: (@c true = wide band speech, @c false = narrow band speech)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_audio_connect()
- */
-int bt_ag_is_wbs_mode(bool *wbs_mode);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Gets the HF(Hands-Free) profile connected status for AG role.
- * @since_tizen 2.4
- * @param[out] connected the connected status: (@c true = connected , @c false = not connected )
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_ag_is_connected(bool *connected);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- */
-int bt_hf_set_sco_state_changed_cb(bt_hf_sco_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_sco_state_changed_cb()
- * @see bt_ag_set_sco_state_changed_cb()
- */
-int bt_hf_unset_sco_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-int bt_hf_set_call_handling_event_cb(bt_hf_call_handling_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_call_handling_event_cb()
- * @see bt_ag_set_call_handling_event_cb()
- */
-int bt_hf_unset_call_handling_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-int bt_hf_set_multi_call_handling_event_cb(bt_hf_multi_call_handling_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a multi call handling event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_ag_multi_call_handling_event_cb()
- * @see bt_ag_set_multi_call_handling_event_cb()
- */
-int bt_hf_unset_multi_call_handling_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Initializes the Bluetooth HF profile related with audio.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks This function must be called before Bluetooth profiles related with audio starts.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @see bt_hf_deinitialize()
- */
-int bt_hf_initialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Deinitializes the Bluetooth HF profile related with audio.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- */
-int bt_hf_deinitialize(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the call event to the remote bluetooth device.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @remarks Before notifying #BT_HF_CALL_EVENT_ANSWERED or #BT_HF_CALL_EVENT_DIALING, you should open SCO(Synchronous Connection Oriented link)
- * if Bluetooth Hands-Free need SCO connection.
- * @param[in] event The call event
- * @param[in] call_id The call ID
- * @param[in] phone_number The phone number. You must set this value in case of #BT_HF_CALL_EVENT_DIALING and #BT_HF_CALL_EVENT_INCOMING.
- * In other cases, this value can be NULL.
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_notify_call_event(bt_hf_call_event_e event, char *phone_number);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the speaker gain to the remote device.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @details This function sends a signal to the remote device. This signal has the gain value.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * When the speaker gain of remote device is changed to the requested gain, bt_audio_speaker_gain_changed_cb() will be called.
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The remote device is connected by bt_audio_connect() with #BT_AUDIO_PROFILE_TYPE_HSP_HFP service.
- * @see bt_hf_get_speaker_gain()
- * @see bt_hf_set_speaker_gain_changed_cb()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-int bt_hf_notify_speaker_gain(int gain);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @details This function let you know the change of the speaker gain of the remote device.
- * @a gain is represented on a scale from 0 to 15. This value is absolute value relating to a particular volume level.
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_unset_speaker_gain_changed_cb()
- */
-int bt_hf_set_speaker_gain_changed_cb(bt_hf_speaker_gain_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when the speaker gain of the remote device is changed.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_set_speaker_gain_changed_cb()
- */
-int bt_hf_unset_speaker_gain_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Notifies the state of voice recognition.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @param[in] state The state of voice recognition: (@c true = enabled, @c false = disabled)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_notify_voice_recognition_state(bool state);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Registers a callback function that will be invoked when a call status event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_unset_call_status_updated_event_cb()
- */
-int bt_hf_set_call_status_updated_event_cb(bt_hf_call_status_updated_event_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Unregisters a callback function that will be invoked when a call status event happened from Hands-Free.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_hf_set_call_status_updated_event_cb()
- */
-int bt_hf_unset_call_status_updated_event_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Closes an opened SCO(Synchronous Connection Oriented link), synchronously.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- */
-int bt_hf_close_sco(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Sends the DTMF(Dual Tone Multi Frequency).
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @privlevel platform
- * @privilege http://tizen.org/privilege/bluetooth.admin
- * @param[in] dtmf The DTMF to send
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_send_dtmf(char *dtmf);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the HF(Hands-Free) profile connected status for HF role.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @param[out] connected the connected status: (@c true = connected , @c false = not connected )
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_hf_is_connected(bool *connected);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Checks whether an opened SCO(Synchronous Connection Oriented link) exists or not.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- *
- * @param[out] opened The SCO status: (@c true = opened, @c false = not opened)
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_is_sco_opened(bool *opened);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the codec ID.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks The @a codec_id must be released with free() by you.
- *
- * @param[out] codec_id The codec ID
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_audio_connect()
- */
-int bt_hf_get_codec_id(unsigned int *codec_id);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Gets the call status information list.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- * @remarks The @a call_list must be released with bt_hf_free_call_status_info_list() by you.
- * @remarks call_info_list has elements which consist of bt_hf_call_status_info_s
- *
- * @param[out] call_list The call status information list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio device must be connected with bt_audio_connect().
- * @see bt_hf_call_status_info_s
- * @see bt_audio_connect()
- */
-int bt_hf_get_call_status_info_list(GSList **call_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_HF_MODULE
- * @brief Frees the call status information list.
- * @since_tizen @if MOBILE @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] call_list The call status information list
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_hf_get_call_status_info_list()
- */
-int bt_hf_free_call_status_info_list(GSList *call_list);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Gets the specification name from the UUID
- * @since_tizen 2.4
- *
- * @remarks @a name must be released with free() by you.
- *
- * @param[in] uuid The UUID
- * @param[out] name The specification name which defined from www.bluetooth.org
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_get_uuid()
- */
-int bt_gatt_get_uuid_specification_name(const char *uuid, char **name);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Updates the permissions which a characteristic or descriptor's GATT handle has.
- * @since_tizen 3.0
- *
- * @param[in] gatt_handle The handle of a characteristic or descriptor
- * @param[in] permissions The permissions to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- * @see bt_gatt_permission_e
- */
-int bt_gatt_set_permissions(bt_gatt_h gatt_handle, int permissions);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Updates the properties which a characteristic's GATT handle has.
- * @since_tizen 3.0
- *
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] properties The properties to be updated
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_property_e
- */
-int bt_gatt_characteristic_set_properties(bt_gatt_h characteristic, int properties);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Destroys the GATT handle
- * @since_tizen 2.4
- *
- * @param[in] gatt_handle The handle of service, characteristic or descriptor
- * @return 0 on success, otherwise a negative error value
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @see bt_gatt_service_create()
- * @see bt_gatt_characteristic_create()
- * @see bt_gatt_descriptor_create()
- */
-int bt_gatt_destroy(bt_gatt_h gatt_handle);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Registers a callback function that will be invoked when the A2DP Source connection state is changed.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- */
-int bt_a2dp_source_audio_set_connection_state_changed_cb(bt_audio_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Unregisters a callback function that will be invoked when the A2DP Source connection state is changed.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth audio service must be initialized with bt_audio_initialize().
- * @see bt_audio_initialize()
- * @see bt_audio_connection_state_changed_cb()
- * @see bt_audio_set_connection_state_changed_cb()
- */
-int bt_a2dp_source_audio_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Activates the NAP(Network Access Point).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED
- * @see bt_nap_deactivate()
- */
-int bt_nap_activate(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Deactivates the NAP(Network Access Point).
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_ALREADY_DONE Operation is already done
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_deactivate(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Disconnects the all PANUs(Personal Area Networking User) which are connected to you.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_disconnect_all(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Disconnects the specified PANU(Personal Area Networking User) which is connected to you.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth NAP service must be activated with bt_nap_activate().
- * @see bt_nap_activate()
- */
-int bt_nap_disconnect(const char *remote_address);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Registers a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_nap_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-int bt_nap_set_connection_state_changed_cb(bt_nap_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_nap_connection_state_changed_cb()
- * @see bt_nap_set_connection_state_changed_cb()
- */
-int bt_nap_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Registers a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @param[in] callback The callback function to register
- * @param[in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_panu_connection_state_changed_cb()
- * @see bt_panu_unset_connection_state_changed_cb()
- */
-int bt_panu_set_connection_state_changed_cb(bt_panu_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Unregisters a callback function that will be invoked when the connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized with bt_initialize().
- * @post bt_nap_connection_state_changed_cb() will be invoked.
- * @see bt_initialize()
- * @see bt_panu_connection_state_changed_cb()
- * @see bt_panu_set_connection_state_changed_cb()
- */
-int bt_panu_unset_connection_state_changed_cb(void);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Connects the remote device with the PAN(Personal Area Networking) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @param[in] type The type of PAN service
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The local device must be bonded with the remote device by bt_device_create_bond().
- * @post bt_panu_connection_state_changed_cb() will be invoked.
- * @see bt_panu_disconnect()
- * @see bt_panu_connection_state_changed_cb()
- */
-int bt_panu_connect(const char *remote_address, bt_panu_service_type_e type);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Disconnects the remote device with the PAN(Personal Area Networking) service, asynchronously.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/bluetooth
- * @param[in] remote_address The remote address
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED Remote device is not connected
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The remote device must be connected by bt_panu_connect().
- * @post bt_panu_connection_state_changed_cb() will be invoked.
- * @see bt_panu_connect()
- * @see bt_panu_connection_state_changed_cb()
- */
-int bt_panu_disconnect(const char *remote_address);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief update LE connection.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The Bluetooth service must be initialized by bt_initialize().
- * @pre The remote device must be connected with bt_gatt_connect().
- */
-int bt_device_le_conn_update(const char *device_address,
- const bt_le_conn_update_s *parameters);
-
-/**
- * @internal
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Gets the is_alias_set property of a bonded device.
- * @since_tizen 3.0
- *
- * @param [in] remote_address The address of remote device
- * @param [out] is_alias_set The is_alias_set property of device
- *
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_adapter_get_bonded_device_is_alias_set(const char *remote_address, gboolean *is_alias_set);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets Restriction for BT mode(BT allowed or not).
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - BT Allow value.
- * BT_DPM_ERROR = -1, < bluetooth allowance error
- * BT_DPM_BT_ALLOWED, < bluetooth allowance allowed
- * BT_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
- * BT_DPM_BT_RESTRICTED, < bluetooth allowance restricted
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre none.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_allow_bluetooth_mode(bt_dpm_allow_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads Restriction for BT mode(BT allowed or not).
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @param[out] value - BT Allow value.
- * BT_DPM_ERROR = -1, < bluetooth allowance error
- * BT_DPM_BT_ALLOWED, < bluetooth allowance allowed
- * BT_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
- * BT_DPM_BT_RESTRICTED, < bluetooth allowance restricted
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre none.
- * @see bt_dpm_set_allow_bluetooth_mode()
- */
-int bt_dpm_get_allow_bluetooth_mode(bt_dpm_allow_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for device.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_activate_device_restriction(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for device.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_is_device_restriction_active(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for uuid.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_activate_uuid_restriction(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for uuid.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_is_uuid_restriction_active(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the device to blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_devices_to_blacklist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the device to whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_devices_to_whitelist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the uuids to blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_uuids_to_blacklist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Adds the uuid to whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_add_uuids_to_whitelist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the device from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_devices_from_blacklist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the device from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_devices_from_whitelist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_uuids_from_blacklist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Clears the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] none
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_clear_uuids_from_whitelist(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the devices from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] device_list - list of devices
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_devices_from_blacklist(bt_dpm_device_list_s **device_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the devices from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] device_list - list of devices
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_devices_from_whitelist(bt_dpm_device_list_s **device_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] uuid_list - list of uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_uuids_from_blacklist(bt_dpm_uuids_list_s **uuid_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] uuid_list - list of uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_uuids_from_whitelist(bt_dpm_uuids_list_s **uuid_list);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the devices from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_device_from_whitelist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the devices from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] device_address - Device address
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_device_from_blacklist(const char *device_address);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the uuids from whitelist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_uuid_from_whitelist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Removes the uuids from blacklist.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] service_uuids - profile or custom service uuids
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_remove_uuid_from_blacklist(const char *service_uuid);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for outgoing call.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_allow_outgoing_call(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for outgoing call.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_allow_outgoing_call(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for pairing.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_pairing_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for pairing.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_pairing_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for profiles.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in]profile - Profile.
- * BT_DPM_POLICY_A2DP_PROFILE_STATE,
- * BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- * BT_DPM_POLICY_BPP_PROFILE_STATE,
- * BT_DPM_POLICY_DUN_PROFILE_STATE,
- * BT_DPM_POLICY_FTP_PROFILE_STATE,
- * BT_DPM_POLICY_HFP_PROFILE_STATE,
- * BT_DPM_POLICY_HSP_PROFILE_STATE,
- * BT_DPM_POLICY_PBAP_PROFILE_STATE,
- * BT_DPM_POLICY_SAP_PROFILE_STATE,
- * BT_DPM_POLICY_SPP_PROFILE_STATE,
- * BT_DPM_PROFILE_NONE
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_profile_state(bt_dpm_profile_e profile, bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for profiles.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in]profile - Profile.
- * BT_DPM_POLICY_A2DP_PROFILE_STATE,
- * BT_DPM_POLICY_AVRCP_PROFILE_STATE,
- * BT_DPM_POLICY_BPP_PROFILE_STATE,
- * BT_DPM_POLICY_DUN_PROFILE_STATE,
- * BT_DPM_POLICY_FTP_PROFILE_STATE,
- * BT_DPM_POLICY_HFP_PROFILE_STATE,
- * BT_DPM_POLICY_HSP_PROFILE_STATE,
- * BT_DPM_POLICY_PBAP_PROFILE_STATE,
- * BT_DPM_POLICY_SAP_PROFILE_STATE,
- * BT_DPM_POLICY_SPP_PROFILE_STATE,
- * BT_DPM_PROFILE_NONE
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_profile_state(bt_dpm_profile_e profile, bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for desktop connectivity.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_desktop_connectivity_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for desktop connectivity.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_desktop_connectivity_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_discoverable_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_discoverable_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for limited discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-
-int bt_dpm_set_limited_discoverable_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for limited discoverable mode.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_limited_discoverable_state(bt_dpm_status_e *value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Sets the Restriction for Data transfer.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_set_data_transfer_state(bt_dpm_status_e value);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DPM_MODULE
- * @brief Reads the Restriction for Data transfer.
- * @since_tizen 3.0
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[out] value - State value.
- * BT_DPM_ALLOWED = 0, < DPM Policy status allowed.
- * BT_DPM_RESTRICTED = 1, < DPM Policy status restricted.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER invalid paramter
- * @retval #BT_ERROR_NOT_SUPPORTED Not suported
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_OPERATION_FAILED operation failed
- *
- * @pre bt_dpm_set_allow_bluetooth_mode must be allowed.
- * @see bt_dpm_get_allow_bluetooth_mode()
- */
-int bt_dpm_get_data_transfer_state(bt_dpm_status_e *value);
-
-/**
- * @internal
- * @brief Initialize Bluetooth IPSP service and set the callback
- */
-int bt_ipsp_initialize(bt_ipsp_init_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief De-Initialize Bluetooth IPSP service and unset the callback
- */
-int bt_ipsp_deinitialize(void);
-
-/**
- * @internal
- * @brief Connect to a IPSP service over LE to remote device.
- */
-int bt_ipsp_connect(const char *address);
-
-/**
- * @internal
- * @brief Disconnect to a IPSP service over LE to remote device.
- */
-int bt_ipsp_disconnect(const char *address);
-
-/**
- * @internal
- * @brief Set IPSP connection state event change callback.
- */
-int bt_ipsp_set_connection_state_changed_cb(bt_ipsp_connection_state_changed_cb callback,
- void *user_data);
-
-/**
- * @internal
- * @brief Unset IPSP connection state event change callback.
- */
-int bt_ipsp_unset_connection_state_changed_cb(void);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Gets the pbap connected status.
- * @since_tizen 3.0
- * @param[in] remote_address The address of the remote device
- * @param[out] connected_status the connected status
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_NOT_ENABLED Not enabled
- * @retval #BT_ERROR_REMOTE_DEVICE_NOT_BONDED Remote device not bonded
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_NOT_SUPPORTED Not supported
- *
- * @pre The state of local Bluetooth must be #BT_ADAPTER_ENABLED.
- */
-int bt_pbap_client_is_connected(const char *address, bool *connected_status);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_MODULE
- * @brief Sends the custom event data.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @privlevel platform
- * @privilege %http://tizen.org/privilege/bluetooth.admin
- *
- * @param[in] remote_address device address of remote device.
- * @param[in] report_id reoport id need to be passed to remote device
- * @param[in] data The data need to be passed to remote device
- * @param[in] data_len The length of the data
- * @return 0 on success, otherwise a negative error value.
- * @retval #BT_ERROR_NONE Successful
- * @retval #BT_ERROR_NOT_INITIALIZED Not initialized
- * @retval #BT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #BT_ERROR_OPERATION_FAILED Operation failed
- * @retval #BT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre The HID connection must be established.
- * @see bt_hid_device_connection_state_changed_cb()
- */
-int bt_hid_device_send_custom_event(const char *remote_address,
- unsigned char report_id, const char *data, unsigned int data_len);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Reporter Role.
- */
-int bt_proximity_reporter_create(bt_proximity_reporter_h *reporter);
-
-/**
- * @internal
- * @brief Destroys the Proximity Profile Monitor Role.
- */
-int bt_proximity_reporter_destroy(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Reporter Role.
- */
-int bt_proximity_monitor_create(const char *remote_address, bt_proximity_monitor_h *monitor);
-
-/**
- * @internal
- * @brief Creates the Proximity Profile Monitor Role.
- */
-int bt_proximity_monitor_destroy(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Proximity Monitor initiates the connection to remote reporter device.
- */
-int bt_proximity_monitor_connect(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Proximity Monitor disconnects with the remote reporter device.
- */
-int bt_proximity_monitor_disconnect(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Sets proximity monitor connection state changed event change callback.
- */
-int bt_proximity_monitor_set_connection_state_changed_cb(bt_proximity_monitor_h monitor,
- bt_proximity_monitor_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity monitor connection state changed event change callback.
- */
-int bt_proximity_monitor_unset_connection_state_changed_cb(bt_proximity_monitor_h monitor);
-
-/**
- * @internal
- * @brief Sets proximity reporter connection state changed event change callback.
- */
-int bt_proximity_reporter_set_connection_state_changed_cb(bt_proximity_reporter_h reporter,
- bt_proximity_reporter_connection_state_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity reporter connection state changed event change callback.
- */
-int bt_proximity_reporter_unset_connection_state_changed_cb(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Sets proximity reporter properties change callback.
- */
-int bt_proximity_reporter_set_property_changed_cb(bt_proximity_reporter_h reporter,
- bt_proximity_reporter_property_changed_cb callback, void *user_data);
-
-/**
- * @internal
- * @brief Unsets proximity reporter properties change callback.
- */
-int bt_proximity_reporter_unset_property_changed_cb(bt_proximity_reporter_h reporter);
-
-/**
- * @internal
- * @brief Set the Proximity Profile monitor linkloss alert value.
- */
-int bt_proximity_monitor_set_linkloss_alert(bt_proximity_monitor_h monitor, int value);
-
-/**
- * @internal
- * @brief Set the Proximity Profile monitor immediate alert value.
- */
-int bt_proximity_monitor_set_immediate_alert(bt_proximity_monitor_h monitor, int value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor linkloss alert value.
- */
-int bt_proximity_monitor_get_linkloss_alert(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor immediate alert value.
- */
-int bt_proximity_monitor_get_immediate_alert(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile monitor Signal level value.
- */
-int bt_proximity_monitor_get_signal_level(bt_proximity_monitor_h monitor, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile reporter linkloss alert value.
- */
-int bt_proximity_reporter_get_linkloss_alert(const char *remote_address, int *value);
-
-/**
- * @internal
- * @brief Read the Proximity Profile reporter immediate alert value.
- */
-int bt_proximity_reporter_get_immediate_alert(const char *remote_address, int *value);
-
-/**
- * @internal
- * @brief API to set scan filter for iBeacons reports
- */
-int bt_adapter_le_scan_filter_set_ibeacon(bt_scan_filter_h scan_filter);
-
-/**
- * @internal
- * @brief API to read iBeacon report from LE scan result information
- */
-int bt_adapter_le_get_scan_result_ibeacon_report(const bt_adapter_le_device_scan_result_info_s *info,
- bt_adapter_le_packet_type_e pkt_type, bt_adapter_ibeacon_scan_result_info_s **ibeacon_info);
-
-/**
- * @internal
- * @brief API to clear the iBeacon report
- */
-int bt_adapter_le_free_ibeacon_report(bt_adapter_ibeacon_scan_result_info_s *ibeacon_info);
-
-/**
- * @internal
- * @brief API to Set the Proximity uuids scan report
- */
-int bt_adapter_le_scan_filter_set_proximity_uuid(bt_scan_filter_h scan_filter);
-
-/**
- * @internal
- * @brief API to Unset the Proximity uuids scan report
- */
-int bt_adapter_le_scan_filter_unset_proximity_uuid(bt_scan_filter_h scan_filter);
-
-/**
- * @}
- */
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_INTERNAL_H__ */
diff --git a/include/wearable/bluetooth_type.h b/include/wearable/bluetooth_type.h
deleted file mode 100644
index b9d424a..0000000
--- a/include/wearable/bluetooth_type.h
+++ /dev/null
@@ -1,2031 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_H__
-
-#include <stdlib.h>
-#include <unistd.h>
-#include <stdbool.h>
-#include <tizen_error.h>
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type.h
- * @brief API to control the Bluetooth adapter, devices and communications.
- * @ingroup CAPI_NETWORK_BLUETOOTH_TYPE_MODULE
- */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of PBAP fields.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_FIELD_ALL = (0xFFFFFFFFU), /**< All field */
- BT_PBAP_FIELD_VERSION = (1U << 0), /**< vCard Version */
- BT_PBAP_FIELD_FN = (1U << 1), /**< Formatted Name */
- BT_PBAP_FIELD_N = (1U << 2), /**< Structured Presentation of Name */
- BT_PBAP_FIELD_PHOTO = (1U << 3), /**< Associated Image or Photo */
- BT_PBAP_FIELD_BDAY = (1U << 4), /**< Birthday */
- BT_PBAP_FIELD_ADR = (1U << 5), /**< Delivery Address */
- BT_PBAP_FIELD_LABEL = (1U << 6), /**< Delivery */
- BT_PBAP_FIELD_TEL = (1U << 7), /**< Telephone Number */
- BT_PBAP_FIELD_EMAIL = (1U << 8), /**< Electronic Mail Address */
- BT_PBAP_FIELD_MAILER = (1U << 9), /**< Electronic Mail */
- BT_PBAP_FIELD_TZ = (1U << 10), /**< Time Zone */
- BT_PBAP_FIELD_GEO = (1U << 11), /**< Geographic Position */
- BT_PBAP_FIELD_TITLE = (1U << 12), /**< Job */
- BT_PBAP_FIELD_ROLE = (1U << 13), /**< Role within the Organization */
- BT_PBAP_FIELD_LOGO = (1U << 14), /**< Organization Logo */
- BT_PBAP_FIELD_AGENT = (1U << 15), /**< vCard of Person Representing */
- BT_PBAP_FIELD_ORG = (1U << 16), /**< Name of Organization */
- BT_PBAP_FIELD_NOTE = (1U << 17), /**< Comments */
- BT_PBAP_FIELD_REV = (1U << 18), /**< Revision */
- BT_PBAP_FIELD_SOUND = (1U << 19), /**< Pronunciation of Name */
- BT_PBAP_FIELD_URL = (1U << 20), /**< Uniform Resource Locator */
- BT_PBAP_FIELD_UID = (1U << 21), /**< Unique ID */
- BT_PBAP_FIELD_KEY = (1U << 22), /**< Public Encryption Key */
- BT_PBAP_FIELD_NICKNAME = (1U << 23), /**< Nickname */
- BT_PBAP_FIELD_CATEGORIES = (1U << 24), /**< Categories */
- BT_PBAP_FIELD_PROID = (1U << 25), /**< Product ID */
- BT_PBAP_FIELD_CLASS = (1U << 26), /**< Class information */
- BT_PBAP_FIELD_SORT_STRING = (1U << 27), /**< String used for sorting operations */
- BT_PBAP_FIELD_X_IRMC_CALL_DATETIME = (1U << 28), /**< Time stamp */
-} bt_pbap_field_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_MODULE
- * @brief Enumerations of Bluetooth error codes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ERROR_NONE = TIZEN_ERROR_NONE, /**< Successful*/
- BT_ERROR_CANCELLED = TIZEN_ERROR_CANCELED, /**< Operation cancelled */
- BT_ERROR_INVALID_PARAMETER = TIZEN_ERROR_INVALID_PARAMETER, /**< Invalid parameter */
- BT_ERROR_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */
- BT_ERROR_RESOURCE_BUSY = TIZEN_ERROR_RESOURCE_BUSY, /**< Device or resource busy */
- BT_ERROR_TIMED_OUT = TIZEN_ERROR_TIMED_OUT, /**< Timeout error */
- BT_ERROR_NOW_IN_PROGRESS = TIZEN_ERROR_NOW_IN_PROGRESS, /**< Operation now in progress */
- BT_ERROR_NOT_SUPPORTED = TIZEN_ERROR_NOT_SUPPORTED, /**< BT is Not Supported */
- BT_ERROR_PERMISSION_DENIED = TIZEN_ERROR_PERMISSION_DENIED, /**< Permission denied */
- BT_ERROR_QUOTA_EXCEEDED = TIZEN_ERROR_QUOTA_EXCEEDED, /**< Quota exceeded */
- BT_ERROR_NO_DATA = TIZEN_ERROR_NO_DATA, /**< No data available */
- BT_ERROR_DEVICE_POLICY_RESTRICTION = TIZEN_ERROR_DEVICE_POLICY_RESTRICTION, /**< Device policy restriction (Since 3.0) */
- BT_ERROR_NOT_INITIALIZED = TIZEN_ERROR_BLUETOOTH|0x0101, /**< Local adapter not initialized */
- BT_ERROR_NOT_ENABLED = TIZEN_ERROR_BLUETOOTH|0x0102, /**< Local adapter not enabled */
- BT_ERROR_ALREADY_DONE = TIZEN_ERROR_BLUETOOTH|0x0103, /**< Operation already done */
- BT_ERROR_OPERATION_FAILED = TIZEN_ERROR_BLUETOOTH|0x0104, /**< Operation failed */
- BT_ERROR_NOT_IN_PROGRESS = TIZEN_ERROR_BLUETOOTH|0x0105, /**< Operation not in progress */
- BT_ERROR_REMOTE_DEVICE_NOT_BONDED = TIZEN_ERROR_BLUETOOTH|0x0106, /**< Remote device not bonded */
- BT_ERROR_AUTH_REJECTED = TIZEN_ERROR_BLUETOOTH|0x0107, /**< Authentication rejected */
- BT_ERROR_AUTH_FAILED = TIZEN_ERROR_BLUETOOTH|0x0108, /**< Authentication failed */
- BT_ERROR_REMOTE_DEVICE_NOT_FOUND = TIZEN_ERROR_BLUETOOTH|0x0109, /**< Remote device not found */
- BT_ERROR_SERVICE_SEARCH_FAILED = TIZEN_ERROR_BLUETOOTH|0x010A, /**< Service search failed */
- BT_ERROR_REMOTE_DEVICE_NOT_CONNECTED = TIZEN_ERROR_BLUETOOTH|0x010B, /**< Remote device is not connected */
- BT_ERROR_AGAIN = TIZEN_ERROR_BLUETOOTH|0x010C, /**< Resource temporarily unavailable */
- BT_ERROR_SERVICE_NOT_FOUND = TIZEN_ERROR_BLUETOOTH|0x010D, /**< Service Not Found */
-} bt_error_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the Bluetooth adapter state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_DISABLED = 0x00, /**< Bluetooth adapter is disabled */
- BT_ADAPTER_ENABLED, /**< Bluetooth adapter is enabled */
-} bt_adapter_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the Bluetooth visibility mode.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE = 0x00, /**< Other devices cannot find your device via discovery */
- BT_ADAPTER_VISIBILITY_MODE_GENERAL_DISCOVERABLE, /**< Discoverable mode */
- BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE, /**< Discoverable mode with time limit. After specific period,
- it is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.*/
-} bt_adapter_visibility_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Enumerations of the discovery state of Bluetooth device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_DEVICE_DISCOVERY_STARTED, /**< Device discovery is started */
- BT_ADAPTER_DEVICE_DISCOVERY_FINISHED, /**< Device discovery is finished */
- BT_ADAPTER_DEVICE_DISCOVERY_FOUND, /**< The remote Bluetooth device is found */
-} bt_adapter_device_discovery_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_STOPPED = 0x00, /**< Bluetooth advertising is stopped */
- BT_ADAPTER_LE_ADVERTISING_STARTED, /**< Bluetooth advertising is started */
-} bt_adapter_le_advertising_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising mode.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_MODE_BALANCED, /**< Balanced advertising mode */
- BT_ADAPTER_LE_ADVERTISING_MODE_LOW_LATENCY, /**< Low latency advertising mode */
- BT_ADAPTER_LE_ADVERTISING_MODE_LOW_ENERGY /**< Low energy advertising mode */
-} bt_adapter_le_advertising_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth advertising filter policy.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_ADVERTISING_FILTER_DEFAULT = 0x00, /**< White list is not in use */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_SCAN_WL = 0x01, /**< Allow the scan
- request that in the White list */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_CONN_WL = 0x02, /**< Allow the connection
- request that in the White list */
- BT_ADAPTER_LE_ADVERTISING_FILTER_ALLOW_SCAN_CONN_WL = 0x03, /**< Allow the
- scan and connection request that in the White list */
-} bt_adapter_le_advertising_filter_policy_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth LE packet type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_ADAPTER_LE_PACKET_ADVERTISING, /**< Advertising packet */
- BT_ADAPTER_LE_PACKET_SCAN_RESPONSE, /**< Scan response packet */
-} bt_adapter_le_packet_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Enumerations of the Bluetooth le scan mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_ADAPTER_LE_SCAN_MODE_BALANCED, /**< Balanced mode of power consumption and connection latency */
- BT_ADAPTER_LE_SCAN_MODE_LOW_LATENCY, /**< Low connection latency but high power consumption */
- BT_ADAPTER_LE_SCAN_MODE_LOW_ENERGY /**< Low power consumption but high connection latency */
-} bt_adapter_le_scan_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device disconnect reason.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_DISCONNECT_REASON_UNKNOWN, /**< Disconnected by unknown reason */
- BT_DEVICE_DISCONNECT_REASON_TIMEOUT, /**< Disconnected by timeout */
- BT_DEVICE_DISCONNECT_REASON_LOCAL_HOST, /**< Disconnected by local host */
- BT_DEVICE_DISCONNECT_REASON_REMOTE, /**< Disconnected by remote */
-} bt_device_disconnect_reason_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of connection link type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_CONNECTION_LINK_BREDR, /**< BR/EDR link */
- BT_DEVICE_CONNECTION_LINK_LE, /**< LE link */
- BT_DEVICE_CONNECTION_LINK_DEFAULT = 0xFF, /**< The connection type default */
-} bt_device_connection_link_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device authorization state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_AUTHORIZED, /**< The remote Bluetooth device is authorized */
- BT_DEVICE_UNAUTHORIZED, /**< The remote Bluetooth device is unauthorized */
-} bt_device_authorization_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of Bluetooth profile.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_PROFILE_RFCOMM = 0x01, /**< RFCOMM Profile */
- BT_PROFILE_A2DP = 0x02, /**< Advanced Audio Distribution Profile Source role */
- BT_PROFILE_HSP = 0x04, /**< Headset Profile */
- BT_PROFILE_HID = 0x08, /**< Human Interface Device Profile */
- BT_PROFILE_NAP = 0x10, /**< Network Access Point Profile */
- BT_PROFILE_AG = 0x20, /**< Audio Gateway Profile */
- BT_PROFILE_GATT = 0x40, /**< Generic Attribute Profile */
- BT_PROFILE_NAP_SERVER = 0x80, /**< NAP server Profile */
- BT_PROFILE_A2DP_SINK = 0x100, /**< Advanced Audio Distribution Profile Sink role */
-} bt_profile_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of device address type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_DEVICE_PUBLIC_ADDRESS = 0x00, /**< Public address */
- BT_DEVICE_RANDOM_ADDRESS, /**< Random address */
-} bt_device_address_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of service class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SC_NONE = 0, /**< No service class */
- BT_SC_RES_SERVICE_MASK = 0x00000001, /**< RES service class */
- BT_SC_SPP_SERVICE_MASK = 0x00000002, /**< SPP service class */
- BT_SC_DUN_SERVICE_MASK = 0x00000004, /**< DUN service class */
- BT_SC_FAX_SERVICE_MASK = 0x00000008, /**< FAX service class */
- BT_SC_LAP_SERVICE_MASK = 0x00000010, /**< LAP service class */
- BT_SC_HSP_SERVICE_MASK = 0x00000020, /**< HSP service class */
- BT_SC_HFP_SERVICE_MASK = 0x00000040, /**< HFP service class */
- BT_SC_OPP_SERVICE_MASK = 0x00000080, /**< OPP service class */
- BT_SC_FTP_SERVICE_MASK = 0x00000100, /**< FTP service class */
- BT_SC_CTP_SERVICE_MASK = 0x00000200, /**< CTP service class */
- BT_SC_ICP_SERVICE_MASK = 0x00000400, /**< ICP service class */
- BT_SC_SYNC_SERVICE_MASK = 0x00000800, /**< SYNC service class */
- BT_SC_BPP_SERVICE_MASK = 0x00001000, /**< BPP service class */
- BT_SC_BIP_SERVICE_MASK = 0x00002000, /**< BIP service class */
- BT_SC_PANU_SERVICE_MASK = 0x00004000, /**< PANU service class */
- BT_SC_NAP_SERVICE_MASK = 0x00008000, /**< NAP service class */
- BT_SC_GN_SERVICE_MASK = 0x00010000, /**< GN service class */
- BT_SC_SAP_SERVICE_MASK = 0x00020000, /**< SAP service class */
- BT_SC_A2DP_SERVICE_MASK = 0x00040000, /**< A2DP service class */
- BT_SC_AVRCP_SERVICE_MASK = 0x00080000, /**< AVRCP service class */
- BT_SC_PBAP_SERVICE_MASK = 0x00100000, /**< PBAP service class */
- BT_SC_HID_SERVICE_MASK = 0x00200000, /**< HID service class */
- BT_SC_A2DP_SOURCE_SERVICE_MASK = 0x00400000, /**< A2DP SOURCE service class */
- BT_SC_ALL_SERVICE_MASK = 0x00FFFFFF, /**< ALL service class */
- BT_SC_MAX /**< MAX service class */
-} bt_service_class_t;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of major service class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MAJOR_SERVICE_CLASS_LIMITED_DISCOVERABLE_MODE = 0x002000, /**< Limited discoverable mode */
- BT_MAJOR_SERVICE_CLASS_POSITIONING = 0x010000, /**< Positioning class */
- BT_MAJOR_SERVICE_CLASS_NETWORKING = 0x020000, /**< Networking class */
- BT_MAJOR_SERVICE_CLASS_RENDERING = 0x040000, /**< Rendering class */
- BT_MAJOR_SERVICE_CLASS_CAPTURING = 0x080000, /**< Capturing class */
- BT_MAJOR_SERVICE_CLASS_OBJECT_TRANSFER = 0x100000, /**< Object transferring class */
- BT_MAJOR_SERVICE_CLASS_AUDIO = 0x200000, /**< Audio class*/
- BT_MAJOR_SERVICE_CLASS_TELEPHONY = 0x400000, /**< Telephony class */
- BT_MAJOR_SERVICE_CLASS_INFORMATION = 0x800000, /**< Information class */
-} bt_major_service_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of major device class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MAJOR_DEVICE_CLASS_MISC = 0x00, /**< Miscellaneous major device class*/
- BT_MAJOR_DEVICE_CLASS_COMPUTER = 0x01, /**< Computer major device class */
- BT_MAJOR_DEVICE_CLASS_PHONE = 0x02, /**< Phone major device class */
- BT_MAJOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT = 0x03, /**< LAN/Network access point major device class */
- BT_MAJOR_DEVICE_CLASS_AUDIO_VIDEO = 0x04, /**< Audio/Video major device class */
- BT_MAJOR_DEVICE_CLASS_PERIPHERAL = 0x05, /**< Peripheral major device class */
- BT_MAJOR_DEVICE_CLASS_IMAGING = 0x06, /**< Imaging major device class */
- BT_MAJOR_DEVICE_CLASS_WEARABLE = 0x07, /**< Wearable device class */
- BT_MAJOR_DEVICE_CLASS_TOY = 0x08, /**< Toy device class */
- BT_MAJOR_DEVICE_CLASS_HEALTH = 0x09, /**< Health device class */
- BT_MAJOR_DEVICE_CLASS_UNCATEGORIZED = 0x1F, /**< Uncategorized major device class */
-} bt_major_device_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of minor device class.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_MINOR_DEVICE_CLASS_COMPUTER_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_DESKTOP_WORKSTATION = 0x04, /**< Desktop workstation minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_SERVER_CLASS = 0x08, /**< Server minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_LAPTOP = 0x0C, /**< Laptop minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_HANDHELD_PC_OR_PDA = 0x10, /**< Handheld PC/PDA minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_PALM_SIZED_PC_OR_PDA = 0x14, /**< Palm sized PC/PDA minor device class of computer */
- BT_MINOR_DEVICE_CLASS_COMPUTER_WEARABLE_COMPUTER = 0x18, /**< Wearable(watch sized) minor device class of computer */
-
- BT_MINOR_DEVICE_CLASS_PHONE_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_CELLULAR = 0x04, /**< Cellular minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_CORDLESS = 0x08, /**< Cordless minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_SMART_PHONE = 0x0C, /**< Smart phone minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_WIRED_MODEM_OR_VOICE_GATEWAY = 0x10, /**< Wired modem or voice gateway minor device class of phone */
- BT_MINOR_DEVICE_CLASS_PHONE_COMMON_ISDN_ACCESS = 0x14, /**< Common ISDN minor device class of phone */
-
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_FULLY_AVAILABLE = 0x04, /**< Fully available minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_1_TO_17_PERCENT_UTILIZED = 0x20, /**< 1-17% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_17_TO_33_PERCENT_UTILIZED = 0x40, /**< 17-33% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_33_TO_50_PERCENT_UTILIZED = 0x60, /**< 33-50% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_50_to_67_PERCENT_UTILIZED = 0x80, /**< 50-67% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_67_TO_83_PERCENT_UTILIZED = 0xA0, /**< 67-83% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_83_TO_99_PERCENT_UTILIZED = 0xC0, /**< 83-99% utilized minor device class of LAN/Network access point */
- BT_MINOR_DEVICE_CLASS_LAN_NETWORK_ACCESS_POINT_NO_SERVICE_AVAILABLE = 0xE0, /**< No service available minor device class of LAN/Network access point */
-
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_WEARABLE_HEADSET = 0x04, /**< Wearable headset minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HANDS_FREE = 0x08, /**< Hands-free minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_MICROPHONE = 0x10, /**< Microphone minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_LOUDSPEAKER = 0x14, /**< Loudspeaker minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HEADPHONES = 0x18, /**< Headphones minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_PORTABLE_AUDIO = 0x1C, /**< Portable audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_CAR_AUDIO = 0x20, /**< Car audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_SET_TOP_BOX = 0x24, /**< Set-top box minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_HIFI_AUDIO_DEVICE = 0x28, /**< Hifi audio minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VCR = 0x2C, /**< VCR minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_CAMERA = 0x30, /**< Video camera minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_CAMCORDER = 0x34, /**< Camcorder minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_MONITOR = 0x38, /**< Video monitor minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_DISPLAY_LOUDSPEAKER = 0x3C, /**< Video display and loudspeaker minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_VIDEO_CONFERENCING = 0x40, /**< Video conferencing minor device class of audio/video */
- BT_MINOR_DEVICE_CLASS_AUDIO_VIDEO_GAMING_TOY = 0x48, /**< Gaming/toy minor device class of audio/video */
-
- BT_MINOR_DEVICE_CLASS_PERIPHERA_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_KEY_BOARD = 0x40, /**< Key board minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_POINTING_DEVICE = 0x80, /**< Pointing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_COMBO_KEYBOARD_POINTING_DEVICE = 0xC0, /**< Combo keyboard or pointing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_JOYSTICK = 0x04, /**< Joystick minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_GAME_PAD = 0x08, /**< Game pad minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_REMOTE_CONTROL = 0x0C, /**< Remote control minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_SENSING_DEVICE = 0x10, /**< Sensing device minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_DIGITIZER_TABLET = 0x14, /**< Digitizer minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_CARD_READER = 0x18, /**< Card reader minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_DIGITAL_PEN = 0x1C, /**< Digital pen minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_HANDHELD_SCANNER = 0x20, /**< Handheld scanner minor device class of peripheral */
- BT_MINOR_DEVICE_CLASS_PERIPHERAL_HANDHELD_GESTURAL_INPUT_DEVICE = 0x24, /**< Handheld gestural input device minor device class of peripheral */
-
- BT_MINOR_DEVICE_CLASS_IMAGING_DISPLAY = 0x10, /**< Display minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_CAMERA = 0x20, /**< Camera minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_SCANNER = 0x40, /**< Scanner minor device class of imaging */
- BT_MINOR_DEVICE_CLASS_IMAGING_PRINTER = 0x80, /**< Printer minor device class of imaging */
-
- BT_MINOR_DEVICE_CLASS_WEARABLE_WRIST_WATCH = 0x04, /**< Wrist watch minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_PAGER = 0x08, /**< Pager minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_JACKET = 0x0C, /**< Jacket minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_HELMET = 0x10, /**< Helmet minor device class of wearable */
- BT_MINOR_DEVICE_CLASS_WEARABLE_GLASSES = 0x14, /**< Glasses minor device class of wearable */
-
- BT_MINOR_DEVICE_CLASS_TOY_ROBOT = 0x04, /**< Robot minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_VEHICLE = 0x08, /**< Vehicle minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_DOLL_ACTION = 0x0C, /**< Doll/Action minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_CONTROLLER = 0x10, /**< Controller minor device class of toy */
- BT_MINOR_DEVICE_CLASS_TOY_GAME = 0x14, /**< Game minor device class of toy */
-
- BT_MINOR_DEVICE_CLASS_HEALTH_UNCATEGORIZED = 0x00, /**< Uncategorized minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_BLOOD_PRESSURE_MONITOR = 0x04, /**< Blood pressure monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_THERMOMETER = 0x08, /**< Thermometer minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_WEIGHING_SCALE = 0x0C, /**< Weighing scale minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_GLUCOSE_METER = 0x10, /**< Glucose minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_PULSE_OXIMETER = 0x14, /**< Pulse oximeter minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_HEART_PULSE_RATE_MONITOR = 0x18, /**< Heart/Pulse rate monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_DATA_DISPLAY = 0x1C, /**< Health data display minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_STEP_COUNTER = 0x20, /**< Step counter minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_BODY_COMPOSITION_ANALYZER = 0x24, /**< Body composition analyzer minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_PEAK_FLOW_MONITOR = 0x28, /**< Peak flow monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_MEDICATION_MONITOR = 0x2C, /**< Medication monitor minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_KNEE_PROSTHESIS = 0x30, /**< Knee prosthesis minor device class of health */
- BT_MINOR_DEVICE_CLASS_HEALTH_ANKLE_PROSTHESIS = 0x34, /**< Ankle prosthesis minor device class of health */
-} bt_minor_device_class_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of gap appearance type.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_APPEARANCE_TYPE_UNKNOWN = 0x00, /**< Unknown appearance type */
- BT_APPEARANCE_TYPE_GENERIC_PHONE = 0x40, /**< Generic Phone type - Generic category */
- BT_APPEARANCE_TYPE_GENERIC_COMPUTER = 0x80, /**< Generic Computer type - Generic category */
- BT_APPEARANCE_TYPE_GENERIC_WATCH = 0xC0, /**< Generic Watch type - Generic category */
-} bt_appearance_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth device's LE connection mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_DEVICE_LE_CONNECTION_MODE_BALANCED, /**< Balanced mode of power consumption and connection latency */
- BT_DEVICE_LE_CONNECTION_MODE_LOW_LATENCY, /**< Low connection latency but high power consumption */
- BT_DEVICE_LE_CONNECTION_MODE_LOW_ENERGY, /**< Low power consumption but high connection latency */
-} bt_device_le_connection_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Enumerations of connected Bluetooth device event role.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SOCKET_UNKNOWN = 0x00, /**< Unknown role*/
- BT_SOCKET_SERVER , /**< Server role*/
- BT_SOCKET_CLIENT, /**< Client role*/
-} bt_socket_role_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Enumerations of Bluetooth socket connection state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_SOCKET_CONNECTED, /**< RFCOMM is connected */
- BT_SOCKET_DISCONNECTED, /**< RFCOMM is disconnected */
-} bt_socket_connection_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Enumerations for the types of profiles related with audio
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AUDIO_PROFILE_TYPE_ALL = 0, /**< All supported profiles related with audio */
- BT_AUDIO_PROFILE_TYPE_HSP_HFP, /**< HSP(Headset Profile) and HFP(Hands-Free Profile) */
- BT_AUDIO_PROFILE_TYPE_A2DP, /**< A2DP(Advanced Audio Distribution Profile) */
- BT_AUDIO_PROFILE_TYPE_AG, /**< AG(Audio Gateway) */
- BT_AUDIO_PROFILE_TYPE_A2DP_SINK, /**< A2DP(Advanced Audio Distribution Profile) Sink role */
-} bt_audio_profile_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the call handling event
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_CALL_HANDLING_EVENT_ANSWER = 0x00, /**< Request to answer an incoming call */
- BT_AG_CALL_HANDLING_EVENT_RELEASE, /**< Request to release a call */
- BT_AG_CALL_HANDLING_EVENT_REJECT, /**< Request to reject an incoming call */
-} bt_ag_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Enumerations for the multi call handling event
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_AG_MULTI_CALL_HANDLING_EVENT_RELEASE_HELD_CALLS = 0x00, /**< Request to release held calls */
- BT_AG_MULTI_CALL_HANDLING_EVENT_RELEASE_ACTIVE_CALLS, /**< Request to release active calls */
- BT_AG_MULTI_CALL_HANDLING_EVENT_ACTIVATE_HELD_CALL, /**< Request to put active calls into hold state and activate another (held or waiting) call */
- BT_AG_MULTI_CALL_HANDLING_EVENT_MERGE_CALLS, /**< Request to add a held call to the conversation */
- BT_AG_MULTI_CALL_HANDLING_EVENT_EXPLICIT_CALL_TRANSFER, /**< Request to let a user who has two calls to connect these two calls together and release its connections to both other parties */
-} bt_ag_multi_call_handling_event_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the equalizer state
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_EQUALIZER_STATE_OFF = 0x01, /**< Equalizer Off */
- BT_AVRCP_EQUALIZER_STATE_ON, /**< Equalizer On */
-} bt_avrcp_equalizer_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the repeat mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_REPEAT_MODE_OFF = 0x01, /**< Repeat Off */
- BT_AVRCP_REPEAT_MODE_SINGLE_TRACK, /**< Single track repeat */
- BT_AVRCP_REPEAT_MODE_ALL_TRACK, /**< All track repeat */
- BT_AVRCP_REPEAT_MODE_GROUP, /**< Group repeat */
-} bt_avrcp_repeat_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the shuffle mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_SHUFFLE_MODE_OFF = 0x01, /**< Shuffle Off */
- BT_AVRCP_SHUFFLE_MODE_ALL_TRACK, /**< All tracks shuffle */
- BT_AVRCP_SHUFFLE_MODE_GROUP, /**< Group shuffle */
-} bt_avrcp_shuffle_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the scan mode
- * @since_tizen @if WEARABLE 3.0 @else 2.4 @endif
- */
-typedef enum {
- BT_AVRCP_SCAN_MODE_OFF = 0x01, /**< Scan Off */
- BT_AVRCP_SCAN_MODE_ALL_TRACK, /**< All tracks scan */
- BT_AVRCP_SCAN_MODE_GROUP, /**< Group scan */
-} bt_avrcp_scan_mode_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumerations for the player state
- * @since_tizen 3.0
- */
-typedef enum {
- BT_AVRCP_PLAYER_STATE_STOPPED = 0x00, /**< Stopped */
- BT_AVRCP_PLAYER_STATE_PLAYING, /**< Playing */
- BT_AVRCP_PLAYER_STATE_PAUSED, /**< Paused */
- BT_AVRCP_PLAYER_STATE_FORWARD_SEEK, /**< Seek Forward */
- BT_AVRCP_PLAYER_STATE_REWIND_SEEK, /**< Seek Rewind */
-} bt_avrcp_player_state_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Enumeration for the player control commands
- * @since_tizen 3.0
- */
-typedef enum {
- BT_AVRCP_CONTROL_PLAY = 0x01, /**< Play */
- BT_AVRCP_CONTROL_PAUSE, /**< Pause */
- BT_AVRCP_CONTROL_STOP, /**< Stop */
- BT_AVRCP_CONTROL_NEXT, /**< Next Track*/
- BT_AVRCP_CONTROL_PREVIOUS, /**< Previous track */
- BT_AVRCP_CONTROL_FAST_FORWARD, /**< Fast Forward */
- BT_AVRCP_CONTROL_REWIND /**< Rewind */
-} bt_avrcp_player_command_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Structure of Track metadata information.
- * @since_tizen 3.0
- *
- * @see #bt_class_s
- */
-typedef struct {
- const char *title; /**< Title */
- const char *artist; /**< Artist */
- const char *album; /**< Album name */
- const char *genre; /**< Album Genre */
- unsigned int total_tracks; /**< The total number of tracks */
- unsigned int number; /**< Track number */
- unsigned int duration; /**< Duration */
-} bt_avrcp_metadata_attributes_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen 3.0
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_control_initialize()
- * @see bt_avrcp_control_deinitialize()
- */
-typedef void (*bt_avrcp_control_connection_state_changed_cb) (bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song position mode is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] position Playback position in milliseconds. When position is 0 it means the track is starting and when it's greater than or equal to track's duration the track has ended.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_position_changed_cb()
- * @see bt_avrcp_unset_position_changed_cb()
- */
-typedef void (*bt_avrcp_position_changed_cb) (unsigned int position, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song metadata information is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] track The song metadata information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_track_info_changed_cb()
- * @see bt_avrcp_unset_track_info_changed_cb()
- */
-typedef void (*bt_avrcp_track_info_changed_cb) (bt_avrcp_metadata_attributes_info_s *track, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the Song Play status mode is changed by the remote target device.
- * @since_tizen 3.0
- * @param[in] play_state The song play status
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_play_status_changed_cb()
- * @see bt_avrcp_unset_play_status_changed_cb()
- */
-typedef void (*bt_avrcp_play_status_changed_cb) (bt_avrcp_player_state_e play_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Enumerations for the data channel type
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_HDP_CHANNEL_TYPE_RELIABLE = 0x01, /**< Reliable Data Channel */
- BT_HDP_CHANNEL_TYPE_STREAMING, /**< Streaming Data Channel */
-} bt_hdp_channel_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the integer type for GATT handle's value.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_DATA_TYPE_SINT8, /**< 8 bit signed int type */
- BT_DATA_TYPE_SINT16, /**< 16 bit signed int type */
- BT_DATA_TYPE_SINT32, /**< 32 bit signed int type */
- BT_DATA_TYPE_UINT8, /**< 8 bit unsigned int type */
- BT_DATA_TYPE_UINT16, /**< 16 bit unsigned int type */
- BT_DATA_TYPE_UINT32 /**< 32 bit unsigned int type */
-} bt_data_type_int_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the float type for GATT handle's value.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_DATA_TYPE_FLOAT, /**< 32 bit float type */
- BT_DATA_TYPE_SFLOAT /**< 16 bit float type */
-} bt_data_type_float_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the write type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_WRITE_TYPE_WRITE_NO_RESPONSE, /**< Write without response type */
- BT_GATT_WRITE_TYPE_WRITE /**< Write type */
-} bt_gatt_write_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the GATT handle's type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_TYPE_SERVICE = 0x01, /**< GATT service type */
- BT_GATT_TYPE_CHARACTERISTIC = 0x02, /** GATT characteristic type */
- BT_GATT_TYPE_DESCRIPTOR = 0x03, /** GATT descriptor type */
-} bt_gatt_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the service type.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_SERVICE_TYPE_PRIMARY = 0x01, /**< GATT primary service type */
- BT_GATT_SERVICE_TYPE_SECONDARY = 0x02, /**< GATT secondary service type */
-} bt_gatt_service_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of the characteristic's property.
- * @since_tizen 2.3.1
- */
-typedef enum {
- BT_GATT_PROPERTY_BROADCAST = 0x01, /**< Broadcast property */
- BT_GATT_PROPERTY_READ = 0x02, /**< Read property */
- BT_GATT_PROPERTY_WRITE_WITHOUT_RESPONSE = 0x04, /**< Write without response property */
- BT_GATT_PROPERTY_WRITE = 0x08, /**< Write property */
- BT_GATT_PROPERTY_NOTIFY = 0x10, /**< Notify property */
- BT_GATT_PROPERTY_INDICATE = 0x20, /**< Indicate property */
- BT_GATT_PROPERTY_AUTHENTICATED_SIGNED_WRITES = 0x40, /**< Authenticated signed writes property */
- BT_GATT_PROPERTY_EXTENDED_PROPERTIES = 0x80, /**< Extended properties */
-} bt_gatt_property_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Enumerations of gatt server's service changing mode.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_CLIENT_SERVICE_ADDED, /**< Service added */
- BT_GATT_CLIENT_SERVICE_REMOVED, /**< Service removed */
-} bt_gatt_client_service_change_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Enumerations of the attribute's permission.
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_PERMISSION_READ = 0x01, /**< Readable permission */
- BT_GATT_PERMISSION_WRITE = 0x02, /**< Writable permission */
- BT_GATT_PERMISSION_ENCRYPT_READ = 0x04, /**< Readable permission required encryption */
- BT_GATT_PERMISSION_ENCRYPT_WRITE = 0x08, /**< Writable permission required encryption */
- BT_GATT_PERMISSION_ENCRYPT_AUTHENTICATED_READ = 0x10, /**< Readable permission required encryption and authentication */
- BT_GATT_PERMISSION_ENCRYPT_AUTHENTICATED_WRITE = 0x20, /**< Writable permission required encryption and authentication */
-} bt_gatt_permission_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Enumerations of the remote device request types for attributes
- * @since_tizen 3.0
- */
-typedef enum {
- BT_GATT_REQUEST_TYPE_READ = 0x00, /* Read Requested */
- BT_GATT_REQUEST_TYPE_WRITE = 0x01, /* Write Requested */
-} bt_gatt_att_request_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Enumerations for the types of PAN(Personal Area Networking) service.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef enum {
- BT_PANU_SERVICE_TYPE_NAP = 0, /**< Network Access Point */
-} bt_panu_service_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle to control Bluetooth LE advertising.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef void *bt_advertiser_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of address book location for PBAP.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_SOURCE_DEVICE = 0x00, /**< Request for Addressbook from remote device */
- BT_PBAP_SOURCE_SIM , /**< Request for address book from SIM */
-} bt_pbap_address_book_source_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of folder type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_FOLDER_PHONE_BOOK = 0x00, /**< Request for address book */
- BT_PBAP_FOLDER_INCOMING , /**< Request for incoming calls */
- BT_PBAP_FOLDER_OUTGOING , /**< Request for outgoing calls */
- BT_PBAP_FOLDER_MISSED , /**< Request for missed calls */
- BT_PBAP_FOLDER_COMBINED , /**< Request for combined calls */
-} bt_pbap_folder_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of phone book search fields.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_SEARCH_NAME = 0x00, /**< Request for search by name (default) */
- BT_PBAP_SEARCH_NUMBER, /**< Request for search by phone number */
- BT_PBAP_SEARCH_SOUND, /**< Request for search by sound */
-} bt_pbap_search_field_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of vCard Formats.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_VCARD_FORMAT_VCARD21 = 0x00, /**< vCard format 2.1 (default) */
- BT_PBAP_VCARD_FORMAT_VCARD30, /**< vCard format 3.0 */
-} bt_pbap_vcard_format_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Enumeration of sorting orders.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_PBAP_ORDER_INDEXED = 0x00, /**< Filter order indexed (default) */
- BT_PBAP_ORDER_ALPHANUMERIC, /**< Filter order alphanumeric */
- BT_PBAP_ORDER_PHONETIC, /**< Filter order phonetic */
-} bt_pbap_sort_order_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a service, characteristic or descriptor.
- * @since_tizen 2.3.1
- */
-typedef void *bt_gatt_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief The handle of a GATT client which is associated with a remote device.
- * @since_tizen 2.3.1
- */
-typedef void *bt_gatt_client_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief The handle of a GATT server.
- * @since_tizen 3.0
- */
-typedef void *bt_gatt_server_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief The handle of calls state.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- */
-typedef void *bt_call_list_h;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Class structure of device and service.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_device_info_s
- * @see #bt_adapter_device_discovery_info_s
- * @see bt_device_bond_created_cb()
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-typedef struct {
- bt_major_device_class_e major_device_class; /**< Major device class. */
- bt_minor_device_class_e minor_device_class; /**< Minor device class. */
- int major_service_class_mask; /**< Major service class mask.
- This value can be a combination of #bt_major_service_class_e like #BT_MAJOR_SERVICE_CLASS_RENDERING | #BT_MAJOR_SERVICE_CLASS_AUDIO */
-} bt_class_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Structure of device discovery information.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_class_s
- * @see bt_adapter_device_discovery_state_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char *remote_name; /**< The name of remote device */
- bt_class_s bt_class; /**< The Bluetooth classes */
- int rssi; /**< The strength indicator of received signal */
- bool is_bonded; /**< The bonding state */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services */
- bt_appearance_type_e appearance; /**< The Bluetooth appearance */
- int manufacturer_data_len; /**< manufacturer specific data length */
- char *manufacturer_data; /**< manufacturer specific data */
-} bt_adapter_device_discovery_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of le scan result information.
- * @since_tizen 2.3.1
- *
- * @see bt_adapter_le_start_scan()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- bt_device_address_type_e address_type; /**< The address type of remote device */
- int rssi; /**< The strength indicator of received signal */
- int adv_data_len; /**< advertising indication data length */
- char *adv_data; /**< advertising indication data */
- int scan_data_len; /**< scan response data length */
- char *scan_data; /**< scan response data */
-} bt_adapter_le_device_scan_result_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Structure of le iBeacon scan result information.
- * @since_tizen 3.0
- *
- * @see bt_adapter_le_start_scan()
- */
-typedef struct {
- int company_id; /**< company ID */
- int ibeacon_type; /**< Ibeacon type */
- char *uuid; /**< UUID */
- int major_id; /**< Major ID */
- int minor_id; /**< Minor ID */
- int measured_power; /**< measured Power */
-} bt_adapter_ibeacon_scan_result_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief LE service data structure.
- * @since_tizen 2.3.1
- *
- * @see bt_adapter_le_get_scan_result_service_data()
- */
-typedef struct {
- char *service_uuid; /**< 16 bit UUID of the service data */
- char *service_data; /**< Service data */
- int service_data_len; /**< Service data length */
-} bt_adapter_le_service_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device information structure used for identifying pear device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see #bt_class_s
- * @see bt_device_bond_created_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char *remote_name; /**< The name of remote device */
- bt_class_s bt_class; /**< The Bluetooth classes */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services */
- bool is_bonded; /**< The bonding state */
- bool is_connected; /**< The connection state */
- bool is_authorized; /**< The authorization state */
- int manufacturer_data_len; /**< manufacturer specific data length */
- char *manufacturer_data; /**< manufacturer specific data */
-} bt_device_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Service Discovery Protocol (SDP) data structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This protocol is used for discovering available services or pear device,
- * and finding one to connect with.
- *
- * @see bt_device_service_searched_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- char **service_uuid; /**< The UUID list of service */
- int service_count; /**< The number of services. */
-} bt_device_sdp_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Device connection information structure.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see bt_device_connection_state_changed_cb()
- */
-typedef struct {
- char *remote_address; /**< The address of remote device */
- bt_device_connection_link_type_e link; /**< Link type */
- bt_device_disconnect_reason_e disconn_reason; /**< Disconnection reason */
-} bt_device_connection_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Rfcomm connection data used for exchanging data between Bluetooth devices.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @see bt_socket_connection_state_changed_cb()
- */
-typedef struct {
- int socket_fd; /**< The file descriptor of connected socket */
- int server_fd; /**< The file descriptor of the server socket or -1 for client connection */
- bt_socket_role_e local_role; /**< The local device role in this connection */
- char *remote_address; /**< The remote device address */
- char *service_uuid; /**< The service UUId */
-} bt_socket_connection_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Structure of RFCOMM received data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks User can use standard linux functions for reading/writing
- * data from/to sockets.
- *
- * @see bt_socket_data_received_cb()
- */
-typedef struct {
- int socket_fd; /**< The socket fd */
- int data_size; /**< The length of the received data */
- char *data; /**< The received data */
-} bt_socket_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the Bluetooth adapter state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the adapter state changing
- * @param[in] adapter_state The adapter state to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_adapter_set_state_changed_cb()
- * @see bt_adapter_unset_state_changed_cb()
- */
-typedef void (*bt_adapter_state_changed_cb)(int result, bt_adapter_state_e adapter_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when adapter name changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] device_name The name of the Bluetooth device to be changed
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked when the name of Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_name_changed_cb().
- * @see bt_adapter_set_name()
- * @see bt_adapter_set_name_changed_cb()
- * @see bt_adapter_unset_name_changed_cb()
- */
-typedef void (*bt_adapter_name_changed_cb)(char *device_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the visibility mode changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the visibility mode changing
- * @param[in] visibility_mode The visibility mode to be changed
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre This function will be invoked when the visibility of Bluetooth adapter changes
- * if you register this callback using bt_adapter_set_visibility_mode_changed_cb().
- *
- * @see bt_adapter_set_visibility_mode_changed_cb()
- * @see bt_adapter_unset_visibility_mode_changed_cb()
- */
-typedef void (*bt_adapter_visibility_mode_changed_cb)
- (int result, bt_adapter_visibility_mode_e visibility_mode, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called every second until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks This callback function is called only if visibility mode is #BT_ADAPTER_VISIBILITY_MODE_LIMITED_DISCOVERABLE.
- * @param[in] duration The duration until the visibility mode is changed to #BT_ADAPTER_VISIBILITY_MODE_NON_DISCOVERABLE (in seconds)
- * @param[in] user_data The user data passed from the callback registration function
- * @pre This function will be invoked if you register this callback using bt_adapter_set_visibility_duration_changed_cb().
- * @see bt_adapter_set_visibility_duration_changed_cb()
- * @see bt_adapter_unset_visibility_duration_changed_cb()
- */
-typedef void (*bt_adapter_visibility_duration_changed_cb)(int duration, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when the state of device discovery changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If \a discovery_state is #BT_ADAPTER_DEVICE_DISCOVERY_FOUND,
- * then you can get some information, such as remote device address, remote device name, rssi, and bonding state.
- *
- * @param[in] result The result of the device discovery
- * @param[in] discovery_state The discovery state to be changed
- * @param[in] discovery_info The information of the discovered device \n
- * If \a discovery_state is #BT_ADAPTER_DEVICE_DISCOVERY_STARTED or
- * #BT_ADAPTER_DEVICE_DISCOVERY_FINISHED, then \a discovery_info is NULL.
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre Either bt_adapter_start_device_discovery() or bt_adapter_stop_device_discovery() will invoke this function
- * if you register this callback using bt_adapter_set_device_discovery_state_changed_cb().
- *
- * @see bt_adapter_start_device_discovery()
- * @see bt_adapter_stop_device_discovery()
- * @see bt_adapter_set_device_discovery_state_changed_cb()
- * @see bt_adapter_unset_device_discovery_state_changed_cb()
- *
- */
-typedef void (*bt_adapter_device_discovery_state_changed_cb)
- (int result, bt_adapter_device_discovery_state_e discovery_state, bt_adapter_device_discovery_info_s *discovery_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_MODULE
- * @brief Called when you get bonded devices repeatedly.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] device_info The bonded device information
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_adapter_foreach_bonded_device() will invoke this function.
- *
- * @see bt_adapter_foreach_bonded_device()
- *
- */
-typedef bool (*bt_adapter_bonded_device_cb)(bt_device_info_s *device_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the LE advertisement has been found.
- * @since_tizen 2.3.1
- *
- * @param[in] result The result of the LE scan
- * @param[in] info The information of the found LE advertisement.
- * @param[in] user_data The user data passed from the start function
- *
- * @see bt_adapter_le_start_scan()
- *
- */
-typedef void (*bt_adapter_le_scan_result_cb)(int result,
- bt_adapter_le_device_scan_result_info_s *info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_ADAPTER_LE_MODULE
- * @brief Called when the state of advertiser changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[out] result The result of the requested state change of advertiser
- * @param[out] advertiser The handle of the state changed advertiser
- * @param[out] adv_state The advertiser state to be changed
- * @param[out] user_data The user data passed from the start function
- *
- * @see bt_adapter_le_start_advertising_new()
- * @see bt_adapter_le_stop_advertising()
- */
-typedef void (*bt_adapter_le_advertising_state_changed_cb)(int result,
- bt_advertiser_h advertiser, bt_adapter_le_advertising_state_e adv_state, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the process of creating bond finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remarks If the remote user does not respond within 60 seconds, a time out will happen with #BT_ERROR_TIMED_OUT result code.\n
- * If bt_device_cancel_bonding() is called and it returns #BT_ERROR_NONE, then this callback function will be called
- * with #BT_ERROR_CANCELLED result. \n
- * If creating a bond succeeds but service search fails, then this callback will be called with #BT_ERROR_SERVICE_SEARCH_FAILED.
- * In this case, you should try service search again by bt_device_start_service_search() to get the supported service list.
- *
- * @param[in] result The result of the bonding device
- * @param[in] device_info The device information which you creates bond with
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre Either bt_device_create_bond() will invoke this function
- * if you register this callback using bt_device_set_bond_created_cb().
- *
- * @see bt_device_create_bond()
- * @see bt_device_cancel_bonding()
- * @see bt_device_set_bond_created_cb()
- * @see bt_device_unset_bond_created_cb()
- */
-typedef void (*bt_device_bond_created_cb)(int result, bt_device_info_s *device_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when you get connected profiles repeatedly.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] profile The connected Bluetooth profile
- * @param[in] user_data The user data passed from the foreach function
- * @return @c true to continue with the next iteration of the loop,
- * \n @c false to break out of the loop.
- * @pre bt_device_foreach_connected_profiles() will invoke this function.
- * @see bt_device_foreach_connected_profiles()
- */
-typedef bool (*bt_device_connected_profile)(bt_profile_e profile, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the bond destroys.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result that a bond is destroyed
- * @param[in] remote_address The address of the remote Bluetooth device to destroy bond with
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_device_destroy_bond() will invoke this function
- * if you register this callback using bt_device_set_bond_destroyed_cb().
- *
- * @see bt_device_destroy_bond()
- * @see bt_device_set_bond_destroyed_cb()
- * @see bt_device_unset_bond_destroyed_cb()
- */
-typedef void (*bt_device_bond_destroyed_cb)(int result, char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the authorization of device changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] authorization The authorization of device
- * @param[in] remote_address The address of the remote Bluetooth device which is (un)authorized
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_device_set_authorization() will invoke this function if you register this callback using bt_device_set_authorization_changed_cb().
- *
- * @see bt_device_set_authorization()
- * @see #bt_device_set_authorization_changed_cb()
- * @see #bt_device_unset_authorization_changed_cb()
- */
-typedef void (*bt_device_authorization_changed_cb)
- (bt_device_authorization_e authorization, char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the process of service search finishes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @remark
- *
- * @param[in] result The result of the service searching
- * @param[in] sdp_info The structure of service lists found on a device
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_device_start_service_search() will invoke this function
- * if you register this callback using bt_device_set_service_searched_cb().
- *
- * @see bt_device_start_service_search()
- * @see bt_device_set_service_searched_cb()
- * @see bt_device_unset_service_searched_cb()
- *
- */
-typedef void (*bt_device_service_searched_cb)(int result, bt_device_sdp_info_s *sdp_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_DEVICE_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected The connection status: (@c true = connected, @c false = disconnected)
- * @param[in] conn_info The connection information
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_device_set_connection_state_changed_cb()
- * @see bt_device_unset_connection_state_changed_cb()
- */
-typedef void (*bt_device_connection_state_changed_cb)(bool connected, bt_device_connection_info_s *conn_info, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when you receive data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] data The received data from the remote device
- * @param[in] user_data The user data passed from the callback registration function
- *
- * @pre When the connected remote Bluetooth device invokes bt_socket_send_data(),
- * this function will be invoked if you register this function using bt_socket_set_data_received_cb().
- *
- * @see bt_socket_set_data_received_cb()
- * @see bt_socket_unset_data_received_cb()
- * @see bt_socket_send_data()
- */
-typedef void (*bt_socket_data_received_cb)(bt_socket_received_data_s *data, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when the socket connection state changes.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of connection state changing
- * @param[in] connection_state The connection state
- * @param[in] connection The connection information which is established or disconnected
- * @param[in] user_data The user data passed from the callback registration function
- * @pre Either bt_socket_connect_rfcomm() will invoke this function.
- * In addition, bt_socket_connection_state_changed_cb() will be invoked when the socket connection state is changed.
- * @see bt_socket_listen_and_accept_rfcomm()
- * @see bt_socket_connect_rfcomm()
- * @see bt_socket_set_connection_state_changed_cb()
- * @see bt_socket_unset_connection_state_changed_cb()
- */
-typedef void (*bt_socket_connection_state_changed_cb)
- (int result, bt_socket_connection_state_e connection_state, bt_socket_connection_s *connection, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_SOCKET_MODULE
- * @brief Called when a RFCOMM connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] socket_fd The file descriptor of socket on which a connection is requested
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @pre If you register this callback function by bt_socket_set_connection_requested_cb(),
- * bt_socket_connection_requested_cb() will be invoked.
- */
-typedef void (*bt_socket_connection_requested_cb) (int socket_fd, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when an OPP connection is requested.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details You must call bt_opp_server_accept_connection() if you want to accept.
- * Otherwise, you must call bt_opp_server_reject_connection().
- * @param[in] remote_address The address of remote device
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_reject()
- */
-typedef void (*bt_opp_server_connection_requested_cb)(const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when a file is being transferred.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] percent The progress in percentage (1 ~ 100)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_accept_connection()
- */
-typedef void (*bt_opp_server_transfer_progress_cb) (const char *file, long long size, int percent, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_SERVER_MODULE
- * @brief Called when a transfer is finished.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] error_code The result of push
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_server_accept()
- * @see bt_opp_server_accept_connection()
- */
-typedef void (*bt_opp_server_transfer_finished_cb) (int result, const char *file, long long size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when OPP server responds to the push request.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of OPP server response
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_opp_client_push_files() will invoke this function.
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_responded_cb)(int result, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when each file is being transferred.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] file The path of file to be pushed
- * @param[in] size The file size (bytes)
- * @param[in] percent The progress in percentage (1 ~ 100). 100 means that a file is transferred completely.
- * @param[in] user_data The user data passed from the callback registration function
- * @pre bt_opp_client_push_files() will invoke this function.
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_progress_cb)(const char *file, long long size, int percent, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_OPP_CLIENT_MODULE
- * @brief Called when the push request is finished.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of the push request
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_opp_client_push_files()
- */
-typedef void (*bt_opp_client_push_finished_cb)(int result, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_audio_connect() or bt_audio_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] type The type of audio profile except #BT_AUDIO_PROFILE_TYPE_ALL
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_audio_set_connection_state_changed_cb()
- * @see bt_audio_unset_connection_state_changed_cb()
- */
-typedef void (*bt_audio_connection_state_changed_cb) (int result, bool connected, const char *remote_address, bt_audio_profile_type_e type, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] call_id The call ID
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_call_handling_event_cb()
- * @see bt_ag_unset_call_handling_event_cb()
- */
-typedef void (*bt_ag_call_handling_event_cb) (bt_ag_call_handling_event_e event, unsigned int call_id, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a multi call handling event happened from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] event The call handling event happened from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_multi_call_handling_event_cb()
- * @see bt_ag_unset_multi_call_handling_event_cb()
- */
-typedef void (*bt_ag_multi_call_handling_event_cb) (bt_ag_multi_call_handling_event_e event, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when a DTMF(Dual Tone Multi Frequency) is transmitted from Hands-Free.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] dtmf The DTMF transmitted from Hands-Free
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_dtmf_transmitted_cb()
- * @see bt_ag_unset_dtmf_transmitted_cb()
- */
-typedef void (*bt_ag_dtmf_transmitted_cb) (const char *dtmf, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the speaker gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] gain The gain of speaker (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_speaker_gain_changed_cb()
- * @see bt_ag_unset_speaker_gain_changed_cb()
- */
-typedef void (*bt_ag_speaker_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the microphone gain of the remote device is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] gain The gain of microphone (0 ~ 15)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_microphone_gain_changed_cb()
- * @see bt_ag_unset_microphone_gain_changed_cb()
- */
-typedef void (*bt_ag_microphone_gain_changed_cb) (int gain, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_target_initialize()
- * @see bt_avrcp_target_deinitialize()
- */
-typedef void (*bt_avrcp_target_connection_state_changed_cb) (bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the equalizer state is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] equalizer The equalizer state
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_equalizer_state_changed_cb()
- * @see bt_avrcp_unset_equalizer_state_changed_cb()
- */
-typedef void (*bt_avrcp_equalizer_state_changed_cb) (bt_avrcp_equalizer_state_e equalizer, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the repeat mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] repeat The repeat mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_repeat_mode_changed_cb()
- * @see bt_avrcp_unset_repeat_mode_changed_cb()
- */
-typedef void (*bt_avrcp_repeat_mode_changed_cb) (bt_avrcp_repeat_mode_e repeat, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the shuffle mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] shuffle The shuffle mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_shuffle_mode_changed_cb()
- * @see bt_avrcp_unset_shuffle_mode_changed_cb()
- */
-typedef void (*bt_avrcp_shuffle_mode_changed_cb) (bt_avrcp_shuffle_mode_e shuffle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AVRCP_MODULE
- * @brief Called when the scan mode is changed by the remote control device.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] shuffle The shuffle mode
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_avrcp_set_scan_mode_changed_cb()
- * @see bt_avrcp_unset_scan_mode_changed_cb()
- */
-typedef void (*bt_avrcp_scan_mode_changed_cb) (bt_avrcp_scan_mode_e scan, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_HOST_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen 2.3.1
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_hid_host_connect() or bt_hid_host_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_host_connect()
- * @see bt_hid_host_disconnect()
- */
-typedef void (*bt_hid_host_connection_state_changed_cb) (int result, bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the connection is established.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of connecting to the remote device
- * @param[in] remote_address The address of connected remote device
- * @param[in] app_id The ID of application
- * @param[in] type The type of HDP(Health Device Profile) channel
- * @param[in] channel The connected data channel
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_disconnected_cb
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-typedef void (*bt_hdp_connected_cb) (int result, const char *remote_address, const char *app_id,
- bt_hdp_channel_type_e type, unsigned int channel, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the connection is disconnected.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] result The result of disconnecting from the remote device
- * @param[in] remote_address The address of disconnected remote device
- * @param[in] channel The connected data channel
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_connected_cb
- * @see bt_hdp_set_connection_state_changed_cb()
- * @see bt_hdp_unset_connection_state_changed_cb()
- */
-typedef void (*bt_hdp_disconnected_cb) (int result, const char *remote_address, unsigned int channel, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HDP_MODULE
- * @brief Called when the you receive the data.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] channel The connected data channel
- * @param[in] data The received data
- * @param[in] size The size of received data (byte)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hdp_set_data_received_cb()
- * @see bt_hdp_unset_data_received_cb()
- */
-typedef void (*bt_hdp_data_received_cb) (unsigned int channel, const char *data, unsigned int size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when you get GATT handles repeatedly
- * @since_tizen 2.3.1
- *
- * @param[in] total The total number of GATT handles to be called
- * @param[in] index The index of current GATT handle. It starts from 0.
- * @param[in] gatt_handle The GATT handle
- * @param[in] user_data The user data passed from the foreach function
- *
- * @see bt_gatt_service_foreach_characteristics()
- * @see bt_gatt_service_foreach_included_services()
- * @see bt_gatt_characteristic_foreach_descriptors()
- * @see bt_gatt_client_foreach_services()
- */
-typedef bool (*bt_gatt_foreach_cb) (int total, int index, bt_gatt_h gatt_handle,
- void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when the client request(e.g. read / write) has been completed
- * @since_tizen 2.3.1
- *
- * @param[in] result The result of a request
- * @param[in] request_handle The requesting GATT handle
- * @param[in] user_data The user data passed from the requesting function
- *
- * @see bt_gatt_client_read_value()
- * @see bt_gatt_client_write_value()
- */
-typedef void (*bt_gatt_client_request_completed_cb) (int result,
- bt_gatt_h request_handle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a value of a watched characteristic's GATT handle has been changed
- * @since_tizen 2.3.1
- *
- * @remarks After this function is returned, a changed value is automatically
- * applied to @a characteristic. Before that, @a characteristic has an old value.
- *
- * @param[in] characteristic The characteristic's GATT handle of which value change is informed. It has an old value.
- * @param[in] value The new value
- * @param[in] len The length of @a value
- * @param[in] user_data The user data passed from the registering function
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-typedef void (*bt_gatt_client_characteristic_value_changed_cb) (bt_gatt_h characteristic,
- char *value, int len, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when a service of a remote GATT server has been changed.
- * @since_tizen 3.0
- *
- * @param[in] client The handle of a GATT client which is associated with a remote device.
- * @param[in] change_type The changed type
- * @param[in] service_uuid The changed service uuid
- * @param[in] user_data The user data passed from the registering function
- *
- * @see bt_gatt_client_set_characteristic_value_changed_cb()
- */
-typedef void (*bt_gatt_client_service_changed_cb) (bt_gatt_client_h client,
- bt_gatt_client_service_change_type_e change_type,
- const char* service_uuid, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you called bt_gatt_connect() or bt_gatt_disconnect(), this callback is also called with error result even though these functions fail.
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The state to be changed, @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote_address
- * @param[in] user_data The user data passed from the callback registration function.
- *
- * @see bt_gatt_connect()
- * @see bt_gatt_disconnect()
- * @see bt_gatt_set_connection_state_changed_cb()
- * @see bt_gatt_unset_connection_state_changed_cb()
- */
-typedef void (*bt_gatt_connection_state_changed_cb)(int result, bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when a value of a characteristic or descriptor's GATT handle has been changed.
- * @since_tizen 3.0
- *
- * @details For finishing the request, call the function #bt_gatt_server_send_response in callback.
- *
- * @remarks After this function is returned, a changed value is automatically
- * applied to @a gatt_handle. Before that, @a gatt_handle has an old value.
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- * @remarks The @a value must not be freed by application.
- *
- * @param[in] remote_address The address of the remote device which requests a change
- * @param[in] request_id The identification of this request. It will be used to send a response.
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic or descriptor's GATT handle which has an old value
- * @param[in] offset The requested offset from where the @a gatt_handle value will be updated
- * @param[in] value The new value
- * @param[in] len The length of @a value
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_write_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-typedef void (*bt_gatt_server_write_value_requested_cb) (const char *remote_address,
- int request_id, bt_gatt_server_h server,
- bt_gatt_h gatt_handle, int offset,
- const char *value, int len, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the remote device requests to read a value on a GATT server.
- * @since_tizen 3.0
- *
- * @details For finishing the request, call the function #bt_gatt_server_send_response in callback.
- *
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- *
- * @param[in] remote_address The address of the requesting remote device
- * @param[in] request_id The identification of this request. It will be used to send a response.
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic or descriptor's GATT handle to be read
- * @param[in] offset The requested offset from where the GATT handle's value is read
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_read_value_requested_cb()
- * @see bt_gatt_server_send_response()
- */
-typedef void (*bt_gatt_server_read_value_requested_cb) (const char *remote_address,
- int request_id, bt_gatt_server_h server, bt_gatt_h gatt_handle,
- int offset, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the remote device enables or disables the Notification/Indication for particular characteristics.
- * @since_tizen 3.0
- *
- * @details By using this callback function, server can know notification state.
- *
- * @remarks The @a server must not be freed by application.
- * @remarks The @a gatt_handle must not be freed by application.
- *
- * @param[in] notify Indicates whether the Notification/Indication is enabled or not
- * @param[in] server The GATT server handle
- * @param[in] gatt_handle The characteristic's GATT handle to be read
- * @param[in] user_data The user data passed from the registration function
- *
- * @see bt_gatt_server_set_read_value_requested_cb()
- */
-typedef void (*bt_gatt_server_characteristic_notification_state_changed_cb) (bool notify,
- bt_gatt_server_h server, bt_gatt_h gatt_handle, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_GATT_SERVER_MODULE
- * @brief Called when the sending notification / indication is done.
- * @since_tizen 3.0
- *
- * @remarks The @a remote_address must not be freed by application.
- * @remarks The @a server must not be freed by application.
- * @remarks The @a characteristic must not be freed by application.
- *
- * @remarks In case of an indication, once a confirmation is received from the remote device this callback will be called. \n
- * This callback will be called several times if there are two or more remote devices which enable a Client Characteristic Configuration Descriptor(CCCD). \n
- * For the last remote device, @a completed will be set as true.
- *
- * @param[in] result The result of a sending operation
- * @param[in] remote_address The address of the remote device
- * @param[in] server The GATT server handle
- * @param[in] characteristic The characteristic's GATT handle
- * @param[in] completed If this callback is for the last remote device which enables a CCCD, it will be true. Or it will be false.
- * @param[in] user_data The user data passed from the requesting function
- *
- * @see bt_gatt_server_notify_characteristic_changed_value()
- */
-typedef void (*bt_gatt_server_notification_sent_cb) (int result,
- const char *remote_address, bt_gatt_server_h server,
- bt_gatt_h characteristic, bool completed, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_NAP_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @param[in] connected Indicates whether a client is connected or disconnected
- * @param[in] remote_address The remote address
- * @param[in] interface_name The interface name. For example, bnep0, bnep1.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_nap_set_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-typedef void (*bt_nap_connection_state_changed_cb) (bool connected, const char *remote_address, const char *interface_name, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PAN_PANU_MODULE
- * @brief Called when the connection state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the connection state is changed.
- * When you call bt_panu_connect() or bt_panu_disconnect(), this callback is also called with error result even though these functions fail.
- * @param[in] result The result of changing the connection state
- * @param[in] connected The state to be changed. @a true means connected state, Otherwise, @a false.
- * @param[in] remote_address The remote address
- * @param[in] type The type of PAN service
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_nap_set_connection_state_changed_cb()
- * @see bt_nap_unset_connection_state_changed_cb()
- */
-typedef void (*bt_panu_connection_state_changed_cb) (int result, bool connected, const char *remote_address, bt_panu_service_type_e type, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID mouse's button.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_MOUSE_BUTTON_NONE = 0x00, /**<The mouse's none value*/
- BT_HID_MOUSE_BUTTON_LEFT = 0x01, /**<The mouse's left button value*/
- BT_HID_MOUSE_BUTTON_RIGHT = 0x02, /**<The mouse's right button value*/
- BT_HID_MOUSE_BUTTON_MIDDLE = 0x04 /**<The mouse's middle button value*/
-} bt_hid_mouse_button_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID mouse event information.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @see bt_hid_device_send_mouse_event()
- */
-typedef struct {
- int buttons; /**< The button values, we can combine key's values when we pressed multiple mouse buttons*/
- int axis_x; /**< The location's x value, -128 ~127 */
- int axis_y; /**< The location's y value, -128 ~127 */
- int padding; /**< The padding value, -128 ~127 */
-} bt_hid_mouse_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing the HID keyboard event information.
- * @since_tizen @if WEARABLE 3.0 @endif
- * @details If you want to know more detail values, refer to http://www.usb.org/developers/hidpage/ and see "HID Usage Tables"
- *
- * @see bt_hid_device_send_key_event()
- */
-typedef struct {
- unsigned char modifier; /**< The modifier keys : such as shift, alt */
- unsigned char key[8]; /**< The key value - currently pressed keys : Max 8 at once */
-} bt_hid_key_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID header type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_HEADER_HANDSHAKE, /**< The Bluetooth HID header type: Handshake */
- BT_HID_HEADER_HID_CONTROL, /**< The Bluetooth HID header type: HID control */
- BT_HID_HEADER_GET_REPORT, /**< The Bluetooth HID header type: Get report */
- BT_HID_HEADER_SET_REPORT, /**< The Bluetooth HID header type: Set report */
- BT_HID_HEADER_GET_PROTOCOL, /**< The Bluetooth HID header type: Get protocol */
- BT_HID_HEADER_SET_PROTOCOL, /**< The Bluetooth HID header type: Set protocol */
- BT_HID_HEADER_DATA, /**< The Bluetooth HID header type: Data */
- BT_HID_HEADER_UNKNOWN /**< The Bluetooth HID header type: Unknown */
-} bt_hid_header_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID parameter type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_PARAM_DATA_RTYPE_INPUT, /**< Parameter type: Input */
- BT_HID_PARAM_DATA_RTYPE_OUTPUT /**< Parameter type: Output */
-} bt_hid_param_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Enumerations of the Bluetooth HID handshake type.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef enum {
- BT_HID_HANDSHAKE_SUCCESSFUL = 0x00, /**< Handshake error code none */
- BT_HID_HANDSHAKE_NOT_READY, /**< Handshake error code Not Ready */
- BT_HID_HANDSHAKE_ERR_INVALID_REPORT_ID, /**< Handshake error code send invalid report id */
- BT_HID_HANDSHAKE_ERR_UNSUPPORTED_REQUEST, /**< Handshake error code request unsupported request */
- BT_HID_HANDSHAKE_ERR_INVALID_PARAMETER, /**< Handshake error code received invalid parameter */
- BT_HID_HANDSHAKE_ERR_UNKNOWN = 0x0e, /**< unknown error */
- BT_HID_HANDSHAKE_ERR_FATAL /**< Fatal error */
-} bt_hid_handshake_type_e;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief The structure type containing data received from the HID Host.
- * @since_tizen @if WEARABLE 3.0 @endif
- */
-typedef struct {
- const char *address; /**< The remote device's address */
- bt_hid_header_type_e header_type; /**< The header type */
- bt_hid_param_type_e param_type; /**< The parameter type */
- int data_size; /**< The length of the received data */
- const char *data; /**< The received data */
-} bt_hid_device_received_data_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the Bluetooth HID Device connection state changes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of changing the connection state.
- * @param[in] connected The requested state. @a true means the connection is enabled, @a false means the connection is disabled.
- * @param[in] remote_address The remote device's address
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_activate()
- */
-typedef void (*bt_hid_device_connection_state_changed_cb) (int result,
- bool connected, const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_HID_DEVICE_MODULE
- * @brief Called when the HID Device receives data from the HID Host.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] data The data received from the HID Host.
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_hid_device_set_data_received_cb()
- */
-typedef void (*bt_hid_device_data_received_cb)(const bt_hid_device_received_data_s *data, void *user_data);
-/* HID device related type */
-
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief The structure type containing vCard information.
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @see bt_pbap_client_pull_vcard()
- */
-typedef struct {
- int index; /**< The vcard index, used as a parameter for bt_pbap_client_pull_vcard() */
- const char *contact_name; /**< The contact name of the vCard */
-} bt_pbap_vcard_info_s;
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP is Connected or Disconnected.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of connecting to or disconnecting from the remote device
- * @param[in] connected The PBAP connection status (@c true = connected, @c false = disconnected)
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_connection_state_changed_cb)(int result, bool connected,
- const char *remote_address, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP Phonebook size calculation completes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the phone book size
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] size Size of Phonebook
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_phone_book_size()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_phone_book_size_cb)(int result, const char *remote_address,
- int size, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP Phonebook Pull completes.
- * @details The received phone book file will be saved in the platform downloads folder. \n
- * The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the phone book
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] vcf_file The absolute path of the file in which the vCards are saved (@a vcf_file is valid only inside this function. To use outside the callback, make a copy. @a vcf_file should not be freed.)
- * @param[in] successful true if the operation was successful, false if not
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_phone_book()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_phone_book_received_cb)(int result, const char *remote_address,
- const char *vcf_file, void *user_data);
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_PBAP_MODULE
- * @brief Called when PBAP List vCards completes.
- * @details The following error codes can be delivered: \n
- * #BT_ERROR_NONE \n
- * #BT_ERROR_OPERATION_FAILED \n
- * @since_tizen @if WEARABLE 3.0 @endif
- *
- * @param[in] result The result of getting the vcard list
- * @param[in] remote_address The remote device address (@a remote_address is valid only inside this function. To use outside the callback, make a copy. @a remote_address should not be freed.)
- * @param[in] vcard_info List of vcard information (@a vcard_info is valid only inside this function. To use outside the callback, make a copy. @a vcard_info should not be freed.)
- * @param[in] count Number of contacts in the list
- * @param[in] successful true if the operation was successful, false if not
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_pbap_client_get_list()
- * @see bt_pbap_client_connect()
- * @see bt_pbap_client_disconnect()
- */
-typedef void (*bt_pbap_list_vcards_cb)(int result, const char *remote_address,
- const bt_pbap_vcard_info_s *vcard_info, int count, void *user_data);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_H__ */
diff --git a/include/wearable/bluetooth_type_extension.h b/include/wearable/bluetooth_type_extension.h
deleted file mode 100644
index 3bb2434..0000000
--- a/include/wearable/bluetooth_type_extension.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#ifndef __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__
-#define __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__
-
- #ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-/**
- * @file bluetooth_type_extension.h
- */
-
-/**
- * @ingroup CAPI_NETWORK_BLUETOOTH_AUDIO_AG_MODULE
- * @brief Called when the SCO(Synchronous Connection Oriented link) state is changed.
- * @since_tizen @if WEARABLE 2.3.1 @else 2.3 @endif
- *
- * @details This callback is called when the SCO state is changed.
- * When you call bt_ag_open_sco() or bt_ag_close_sco(), this callback is also called with error result even though these functions failed.
- * @param[in] result The result of changing the connection state
- * @param[in] opened The state to be changed: (@c true = opened, @c false = not opened)
- * @param[in] user_data The user data passed from the callback registration function
- * @see bt_ag_set_sco_state_changed_cb()
- * @see bt_ag_unset_sco_state_changed_cb()
- * @see bt_ag_open_sco()
- * @see bt_ag_close_sco()
- */
-typedef void (*bt_ag_sco_state_changed_cb) (int result, bool opened, void *user_data);
-
-/**
- * @}
- */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __TIZEN_NETWORK_BLUETOOTH_TYPE_EXTENSION_H__ */
diff --git a/packaging/capi-network-bluetooth.spec b/packaging/capi-network-bluetooth.spec
index 038b850..4d22009 100644
--- a/packaging/capi-network-bluetooth.spec
+++ b/packaging/capi-network-bluetooth.spec
@@ -14,9 +14,7 @@ BuildRequires: pkgconfig(dbus-glib-1)
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(vconf)
-%if "%{?profile}" == "tv"
BuildRequires: pkgconfig(db-util)
-%endif
BuildRequires: pkgconfig(bluetooth-api)
BuildRequires: pkgconfig(capi-appfw-application)
BuildRequires: pkgconfig(capi-base-common)
@@ -50,24 +48,6 @@ cp %{SOURCE1001} %{SOURCE1002} .
%build
-%if "%{?profile}" == "wearable"
-export CFLAGS="$CFLAGS -DTIZEN_PROFILE_WEARABLE"
-export CXXFLAGS="$CXXFLAGS -DTIZEN_PROFILE_WEARABLE"
-export FFLAGS="$FFLAGS -DTIZEN_PROFILE_WEARABLE"
-%endif
-
-%if "%{?profile}" == "mobile"
-export CFLAGS="$CFLAGS -DTIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT"
-export CXXFLAGS="$CXXFLAGS -DTIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT"
-export FFLAGS="$FFLAGS -DTIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT"
-%endif
-
-%if "%{?profile}" == "ivi"
-export CFLAGS="$CFLAGS -DTIZEN_PROFILE_IVI"
-export CXXFLAGS="$CXXFLAGS -DTIZEN_PROFILE_IVI"
-export FFLAGS="$FFLAGS -DTIZEN_PROFILE_IVI"
-%endif
-
export CFLAGS="$CFLAGS -DTIZEN_FEATURE_AUDIO_HF_DISABLE -DTIZEN_FEATURE_IPSP_SUPPORT"
export CXXFLAGS="$CXXFLAGS -DTIZEN_FEATURE_AUDIO_HF_DISABLE -DTIZEN_FEATURE_IPSP_SUPPORT"
export FFLAGS="$FFLAGS -DTIZEN_FEATURE_AUDIO_HF_DISABLE -DTIZEN_FEATURE_IPSP_SUPPORT"
@@ -86,24 +66,7 @@ export CXXFLAGS+=" -DARCH64"
export FFLAGS+=" -DARCH64"
%endif
-%cmake \
-%if "%{?profile}" == "wearable"
- -DTIZEN_PROFILE_WEARABLE=YES \
-%else
-%if "%{?profile}" == "tv"
- -DTIZEN_PROFILE_TV=YES \
-%else
-%if "%{?profile}" == "mobile"
- -DTIZEN_PROFILE_WEARABLE=NO \
- -DTIZEN_PROFILE_MOBILE=YES \
-%else
-%if "%{?profile}" == "ivi"
- -DTIZEN_PROFILE_WEARABLE=NO \
- -DTIZEN_PROFILE_IVI=YES \
-%endif
-%endif
-%endif
-%endif
+%cmake
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
%cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
@@ -130,9 +93,7 @@ install -D -m 0644 LICENSE %{buildroot}%{_datadir}/license/capi-network-bluetoot
%files test
%manifest %{name}.manifest
-%if "%{?profile}" != "tv"
%{_bindir}/bt_unit_test
-%endif
#%{_bindir}/bt_onoff
#/etc/smack/accesses.d/capi-network-bluetooth-test.efl
diff --git a/src/bluetooth-adapter.c b/src/bluetooth-adapter.c
index 4039c7d..2ed50a4 100644
--- a/src/bluetooth-adapter.c
+++ b/src/bluetooth-adapter.c
@@ -861,7 +861,6 @@ int bt_adapter_set_device_discovery_state_changed_cb(bt_adapter_device_discovery
return BT_ERROR_NONE;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
int bt_adapter_le_set_device_discovery_state_changed_cb(bt_adapter_le_device_discovery_state_changed_cb callback,
void *user_data)
{
@@ -876,7 +875,6 @@ int bt_adapter_le_set_device_discovery_state_changed_cb(bt_adapter_le_device_dis
callback, user_data);
return BT_ERROR_NONE;
}
-#endif
int bt_adapter_unset_state_changed_cb(void)
{
@@ -941,7 +939,6 @@ int bt_adapter_unset_device_discovery_state_changed_cb(void)
return BT_ERROR_NONE;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
int bt_adapter_le_unset_device_discovery_state_changed_cb(void)
{
BT_INFO("DEPRECATION WARNING: bt_adapter_le_unset_device_discovery_state_changed_cb() is deprecated and will be removed from next release.");
@@ -952,7 +949,6 @@ int bt_adapter_le_unset_device_discovery_state_changed_cb(void)
_bt_le_adapter_deinit();
return BT_ERROR_NONE;
}
-#endif
int bt_adapter_start_device_discovery(void)
{
@@ -1003,7 +999,6 @@ int bt_adapter_is_discovering(bool *is_discovering)
}
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
int bt_adapter_le_start_device_discovery(void)
{
int error_code = BT_ERROR_NONE;
@@ -1054,7 +1049,6 @@ int bt_adapter_le_is_discovering(bool *is_discovering)
return ret; /* LCOV_EXCL_LINE */
}
}
-#endif
int bt_adapter_get_local_oob_data(unsigned char **hash,
unsigned char **randomizer,
@@ -2312,7 +2306,6 @@ int bt_adapter_le_clear_advertising_data(bt_advertiser_h advertiser,
return ret;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
int bt_adapter_le_start_advertising(bt_advertiser_h advertiser,
bt_adapter_le_advertising_params_s *adv_params,
bt_adapter_le_advertising_state_changed_cb cb,
@@ -2380,7 +2373,6 @@ int bt_adapter_le_start_advertising(bt_advertiser_h advertiser,
return ret;
}
-#endif
int bt_adapter_le_stop_advertising(bt_advertiser_h advertiser)
{
diff --git a/src/bluetooth-audio.c b/src/bluetooth-audio.c
index 5929f96..222afd7 100644
--- a/src/bluetooth-audio.c
+++ b/src/bluetooth-audio.c
@@ -31,9 +31,7 @@ typedef struct _call_list_s {
} call_list_s;
static bool is_audio_a2dp_initialized = false;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
static bool is_audio_hf_initialized = false;
-#endif
static bool is_audio_ag_initialized = false;
#define BT_CHECK_AUDIO_SUPPORT() \
@@ -134,14 +132,14 @@ int bt_audio_initialize(void)
else
is_audio_a2dp_initialized = true;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- error = bluetooth_hf_init(_bt_hf_event_proxy, NULL);
- error = _bt_get_error_code(error);
- if (BT_ERROR_NONE != error)
- BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(error), error);
- else
- is_audio_hf_initialized = true;
-#endif
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
+ error = bluetooth_hf_init(_bt_hf_event_proxy, NULL);
+ error = _bt_get_error_code(error);
+ if (BT_ERROR_NONE != error)
+ BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(error), error);
+ else
+ is_audio_hf_initialized = true;
+ }
#ifndef TIZEN_FEATURE_HFP_DISABLE /* B2_3G */
error = bluetooth_telephony_init((void *)_bt_telephony_event_proxy, NULL);
@@ -154,9 +152,7 @@ int bt_audio_initialize(void)
/* There is no success case for 3 profiles */
if (!is_audio_a2dp_initialized &&
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- !is_audio_hf_initialized &&
-#endif
+ (!TIZEN_PROFILE_WEARABLE_IVI || !is_audio_hf_initialized) &&
!is_audio_ag_initialized) {
return BT_ERROR_OPERATION_FAILED;
}
@@ -178,14 +174,14 @@ int bt_audio_deinitialize(void)
is_audio_a2dp_initialized = false;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- error = bluetooth_hf_deinit();
- error = _bt_get_error_code(error);
- if (BT_ERROR_NONE != error)
- BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(error), error);
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
+ error = bluetooth_hf_deinit();
+ error = _bt_get_error_code(error);
+ if (BT_ERROR_NONE != error)
+ BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(error), error);
- is_audio_hf_initialized = false;
-#endif
+ is_audio_hf_initialized = false;
+ }
#ifndef TIZEN_FEATURE_HFP_DISABLE /* B2_3G */
error = bluetooth_telephony_deinit();
@@ -242,14 +238,14 @@ int bt_audio_connect(const char *remote_address, bt_audio_profile_type_e type)
case BT_AUDIO_PROFILE_TYPE_A2DP:
error = bluetooth_av_connect(&addr_hex);
break;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- case BT_AUDIO_PROFILE_TYPE_AG:
- error = bluetooth_hf_connect(&addr_hex);
- break;
-#endif
case BT_AUDIO_PROFILE_TYPE_A2DP_SINK:
error = bluetooth_av_source_connect(&addr_hex);
break;
+ case BT_AUDIO_PROFILE_TYPE_AG:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
+ error = bluetooth_hf_connect(&addr_hex);
+ break;
+ } /* else: goto default */
case BT_AUDIO_PROFILE_TYPE_ALL:
default:
error = bluetooth_audio_connect(&addr_hex);
@@ -300,14 +296,14 @@ int bt_audio_disconnect(const char *remote_address, bt_audio_profile_type_e type
case BT_AUDIO_PROFILE_TYPE_A2DP:
error = bluetooth_av_disconnect(&addr_hex);
break;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- case BT_AUDIO_PROFILE_TYPE_AG:
- error = bluetooth_hf_disconnect(&addr_hex);
- break;
-#endif
case BT_AUDIO_PROFILE_TYPE_A2DP_SINK:
error = bluetooth_av_source_disconnect(&addr_hex);
break;
+ case BT_AUDIO_PROFILE_TYPE_AG:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
+ error = bluetooth_hf_disconnect(&addr_hex);
+ break;
+ } /* else goto default */
case BT_AUDIO_PROFILE_TYPE_ALL:
default:
error = bluetooth_audio_disconnect(&addr_hex);
@@ -829,7 +825,6 @@ int bt_a2dp_set_content_protection(bool status)
}
/* LCOV_EXCL_STOP */
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
int bt_hf_initialize(void)
{
BT_CHECK_INIT_STATUS();
@@ -1257,4 +1252,3 @@ int bt_hf_unset_remote_device_state_changed_cb(void)
_bt_unset_cb(BT_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED);
return BT_ERROR_NONE;
}
-#endif
diff --git a/src/bluetooth-common.c b/src/bluetooth-common.c
index 790d9c7..c3859ff 100644
--- a/src/bluetooth-common.c
+++ b/src/bluetooth-common.c
@@ -22,6 +22,7 @@
#include <stdio.h>
#include <stdbool.h>
#include <bluetooth-api.h>
+#include <system_info.h>
#include "bluetooth.h"
#include "bluetooth_internal.h"
@@ -51,10 +52,8 @@ static void __bt_free_bt_adapter_device_discovery_info_s(bt_adapter_device_disco
static int __bt_get_bt_adapter_le_device_scan_info_s(bt_adapter_le_device_scan_result_info_s **scan_info, bluetooth_le_device_info_t *source_info);
static void __bt_free_bt_adapter_le_device_scan_info_s(bt_adapter_le_device_scan_result_info_s *scan_info);
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
static int __bt_get_bt_adapter_le_device_discovery_info_s(bt_adapter_le_device_discovery_info_s **le_discovery_info, bluetooth_le_device_info_t *source_info);
static void __bt_free_bt_adapter_le_device_discovery_info_s(bt_adapter_le_device_discovery_info_s *discovery_info);
-#endif
static int __bt_gatt_client_update_characteristics(bt_gatt_handle_info_t char_handles, bt_gatt_service_s *service);
static int __bt_gatt_client_update_descriptors(bt_gatt_handle_info_t desc_handles, bt_gatt_characteristic_s *characteristic);
@@ -934,7 +933,6 @@ void _bt_audio_event_proxy(int event, bt_audio_event_param_t *param, void *user_
__bt_event_proxy(event, &new_param, user_data);
}
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
void _bt_hf_event_proxy(int event, bt_hf_event_param_t *param, void *user_data)
{
bluetooth_event_param_t new_param;
@@ -944,7 +942,6 @@ void _bt_hf_event_proxy(int event, bt_hf_event_param_t *param, void *user_data)
new_param.user_data = NULL;
__bt_event_proxy(event, &new_param, user_data);
}
-#endif
void _bt_telephony_event_proxy(int event, telephony_event_param_t *param, void *user_data)
{
@@ -1024,9 +1021,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bluetooth_device_address_t *bd_addr = NULL;
telephony_event_callid_t *call_data = NULL;
char *device_addr = NULL;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
char *phone_number = NULL;
-#endif
int error_code = BT_ERROR_NONE;
int event_index = -1;
bluetooth_network_device_info_t *dev_info = NULL;
@@ -1870,8 +1865,8 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
device_addr = NULL;
break;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- case BLUETOOTH_EVENT_GATT_SVC_CHAR_DISCOVERED: {
+ case BLUETOOTH_EVENT_GATT_SVC_CHAR_DISCOVERED:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
BT_INFO("BLUETOOTH_EVENT_GATT_SVC_CHAR_DISCOVERED");
if (_bt_gatt_is_legacy_client_mode()) {
bt_gatt_discovered_char_t *svc_char = param->param_data;
@@ -1887,14 +1882,14 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
_bt_unset_cb(BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DISCOVERED_LEGACY);
}
break;
+ } else {
+ break; /* goto default */
}
-#endif
case BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED:
BT_INFO("BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED");
char_val = (bt_gatt_char_value_t *)(param->param_data);
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- if (_bt_gatt_is_legacy_client_mode()) {
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT && _bt_gatt_is_legacy_client_mode()) {
bt_gatt_char_value_t *char_val = param->param_data;
if (char_val == NULL)
@@ -1904,7 +1899,6 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
}
-#endif
if (char_val == NULL)
return;
@@ -1920,8 +1914,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
BT_INFO("BLUETOOTH_EVENT_GATT_READ_CHAR");
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- if (_bt_gatt_is_legacy_client_mode()) {
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT && _bt_gatt_is_legacy_client_mode()) {
bt_gatt_char_value_t *char_val = param->param_data;
((bt_gatt_characteristic_read_cb)bt_event_slot_container[event_index].callback)
@@ -1930,7 +1923,6 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
_bt_unset_cb(BT_EVENT_GATT_CLIENT_READ_CHARACTERISTIC_LEGACY);
break;
}
-#endif
_bt_unset_cb(BT_EVENT_GATT_CLIENT_READ_CHARACTERISTIC);
ret = _bt_get_error_code(param->result);
if (ret == BT_ERROR_NONE) {
@@ -1950,15 +1942,13 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
BT_INFO("BLUETOOTH_EVENT_GATT_WRITE_CHAR");
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- if (_bt_gatt_is_legacy_client_mode()) {
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT && _bt_gatt_is_legacy_client_mode()) {
((bt_gatt_characteristic_write_cb)bt_event_slot_container[event_index].callback)
(bt_event_slot_container[event_index].user_data);
_bt_unset_cb(BT_EVENT_GATT_CLIENT_WRITE_CHARACTERISTIC_LEGACY);
break;
}
-#endif
_bt_unset_cb(BT_EVENT_GATT_CLIENT_WRITE_CHARACTERISTIC);
/* Send actual ATT error code to Application
@@ -2086,8 +2076,8 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
break;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- case BLUETOOTH_EVENT_GATT_SVC_CHAR_DESC_DISCOVERED: {
+ case BLUETOOTH_EVENT_GATT_SVC_CHAR_DESC_DISCOVERED:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
BT_INFO("BLUETOOTH_EVENT_GATT_SVC_CHAR_DESC_DISCOVERED");
if (_bt_gatt_is_legacy_client_mode()) {
bt_gatt_char_property_t *char_desc = param->param_data;
@@ -2101,8 +2091,9 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
_bt_unset_cb(BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DESCRIPTOR_DISCOVERED_LEGACY);
}
break;
+ } else {
+ break; /* goto default */
}
-#endif
case BLUETOOTH_EVENT_GATT_SERVER_CHARACTERISTIC_VALUE_CHANGED: {
const GSList *server_list = NULL;
BT_INFO("BLUETOOTH_EVENT_GATT_SERVER_CHARACTERISTIC_VALUE_CHANGED");
@@ -2304,8 +2295,8 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
if (device_addr != NULL)
free(device_addr); /* LCOV_EXCL_STOP */
break;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- case BLUETOOTH_PBAP_CONNECTED: {
+ case BLUETOOTH_PBAP_CONNECTED:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_connection_state_changed_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_connected_t *connected = (bt_pbap_connected_t *)param->param_data;
@@ -2319,8 +2310,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(device_addr);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_DISCONNECTED: {
+ case BLUETOOTH_PBAP_DISCONNECTED:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_connection_state_changed_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_connected_t *connected = (bt_pbap_connected_t *)param->param_data;
@@ -2334,8 +2328,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(device_addr);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_PHONEBOOK_SIZE: {
+ case BLUETOOTH_PBAP_PHONEBOOK_SIZE:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_phone_book_size_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_phonebook_size_t *pb_size = (bt_pbap_phonebook_size_t *)param->param_data;
@@ -2350,8 +2347,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(device_addr);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_PHONEBOOK_PULL: {
+ case BLUETOOTH_PBAP_PHONEBOOK_PULL:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_phone_book_received_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_phonebook_pull_t *pb_pull = (bt_pbap_phonebook_pull_t *)(param->param_data);
@@ -2367,8 +2367,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(device_addr);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_VCARD_LIST: {
+ case BLUETOOTH_PBAP_VCARD_LIST:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
int i;
bt_pbap_list_vcards_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
@@ -2397,10 +2400,12 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
g_free((char *)vcard_info[i].contact_name);
free(vcard_info);
}
-
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_VCARD_PULL: {
+ case BLUETOOTH_PBAP_VCARD_PULL:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_phone_book_received_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_vcard_pull_t *vc_pull = (bt_pbap_vcard_pull_t *)(param->param_data);
@@ -2416,8 +2421,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(device_addr);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_PBAP_PHONEBOOK_SEARCH: {
+ case BLUETOOTH_PBAP_PHONEBOOK_SEARCH:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bt_pbap_list_vcards_cb cb = bt_event_slot_container[event_index].callback;
void *user_data = bt_event_slot_container[event_index].user_data;
bt_pbap_phonebook_search_list_t *vc_list = (bt_pbap_phonebook_search_list_t *)(param->param_data);
@@ -2441,8 +2449,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
free(vcard_info);
break;
+ } else {
+ break; /* goto default; */
}
case BLUETOOTH_EVENT_HF_CONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CONNECTED");
device_addr = (char *)(param->param_data);
((bt_audio_connection_state_changed_cb)bt_event_slot_container[event_index].callback)
@@ -2450,6 +2461,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_DISCONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_DISCONNECTED");
device_addr = (char *)(param->param_data);
((bt_audio_connection_state_changed_cb)bt_event_slot_container[event_index].callback)
@@ -2457,6 +2469,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_AUDIO_CONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_AUDIO_CONNECTED");
device_addr = (char *)(param->param_data);
((bt_hf_sco_state_changed_cb)bt_event_slot_container[event_index].callback)
@@ -2464,6 +2477,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_AUDIO_DISCONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_AUDIO_DISCONNECTED");
device_addr = (char *)(param->param_data);
((bt_hf_sco_state_changed_cb)bt_event_slot_container[event_index].callback)
@@ -2471,6 +2485,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_RING_INDICATOR:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_RING_INDICATOR");
phone_number = (char *)(param->param_data);
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
@@ -2478,66 +2493,77 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_TERMINATED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_TERMINATED");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_CALL_TERMINATED, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_FAILED_TO_DIAL:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_FAILED_TO_DIAL");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_FAILED_TO_DIALING, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_IDLE:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_IDLE");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_IDLE, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALLSETUP_INCOMING:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALLSETUP_INCOMING");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_INCOMING, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALLSETUP_DIALING:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALLSETUP_DIALING");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_DIALING, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALLSETUP_ALERTING:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALLSETUP_ALERTING");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_ALERTING, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_STARTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_STARTED");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_CALL_STARTED, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_ENDED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_ENDED");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_CALL_ENDED, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_ENABLED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_ENABLED");
((bt_hf_remote_device_state_changed_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_DEVICE_STATE_VOICE_RECOGNITON, TRUE,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_DISABLED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_DISABLED");
((bt_hf_remote_device_state_changed_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_DEVICE_STATE_VOICE_RECOGNITON, FALSE,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_WAITING:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_WAITING");
phone_number = (char *)(param->param_data);
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
@@ -2545,24 +2571,28 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_ON_HOLD:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_ON_HOLD");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_HELD, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_UNHOLD:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_UNHOLD");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_UNHELD, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_CALL_SWAPPED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_CALL_SWAPPED");
((bt_hf_remote_call_event_cb)bt_event_slot_container[event_index].callback)
(BT_HF_REMOTE_CALL_EVENT_SWAPPED, NULL,
bt_event_slot_container[event_index].user_data);
break;
case BLUETOOTH_EVENT_HF_VENDOR_DEP_CMD:
+ if (!TIZEN_PROFILE_WEARABLE_IVI) break;
BT_INFO("BLUETOOTH_EVENT_HF_VENDOR_DEP_CMD");
bluetooth_vendor_dep_at_cmd_t *cmd = (bluetooth_vendor_dep_at_cmd_t *)(param->param_data);
bt_hf_vendor_dep_at_cmd_s command = {0, };
@@ -2571,14 +2601,18 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
((bt_hf_vendor_dep_cmd_event_cb)bt_event_slot_container[event_index].callback)
(command, bt_event_slot_container[event_index].user_data);
break;
- case BLUETOOTH_EVENT_HF_VOLUME_SPEAKER: {
+ case BLUETOOTH_EVENT_HF_VOLUME_SPEAKER:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
BT_INFO("BLUETOOTH_EVENT_HF_VOLUME_SPEAKER");
int *spk_gain = (int *)(param->param_data);
((bt_hf_speaker_gain_changed_cb)bt_event_slot_container[event_index].callback)
(*spk_gain, bt_event_slot_container[event_index].user_data);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_EVENT_HF_CALL_STATUS: {
+ case BLUETOOTH_EVENT_HF_CALL_STATUS:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
BT_INFO("BLUETOOTH_EVENT_HF_CALL_STATUS");
bt_hf_call_list_s *handle = (bt_hf_call_list_s *)(param->param_data);
GList *l = NULL;
@@ -2600,8 +2634,11 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
((bt_hf_call_status_updated_event_cb)bt_event_slot_container[event_index].callback)
(call_list, bt_event_slot_container[event_index].user_data);
break;
+ } else {
+ break; /* goto default; */
}
- case BLUETOOTH_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED: {
+ case BLUETOOTH_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED:
+ if (TIZEN_PROFILE_WEARABLE_IVI) {
bluetooth_hf_ciev_device_event_t *device_event = (bluetooth_hf_ciev_device_event_t *)(param->param_data);
BT_INFO("BLUETOOTH_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED (status %d)(value %d)",
@@ -2611,8 +2648,9 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
((bt_hf_remote_device_state_e) device_event->event, device_event->value,
bt_event_slot_container[event_index].user_data);
break;
+ } else {
+ break; /* goto default; */
}
-#endif
case BLUETOOTH_EVENT_IPSP_INIT_STATE_CHANGED: {
BT_DBG("BLUETOOTH_EVENT_IPSP_INIT_STATE_CHANGED"); /* LCOV_EXCL_LINE */
((bt_ipsp_init_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
@@ -2642,9 +2680,7 @@ static void __bt_event_proxy(int event, bluetooth_event_param_t *param, void *us
static void __bt_le_event_proxy(int event, bluetooth_event_param_t *param, void *user_data)
{
bt_adapter_le_device_scan_result_info_s *scan_info = NULL;
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
bt_adapter_le_device_discovery_info_s *discovery_info = NULL;
-#endif
int event_index = -1;
event_index = __bt_get_cb_index(event);
@@ -2665,19 +2701,24 @@ static void __bt_le_event_proxy(int event, bluetooth_event_param_t *param, void
(_bt_get_error_code(param->result), BT_ADAPTER_LE_DISABLED, bt_event_slot_container[event_index].user_data);
break;
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
case BLUETOOTH_EVENT_LE_DISCOVERY_STARTED:
- BT_INFO("BLUETOOTH_EVENT_LE_DISCOVERY_STARTED"); /* LCOV_EXCL_LINE */
- ((bt_adapter_le_device_discovery_state_changed_cb) bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
- (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_STARTED, NULL, bt_event_slot_container[event_index].user_data);
- break;
+ if (!TIZEN_PROFILE_WEARABLE_IVI) {
+ BT_INFO("BLUETOOTH_EVENT_LE_DISCOVERY_STARTED"); /* LCOV_EXCL_LINE */
+ ((bt_adapter_le_device_discovery_state_changed_cb) bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
+ (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_STARTED, NULL, bt_event_slot_container[event_index].user_data);
+ break;
+ } else {
+ break; /* goto default */
+ }
case BLUETOOTH_EVENT_LE_DISCOVERY_FINISHED:
- BT_INFO("BLUETOOTH_EVENT_LE_DISCOVERY_FINISHED"); /* LCOV_EXCL_LINE */
- ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
- (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FINISHED, NULL, bt_event_slot_container[event_index].user_data);
- break;
-#endif
-
+ if (!TIZEN_PROFILE_WEARABLE_IVI) {
+ BT_INFO("BLUETOOTH_EVENT_LE_DISCOVERY_FINISHED"); /* LCOV_EXCL_LINE */
+ ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
+ (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FINISHED, NULL, bt_event_slot_container[event_index].user_data);
+ break;
+ } else {
+ break; /* goto default */
+ }
case BLUETOOTH_EVENT_REMOTE_LE_DEVICE_FOUND:
BT_INFO("BLUETOOTH_EVENT_REMOTE_LE_DEVICE_FOUND");
event_index = BT_EVENT_LE_SCAN_RESULT_UPDATED;
@@ -2691,19 +2732,19 @@ static void __bt_le_event_proxy(int event, bluetooth_event_param_t *param, void
(_bt_get_error_code(param->result), NULL, bt_event_slot_container[event_index].user_data);
}
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
- event_index = BT_EVENT_LE_DEVICE_DISCOVERY_STATE_CHANGED;
- if (bt_event_slot_container[event_index].callback != NULL) {
- if (__bt_get_bt_adapter_le_device_discovery_info_s(&discovery_info, (bluetooth_le_device_info_t *)(param->param_data)) == BT_ERROR_NONE) { /* LCOV_EXCL_LINE */
- ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
- (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, discovery_info, bt_event_slot_container[event_index].user_data);
- __bt_free_bt_adapter_le_device_discovery_info_s(discovery_info); /* LCOV_EXCL_LINE */
- } else {
- ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
- (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, NULL, bt_event_slot_container[event_index].user_data);
+ if (!TIZEN_PROFILE_WEARABLE_IVI) {
+ event_index = BT_EVENT_LE_DEVICE_DISCOVERY_STATE_CHANGED;
+ if (bt_event_slot_container[event_index].callback != NULL) {
+ if (__bt_get_bt_adapter_le_device_discovery_info_s(&discovery_info, (bluetooth_le_device_info_t *)(param->param_data)) == BT_ERROR_NONE) { /* LCOV_EXCL_LINE */
+ ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
+ (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, discovery_info, bt_event_slot_container[event_index].user_data);
+ __bt_free_bt_adapter_le_device_discovery_info_s(discovery_info); /* LCOV_EXCL_LINE */
+ } else {
+ ((bt_adapter_le_device_discovery_state_changed_cb)bt_event_slot_container[event_index].callback) /* LCOV_EXCL_LINE */
+ (_bt_get_error_code(param->result), BT_ADAPTER_LE_DEVICE_DISCOVERY_FOUND, NULL, bt_event_slot_container[event_index].user_data);
+ }
}
}
-#endif
break;
default:
@@ -2848,7 +2889,6 @@ static void __bt_free_bt_adapter_le_device_scan_info_s(bt_adapter_le_device_scan
}
/* LCOV_EXCL_START */
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
static int __bt_get_bt_adapter_le_device_discovery_info_s(
bt_adapter_le_device_discovery_info_s **le_discovery_info,
bluetooth_le_device_info_t *source_info)
@@ -2900,9 +2940,6 @@ static void __bt_free_bt_adapter_le_device_discovery_info_s(bt_adapter_le_device
discovery_info = NULL;
}
-#endif
-
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
static int __bt_get_gatt_client_cb_index(int event)
{
switch (event) {
@@ -2925,7 +2962,6 @@ static int __bt_get_gatt_client_cb_index(int event)
return -1;
}
-#endif
/* LCOV_EXCL_STOP */
static int __bt_get_cb_index(int event)
{
@@ -3078,23 +3114,26 @@ static int __bt_get_cb_index(int event)
return BT_EVENT_HID_DEVICE_CONNECTION_STATUS;
case BLUETOOTH_HID_DEVICE_DATA_RECEIVED:
return BT_EVENT_HID_DEVICE_DATA_RECEIVED;
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
case BLUETOOTH_EVENT_GATT_SVC_CHAR_DISCOVERED:
+ if (!TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT)
+ return -1; /* default */
return BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DISCOVERED_LEGACY;
case BLUETOOTH_EVENT_GATT_SVC_CHAR_DESC_DISCOVERED:
+ if (!TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT)
+ return -1; /* default */
return BT_EVENT_GATT_CLIENT_CHARACTERISTIC_DESCRIPTOR_DISCOVERED_LEGACY;
case BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED:
- case BLUETOOTH_EVENT_GATT_READ_CHAR:
- case BLUETOOTH_EVENT_GATT_WRITE_CHAR:
- return __bt_get_gatt_client_cb_index(event);
-#else
- case BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT)
+ return __bt_get_gatt_client_cb_index(event);
return BT_EVENT_GATT_CLIENT_VALUE_CHANGED;
case BLUETOOTH_EVENT_GATT_READ_CHAR:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT)
+ return __bt_get_gatt_client_cb_index(event);
return BT_EVENT_GATT_CLIENT_READ_CHARACTERISTIC;
case BLUETOOTH_EVENT_GATT_WRITE_CHAR:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT)
+ return __bt_get_gatt_client_cb_index(event);
return BT_EVENT_GATT_CLIENT_WRITE_CHARACTERISTIC;
-#endif
case BLUETOOTH_EVENT_GATT_READ_DESC:
return BT_EVENT_GATT_CLIENT_READ_DESCRIPTOR;
case BLUETOOTH_EVENT_GATT_WRITE_DESC:
@@ -3126,27 +3165,46 @@ static int __bt_get_cb_index(int event)
return BT_EVENT_SUPPORTED_TRUSTED_PROFILE_EVENT;
case BLUETOOTH_EVENT_LE_DATA_LENGTH_CHANGED:
return BT_EVENT_LE_DATA_LENGTH_CHANGED; /* LCOV_EXCL_LINE */
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
case BLUETOOTH_PBAP_CONNECTED:
case BLUETOOTH_PBAP_DISCONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_CONNECTION_STATUS;
case BLUETOOTH_PBAP_PHONEBOOK_SIZE:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_PHONEBOOK_SIZE;
case BLUETOOTH_PBAP_PHONEBOOK_PULL:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_PHONEBOOK_PULL;
case BLUETOOTH_PBAP_VCARD_LIST:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_VCARD_LIST;
case BLUETOOTH_PBAP_VCARD_PULL:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_VCARD_PULL;
case BLUETOOTH_PBAP_PHONEBOOK_SEARCH:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_PBAP_PHONEBOOK_SEARCH;
case BLUETOOTH_EVENT_HF_CONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_AUDIO_CONNECTION_STATUS;
case BLUETOOTH_EVENT_HF_DISCONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_AUDIO_CONNECTION_STATUS;
case BLUETOOTH_EVENT_HF_AUDIO_CONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_SCO_CONNECTION_STATUS;
case BLUETOOTH_EVENT_HF_AUDIO_DISCONNECTED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_SCO_CONNECTION_STATUS;
case BLUETOOTH_EVENT_HF_RING_INDICATOR:
case BLUETOOTH_EVENT_HF_CALL_TERMINATED:
@@ -3161,18 +3219,27 @@ static int __bt_get_cb_index(int event)
case BLUETOOTH_EVENT_HF_CALLSETUP_INCOMING:
case BLUETOOTH_EVENT_HF_CALLSETUP_DIALING:
case BLUETOOTH_EVENT_HF_CALLSETUP_ALERTING:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_REMOTE_CALL_EVENT;
case BLUETOOTH_EVENT_HF_VENDOR_DEP_CMD:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_VENDOR_DEP_CMD_EVENT;
case BLUETOOTH_EVENT_HF_VOLUME_SPEAKER:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_SPEAKER_GAIN_CHANGE;
case BLUETOOTH_EVENT_HF_CALL_STATUS:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_CALL_STATUS_UPDATED_EVENT;
case BLUETOOTH_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED:
case BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_ENABLED:
case BLUETOOTH_EVENT_HF_VOICE_RECOGNITION_DISABLED:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ return -1;
return BT_EVENT_HF_CIEV_DEVICE_STATUS_CHANGED;
-#endif
case BLUETOOTH_EVENT_IPSP_INIT_STATE_CHANGED:
return BT_EVENT_IPSP_INIT_STATE_CHANGED;
case BLUETOOTH_EVENT_PXP_PROPERTY_CHANGED:
@@ -3428,3 +3495,37 @@ next:
return BT_ERROR_NONE;
}
/* LCOV_EXCL_STOP */
+
+tizen_profile_t profile = _PROFILE_UNKNOWN;
+tizen_profile_t _get_tizen_profile()
+{
+ char *profileName;
+
+ if (__builtin_expect(profile != _PROFILE_UNKNOWN, 1))
+ return profile;
+
+ system_info_get_platform_string("http://tizen.org/feature/profile", &profileName);
+ switch (*profileName) {
+ case 'm':
+ case 'M':
+ profile = _PROFILE_MOBILE;
+ break;
+ case 'w':
+ case 'W':
+ profile = _PROFILE_WEARABLE;
+ break;
+ case 't':
+ case 'T':
+ profile = _PROFILE_TV;
+ break;
+ case 'i':
+ case 'I':
+ profile = _PROFILE_IVI;
+ break;
+ default: // common or unknown ==> ALL ARE COMMON.
+ profile = _PROFILE_COMMON;
+ }
+ free(profileName);
+
+ return profile;
+}
diff --git a/src/bluetooth-gatt.c b/src/bluetooth-gatt.c
index f790f01..2a50411 100644
--- a/src/bluetooth-gatt.c
+++ b/src/bluetooth-gatt.c
@@ -387,7 +387,6 @@ next:
return BT_ERROR_NONE;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
bool _bt_gatt_is_legacy_client_mode(void)
{
if (gatt_client_list) {
@@ -800,7 +799,6 @@ int bt_gatt_discover_characteristic_descriptor(bt_gatt_attribute_h characteristi
return ret; /* LCOV_EXCL_STOP */
}
-#endif
int bt_gatt_connect(const char *address, bool auto_connect)
{
diff --git a/test/bt_unit_test.c b/test/bt_unit_test.c
index e9c6ad3..a60d8ea 100644
--- a/test/bt_unit_test.c
+++ b/test/bt_unit_test.c
@@ -95,12 +95,10 @@ static int total_time = 0;
static struct timeval check_time = {0,};
static gboolean is_sub_index = FALSE;
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
int service_index;
int char_service_index;
static int selected_service_index = -1;
static int selected_char_index = 0;
-#endif
static bt_advertiser_h advertiser = NULL;
static bt_advertiser_h advertiser_list[3] = {NULL, };
@@ -125,11 +123,9 @@ bt_proximity_reporter_h reporter;
bt_proximity_monitor_h monitor;
bt_scan_filter_h pxp_scan_filter;
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
bt_gatt_attribute_h service_clone[MAX_SERVICES];
bt_gatt_attribute_h characteristics[MAX_SERVICES];
bt_gatt_attribute_h characteristics_services[MAX_SERVICES];
-#endif
static unsigned char *hash = NULL;
static unsigned char *randomizer = NULL;
@@ -177,12 +173,10 @@ tc_table_t tc_main[] = {
, BT_UNIT_TEST_TABLE_DPM},
{"PXP"
, BT_UNIT_TEST_TABLE_PXP},
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
{"HF Role"
, BT_UNIT_TEST_TABLE_HF},
{"PBAP Client"
, BT_UNIT_TEST_TABLE_PBAP_CLIENT},
-#endif
{"etc.(Automated test, AppControl)"
, BT_UNIT_TEST_TABLE_ETC},
{"Initialize All"
@@ -291,12 +285,10 @@ tc_table_t tc_adapter_le[] = {
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_SCAN},
{"bt_adapter_le_stop_scan"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_SCAN},
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
{"bt_adapter_le_start_device_discovery"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_DEVICE_DISCOVERY},
{"bt_adapter_le_stop_device_discovery"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_DEVICE_DISCOVERY},
-#endif
{"bt_adapter_le_add_advertising_data"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ADD_ADVERTISING_DATA},
{"bt_adapter_le_set_advertising_mode"
@@ -307,20 +299,16 @@ tc_table_t tc_adapter_le[] = {
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_ADVERTISING_CONNECTABLE},
{"bt_adapter_le_start_advertising_new"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_ADVERTISING_NEW},
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
{"bt_adapter_le_start_advertising"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_ADVERTISING},
-#endif
{"bt_adapter_le_stop_advertising"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_ADVERTISING},
{"bt_adapter_le_add_white_list"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ADD_WHITE_LIST},
{"bt_adapter_le_remove_white_list"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REMOVE_WHITE_LIST},
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
{"bt_adapter_le_clear_white_list"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_CLEAR_WHITE_LIST},
-#endif
{"bt_adapter_le_enable_privacy"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ENABLE_PRIVACY},
{"Register scan filter (Device Address)"
@@ -333,12 +321,10 @@ tc_table_t tc_adapter_le[] = {
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REGISTER_SCAN_FILTER_IBEACON_DATA},
{"Unregister all scan filters"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_UNREGISTER_ALL_SCAN_FILTERS},
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
{"bt_adapter_le_set_device_discovery_state_changed_cb"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_DEVICE_DISCOVERY_STATE_CHANGED_CB},
{"bt_adapter_le_unset_device_discovery_state_changed_cb"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_UNSET_DEVICE_DISCOVERY_STATE_CHANGED_CB},
-#endif
{"bt_adater_le_read_maximum_data_length"
, BT_UNIT_TEST_FUNCTION_ADAPTER_LE_READ_MAXIMUM_DATA_LENGTH},
{"bt_adater_le_wite_host_suggested_def_data_length"
@@ -627,7 +613,6 @@ tc_table_t tc_gatt[] = {
, BT_UNIT_TEST_FUNCTION_ANCS_NEGATIVE_ACTION},
{"ANCS (Get Noti. Attr.)"
, BT_UNIT_TEST_FUNCTION_ANCS_GET_NOTI_ATTR},
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
{"bt_gatt_foreach_primary_services"
, BT_UNIT_TEST_FUNCTION_GATT_FOREACH_PRIMARY_SERVICES},
{"bt_gatt_discover_characteristics"
@@ -654,7 +639,6 @@ tc_table_t tc_gatt[] = {
, BT_UNIT_TEST_FUNCTION_GATT_WATCH_CHARACTERISTIC_CHANGES},
{"bt_gatt_unwatch_characteristic_changes"
, BT_UNIT_TEST_FUNCTION_GATT_UNWATCH_CHARACTERISTIC_CHANGES},
-#endif
{"Select this menu to set parameters and then select the function again."
, BT_UNIT_TEST_FUNCTION_ACTIVATE_FLAG_TO_SET_PARAMETERS},
{NULL , 0x0000},
@@ -1009,7 +993,6 @@ tc_table_t tc_DPM[] = {
{NULL , 0x0000},
};
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
tc_table_t tc_hf[] = {
/* Handsfree role functions */
{"BACK"
@@ -1091,7 +1074,6 @@ tc_table_t tc_pbap_client[] = {
, BT_UNIT_TEST_FUNCTION_ACTIVATE_FLAG_TO_SET_PARAMETERS},
{NULL , 0x0000},
};
-#endif
tc_table_t tc_automated_test[] = {
/* Automated test Functions*/
@@ -1170,14 +1152,16 @@ void tc_usage_print(void)
case BT_UNIT_TEST_TABLE_PXP:
tc_table = tc_pxp;
break;
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_TABLE_HF:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ goto __default;
tc_table = tc_hf;
break;
case BT_UNIT_TEST_TABLE_PBAP_CLIENT:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ goto __default;
tc_table = tc_pbap_client;
break;
-#endif
case BT_UNIT_TEST_TABLE_ETC:
if (input_automated_test_delay == true) {
TC_PRT("Input the delay for automated"
@@ -1191,6 +1175,7 @@ void tc_usage_print(void)
TC_PRT("Key 0 : usage BACK");
return;
case BT_UNIT_TEST_TABLE_MAIN:
+__default__:
default:
tc_table = tc_main;
break;
@@ -1294,7 +1279,6 @@ static const char *__bt_get_error_message(bt_error_e err)
return err_str;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
static gboolean __select_index_cb(GIOChannel *chan,
GIOCondition cond,
gpointer data)
@@ -1377,7 +1361,6 @@ static void __bt_free_gatt_characteristics_services(void)
}
char_service_index = 0;
}
-#endif
void __bt_adapter_state_changed_cb(int result,
bt_adapter_state_e adapter_state, void *user_data)
@@ -1648,7 +1631,6 @@ void __bt_gatt_server_notification_state_change_cb(bool notify,
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
static void __bt_adapter_le_device_discovery_state_changed_cb(int result,
bt_adapter_le_device_discovery_state_e discovery_state,
bt_adapter_le_device_discovery_info_s *discovery_info,
@@ -1713,7 +1695,6 @@ static void __bt_adapter_le_device_discovery_state_changed_cb(int result,
#endif
}
}
-#endif
static void __bt_adapter_le_advertising_state_changed_cb(int result,
bt_advertiser_h advertiser, bt_adapter_le_advertising_state_e adv_state,
@@ -2595,7 +2576,6 @@ bool __bt_gatt_server_foreach_svc_cb(int total,
return true;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
bool __bt_gatt_primary_service_cb(bt_gatt_attribute_h service,
void *user_data)
{
@@ -2706,7 +2686,6 @@ void __bt_gatt_remote_characteristic_write_cb(bt_gatt_attribute_h characteristic
TC_PRT("updated characteristic is %s", (char *)characteristic);
TC_PRT("new char value is %s", char_value);
}
-#endif
void __bt_avrcp_target_connection_state_changed_cb(bool connected,
const char *remote_address, void *user_data)
@@ -2867,7 +2846,6 @@ void __bt_ipsp_connection_state_changed_cb(int result,
memcpy(ipsp_iface_name, iface_name, strlen(iface_name));
}
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
void __bt_hf_sco_state_changed_cb(int result,
bool opened, void *user_data)
{
@@ -2988,7 +2966,6 @@ void __bt_pbap_vcard_list_cb(int result, const char *remote_address,
TC_PRT("Listing Status: %s",
(result == BT_ERROR_NONE) ? "Successful" : "Unsuccessful");
}
-#endif
void __bt_repeat_test_adapter_state_changed_cb(int result,
bt_adapter_state_e adapter_state, void *user_data)
@@ -3058,17 +3035,17 @@ static void __bt_initialize_all(void)
__bt_adapter_device_discovery_state_changed_cb, NULL);
if (ret != BT_ERROR_NONE)
TC_PRT("returns %s\n", __bt_get_error_message(ret));
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
- ret = bt_adapter_le_set_device_discovery_state_changed_cb(
- __bt_adapter_le_device_discovery_state_changed_cb, NULL);
- if (ret != BT_ERROR_NONE)
- TC_PRT("returns %s\n", __bt_get_error_message(ret));
-#else
- ret = bt_pbap_client_set_connection_state_changed_cb(__bt_pbap_connection_state_changed_cb,
- NULL);
- if (ret != BT_ERROR_NONE)
- TC_PRT("returns %s\n", __bt_get_error_message(ret));
-#endif
+ if (!TIZEN_PROFILE_WEARABLE_IVI) {
+ ret = bt_adapter_le_set_device_discovery_state_changed_cb(
+ __bt_adapter_le_device_discovery_state_changed_cb, NULL);
+ if (ret != BT_ERROR_NONE)
+ TC_PRT("returns %s\n", __bt_get_error_message(ret));
+ } else {
+ ret = bt_pbap_client_set_connection_state_changed_cb(__bt_pbap_connection_state_changed_cb,
+ NULL);
+ if (ret != BT_ERROR_NONE)
+ TC_PRT("returns %s\n", __bt_get_error_message(ret));
+ }
ret = bt_socket_set_connection_state_changed_cb(
__bt_socket_connection_state_changed_cb, NULL);
if (ret != BT_ERROR_NONE)
@@ -4458,8 +4435,10 @@ int test_set_params(int test_id, char *param)
break;
}
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
- case BT_UNIT_TEST_TABLE_HF: {
+ case BT_UNIT_TEST_TABLE_HF:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ goto __default__;
+ {
switch (test_id) {
default:
TC_PRT("There is no param to set\n");
@@ -4469,7 +4448,10 @@ int test_set_params(int test_id, char *param)
break;
}
- case BT_UNIT_TEST_TABLE_PBAP_CLIENT: {
+ case BT_UNIT_TEST_TABLE_PBAP_CLIENT:
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ goto __default__;
+ {
switch (test_id) {
default:
TC_PRT("There is no param to set\n");
@@ -4479,7 +4461,6 @@ int test_set_params(int test_id, char *param)
break;
}
-#endif
case BT_UNIT_TEST_TABLE_ETC: {
switch (test_id) {
case BT_UNIT_TEST_FUNCTION_CHECK_FEATURE: {
@@ -4520,6 +4501,7 @@ int test_set_params(int test_id, char *param)
break;
}
+__default__:
default:
TC_PRT("There is no param to set\n");
need_to_set_params = false;
@@ -5003,17 +4985,19 @@ int test_input_callback(void *data)
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_DEVICE_DISCOVERY:
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
ret = bt_adapter_le_start_device_discovery();
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_DEVICE_DISCOVERY:
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
ret = bt_adapter_le_stop_device_discovery();
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
-#endif
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ADD_ADVERTISING_DATA: {
int adv_data_type = 3; /* default all */
@@ -5260,8 +5244,9 @@ int test_input_callback(void *data)
TC_PRT("failed with [0x%04x]", ret);
break;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_ADVERTISING: {
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
bt_adapter_le_advertising_state_changed_cb cb;
bt_adapter_le_advertising_params_s adv_params = { 0, };
@@ -5288,7 +5273,6 @@ int test_input_callback(void *data)
TC_PRT("failed with [0x%04x]", ret);
break;
}
-#endif
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_ADVERTISING: {
int slot_id = 0;
@@ -5333,13 +5317,13 @@ int test_input_callback(void *data)
break;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_CLEAR_WHITE_LIST: {
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
ret = bt_adapter_le_clear_white_list();
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
}
-#endif
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ENABLE_PRIVACY: {
static bool enable_privacy = false;
@@ -5455,18 +5439,20 @@ int test_input_callback(void *data)
break;
}
-#if !defined(TIZEN_PROFILE_WEARABLE) && !defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_DEVICE_DISCOVERY_STATE_CHANGED_CB:
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
ret = bt_adapter_le_set_device_discovery_state_changed_cb(
__bt_adapter_le_device_discovery_state_changed_cb, NULL);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_UNSET_DEVICE_DISCOVERY_STATE_CHANGED_CB:
+ if (TIZEN_PROFILE_WEARABLE_IVI)
+ break;
ret = bt_adapter_le_unset_device_discovery_state_changed_cb();
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
-#endif
case BT_UNIT_TEST_FUNCTION_ADAPTER_LE_READ_MAXIMUM_DATA_LENGTH: {
TC_PRT("Read Maximum LE Data length");
@@ -7099,8 +7085,8 @@ int test_input_callback(void *data)
break;
}
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
- case BT_UNIT_TEST_FUNCTION_GATT_FOREACH_PRIMARY_SERVICES: {
+ case BT_UNIT_TEST_FUNCTION_GATT_FOREACH_PRIMARY_SERVICES:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
__bt_free_gatt_services();
ret = bt_gatt_foreach_primary_services(remote_addr,
@@ -7111,9 +7097,11 @@ int test_input_callback(void *data)
__select_index(&selected_service_index,
"Select primary service :");
break;
+ } else {
+ break; /* go to default */
}
-
- case BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTICS: {
+ case BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTICS:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
__bt_free_gatt_characteristics();
if (selected_service_index < 0) {
@@ -7129,18 +7117,23 @@ int test_input_callback(void *data)
if (ret == BT_ERROR_NONE)
__select_index(&selected_char_index, "Select index :");
break;
- }
-
- case BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS: {
+ } else {
+ break; /* goto default */
+ }
+ case BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
ret = bt_gatt_discover_characteristic_descriptor(
characteristics[selected_char_index],
__bt_gatt_characteristic_descriptor_discovered_cb,
NULL);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_GET_SERVICE_UUID: {
+ case BT_UNIT_TEST_FUNCTION_GATT_GET_SERVICE_UUID:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
char *uuid = NULL;
char *name = NULL;
@@ -7161,9 +7154,12 @@ int test_input_callback(void *data)
g_free(uuid);
}
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_FOREACH_INCLUDED_SERVICES: {
+ case BT_UNIT_TEST_FUNCTION_GATT_FOREACH_INCLUDED_SERVICES:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
__bt_free_gatt_characteristics_services();
if (selected_service_index < 0) {
@@ -7177,23 +7173,32 @@ int test_input_callback(void *data)
NULL);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_CHANGED_CB: {
+ case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_CHANGED_CB:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
ret = bt_gatt_set_characteristic_changed_cb(
__bt_gatt_characteristic_changed_cb,
NULL);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_UNSET_CHARACTERISTIC_CHANGED_CB: {
+ case BT_UNIT_TEST_FUNCTION_GATT_UNSET_CHARACTERISTIC_CHANGED_CB:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
ret = bt_gatt_unset_characteristic_changed_cb();
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_GET_CHARACTERISTIC_DECLARATION: {
+ case BT_UNIT_TEST_FUNCTION_GATT_GET_CHARACTERISTIC_DECLARATION:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
int i;
char *uuid = NULL;
char *name = NULL;
@@ -7217,9 +7222,12 @@ int test_input_callback(void *data)
g_free(value);
}
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_VALUE: {
+ case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_VALUE:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
unsigned char value[] = { 1 };
if (selected_char_index == 0) {
TC_PRT("Need to select charateristic value \n");
@@ -7231,9 +7239,12 @@ int test_input_callback(void *data)
value, 1);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_VALUE_REQUEST: {
+ case BT_UNIT_TEST_FUNCTION_GATT_SET_CHARACTERISTIC_VALUE_REQUEST:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
unsigned char value[] = { 1 };
if (selected_char_index == 0) {
TC_PRT("Need to select charateristic value \n");
@@ -7245,9 +7256,12 @@ int test_input_callback(void *data)
value, 1, __bt_gatt_char_write_cb);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_READ_CHARACTERISTIC_VALUE: {
+ case BT_UNIT_TEST_FUNCTION_GATT_READ_CHARACTERISTIC_VALUE:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
if (selected_char_index == 0) {
TC_PRT("Need to select charateristic value \n");
break;
@@ -7258,9 +7272,12 @@ int test_input_callback(void *data)
__bt_gatt_char_read_cb);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_WATCH_CHARACTERISTIC_CHANGES: {
+ case BT_UNIT_TEST_FUNCTION_GATT_WATCH_CHARACTERISTIC_CHANGES:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
if (selected_service_index < 0) {
TC_PRT("Need to select primary service \n");
break;
@@ -7270,14 +7287,18 @@ int test_input_callback(void *data)
service_clone[selected_service_index]);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
- case BT_UNIT_TEST_FUNCTION_GATT_UNWATCH_CHARACTERISTIC_CHANGES: {
+ case BT_UNIT_TEST_FUNCTION_GATT_UNWATCH_CHARACTERISTIC_CHANGES:
+ if (TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT) {
ret = bt_gatt_unwatch_characteristic_changes(
service_clone[selected_service_index]);
TC_PRT("returns %s\n", __bt_get_error_message(ret));
break;
+ } else {
+ break; /* goto default */
}
-#endif
case BT_UNIT_TEST_FUNCTION_ACTIVATE_FLAG_TO_SET_PARAMETERS:
need_to_set_params = true;
TC_PRT("Select the function again");
@@ -9254,8 +9275,9 @@ int test_input_callback(void *data)
break;
}
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
case BT_UNIT_TEST_TABLE_HF: {
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ break;
switch (test_id) {
case BT_UNIT_TEST_FUNCTION_HF_INITIALIZE:
ret = bt_hf_initialize();
@@ -9426,6 +9448,8 @@ int test_input_callback(void *data)
break;
}
case BT_UNIT_TEST_TABLE_PBAP_CLIENT: {
+ if (!TIZEN_PROFILE_WEARABLE_IVI)
+ break;
switch (test_id) {
/*PBAP Test Cases */
@@ -9534,7 +9558,6 @@ int test_input_callback(void *data)
break;
}
-#endif
case BT_UNIT_TEST_TABLE_ETC: {
static unsigned int delay = 0;
bt_onoff_cnt = 0;
diff --git a/test/bt_unit_test.h b/test/bt_unit_test.h
index 37318a5..fe10cf0 100644
--- a/test/bt_unit_test.h
+++ b/test/bt_unit_test.h
@@ -47,10 +47,8 @@ typedef enum {
BT_UNIT_TEST_TABLE_HDP,
BT_UNIT_TEST_TABLE_DPM,
BT_UNIT_TEST_TABLE_PXP,
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
BT_UNIT_TEST_TABLE_HF,
BT_UNIT_TEST_TABLE_PBAP_CLIENT,
-#endif
BT_UNIT_TEST_TABLE_ETC,
BT_UNIT_TEST_FUNCTION_INITIALIZE_ALL,
BT_UNIT_TEST_TABLE_FINISH = 0xFF,
@@ -104,34 +102,26 @@ typedef enum {
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_SCAN_MODE,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_SCAN,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_SCAN,
-#ifndef TIZEN_PROFILE_WEARABLE
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_DEVICE_DISCOVERY,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_DEVICE_DISCOVERY,
-#endif
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ADD_ADVERTISING_DATA,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_ADVERTISING_MODE,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_ADVERTISING_FILTER_POLICY,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_ADVERTISING_CONNECTABLE,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_ADVERTISING_NEW,
-#ifndef TIZEN_PROFILE_WEARABLE
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_START_ADVERTISING,
-#endif
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_STOP_ADVERTISING,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ADD_WHITE_LIST,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REMOVE_WHITE_LIST,
-#ifndef TIZEN_PROFILE_WEARABLE
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_CLEAR_WHITE_LIST,
-#endif
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_ENABLE_PRIVACY,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REGISTER_SCAN_FILTER_DEVICE_ADDRESS,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REGISTER_SCAN_FILTER_SERVICE_UUID,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REGISTER_SCAN_FILTER_SERVICE_SOLICITATION_UUID,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_REGISTER_SCAN_FILTER_IBEACON_DATA,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_UNREGISTER_ALL_SCAN_FILTERS,
-#ifndef TIZEN_PROFILE_WEARABLE
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_SET_DEVICE_DISCOVERY_STATE_CHANGED_CB,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_UNSET_DEVICE_DISCOVERY_STATE_CHANGED_CB,
-#endif
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_READ_MAXIMUM_DATA_LENGTH,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_WRITE_HOST_SUGGESTED_DEFAULT_DATA_LENGTH,
BT_UNIT_TEST_FUNCTION_ADAPTER_LE_READ_HOST_SUGGESTED_DEFAULT_DATA_LENGTH,
@@ -258,7 +248,6 @@ typedef enum {
BT_UNIT_TEST_FUNCTION_ANCS_POSITIVE_ACTION,
BT_UNIT_TEST_FUNCTION_ANCS_NEGATIVE_ACTION,
BT_UNIT_TEST_FUNCTION_ANCS_GET_NOTI_ATTR,
-#ifdef TIZEN_FEATURE_ENABLE_LEGACY_GATT_CLIENT
BT_UNIT_TEST_FUNCTION_GATT_FOREACH_PRIMARY_SERVICES,
BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTICS,
BT_UNIT_TEST_FUNCTION_GATT_DISCOVER_CHARACTERISTIC_DESCRIPTORS,
@@ -272,7 +261,6 @@ typedef enum {
BT_UNIT_TEST_FUNCTION_GATT_READ_CHARACTERISTIC_VALUE,
BT_UNIT_TEST_FUNCTION_GATT_WATCH_CHARACTERISTIC_CHANGES,
BT_UNIT_TEST_FUNCTION_GATT_UNWATCH_CHARACTERISTIC_CHANGES,
-#endif
BT_UNIT_TEST_FUNCTION_HPS_CLIENT_CREATE = 1,
BT_UNIT_TEST_FUNCTION_HPS_CLIENT_DESTROY,
BT_UNIT_TEST_FUNCTION_HPS_CLIENT_PRINT_ALL,
@@ -394,7 +382,6 @@ typedef enum {
BT_UNIT_TEST_FUNCTION_DPM_GET_LIMITED_DISCOVERABLE_STATE,
BT_UNIT_TEST_FUNCTION_DPM_SET_DATA_TRANSFER_STATE,
BT_UNIT_TEST_FUNCTION_DPM_GET_DATA_TRANSFER_STATE,
-#if defined(TIZEN_PROFILE_WEARABLE) || defined(TIZEN_PROFILE_IVI)
BT_UNIT_TEST_FUNCTION_HF_INITIALIZE = 1,
BT_UNIT_TEST_FUNCTION_HF_DEINITIALIZE,
BT_UNIT_TEST_FUNCTION_HF_NOTIFY_CALL_ANSWER,
@@ -430,7 +417,6 @@ typedef enum {
BT_UNIT_TEST_FUNCTION_PBAP_CLIENT_VCARDPULL,
BT_UNIT_TEST_FUNCTION_PBAP_CLIENT_PHONEBOOKSEARCH,
BT_UNIT_TEST_FUNCTION_PBAP_CLIENT_VCARDLIST_MAXLIST_ZERO,
-#endif
BT_UNIT_TEST_FUNCTION_ON_OFF_REPEAT_TEST = 1,
BT_UNIT_TEST_FUNCTION_ON_OFF_REPEAT_TEST_1_SEC_DELAY,
BT_UNIT_TEST_FUNCTION_ON_OFF_REPEAT_TEST_N_SEC_DELAY,