Apply tizen 3.0 based product patchsets
[platform/core/connectivity/bluetooth-frwk.git] / bt-service / include / bt-service-common.h
index feb43ef..b0c2c8a 100644 (file)
@@ -26,6 +26,7 @@
 
 #include "bluetooth-api.h"
 #include "bt-internal-types.h"
+#include "bt-service-agent.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -204,6 +205,9 @@ extern "C" {
 #define BT_NAME_OWNER_CHANGED "NameOwnerChanged"
 #define BT_PROPERTIES_CHANGED "PropertiesChanged"
 
+#define BT_HID_SERVICE_NAME "org.bluez.hid_agent"
+#define BT_HID_AGENT_OBJECT_PATH "/org/bluez/hid_agent"
+#define BT_HID_SERVICE_INTERFACE "org.tizen.HidApp"
 
 
 #define BT_SESSION_BASEPATH_SERVER "/org/bluez/obex/server"
@@ -257,6 +261,10 @@ extern "C" {
 #define BT_LE_ADV_NONCONN_IND  0x03
 #define BT_LE_ADV_SCAN_RSP             0x04
 
+#define HEADED_PLUGIN_FILEPATH "/usr/lib/bt-plugin-headed.so"
+#define HEADED_PLUGIN_FILEPATH64 "/usr/lib64/bt-plugin-headed.so"
+#define FILEPATH_ARCH_64 "/usr/lib64"
+
 /* Profile states matched to btd_service_state_t of bluez service.h */
 typedef enum {
        BT_PROFILE_STATE_UNAVAILABLE,
@@ -330,6 +338,28 @@ typedef struct {
        char *address;
 } bt_function_data_t;
 
+struct bluetooth_headed_plugin_t {
+       int (*bt_launch_dpmpopup) (char *mode);
+       int (*bt_launch_system_popup)(bt_agent_event_type_t event_type,
+                                                       const char *device_name,
+                                                       const unsigned char *auth_info,
+                                                       char *passkey,
+                                                       const char *filename,
+                                                       const char *agent_path);
+       void (*bt_destroy_popup_all)(void);
+       gboolean (*bt_launch_unable_to_pairing_syspopup)(int result);
+       gboolean (*bt_is_tethering_enabled)(void);
+       int (*bt_get_mime_type)(char *file_name, char **mime_type);
+};
+
+typedef struct {
+       gboolean plugin_headed_enabled;
+       void *handle_headed;
+       struct bluetooth_headed_plugin_t *headed_plugin;
+} bt_plugin_info_t;
+
+extern bt_plugin_info_t *headed_plugin_info;
+
 GDBusConnection *_bt_gdbus_get_system_gconn(void);
 
 GDBusConnection *_bt_gdbus_get_session_gconn(void);
@@ -362,6 +392,8 @@ char *_bt_get_adapter_path(void);
 
 void _bt_deinit_proxys(void);
 
+GDBusProxy *_bt_gdbus_get_hid_agent_proxy(void);
+
 void _bt_convert_device_path_to_address(const char *device_path,
                                                char *device_address);