Added multi-callback for system-settings keys
[platform/core/api/system-settings.git] / include / system_settings_private.h
index 5c9e8c2..eb4ca68 100644 (file)
@@ -25,6 +25,7 @@ extern "C"
 
 #include <dlog.h>
 #include <system_settings.h>
+#include <system_settings_multi_callback.h>
 
 #ifdef LOG_TAG
 #undef LOG_TAG
@@ -63,7 +64,7 @@ extern "C"
 
 
 #define SETTING_PROFILE_PATH "tizen.org/feature/profile"
-#define SETTING_INCOMING_CALL_PATH "tizen.org/feature/systemsetting.incoming_call "
+#define SETTING_INCOMING_CALL_PATH "tizen.org/feature/systemsetting.incoming_call"
 #define SETTING_HOME_SCREEN_PATH "tizen.org/feature/systemsetting.home_screen"
 #define SETTING_LOCK_SCREEN_PATH "tizen.org/feature/systemsetting.lock_screen"
 #define SETTING_NOTIFICATION_EMAIL_PATH "tizen.org/feature/systemsetting.notification_email"
@@ -109,7 +110,7 @@ system_setting_supported_profile_info_e;
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-typedef int (*system_setting_get_value_cb)(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+typedef int (*system_setting_get_value_cb)(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -120,11 +121,10 @@ typedef int (*system_setting_get_value_cb)(system_settings_key_e key, system_set
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-typedef int (*system_setting_set_value_cb)(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
-
-typedef int (*system_setting_add_value_cb)(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
-typedef int (*system_setting_del_value_cb)(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
-typedef int (*system_setting_list_value_cb)(system_settings_key_e key, system_setting_data_type_e data_type, system_settings_iter_cb callback, void *user_data);
+typedef int (*system_setting_set_value_cb)(system_settings_key_e key, void *value);
+typedef int (*system_setting_add_value_cb)(system_settings_key_e key, void *value);
+typedef int (*system_setting_del_value_cb)(system_settings_key_e key, void *value);
+typedef int (*system_setting_list_value_cb)(system_settings_key_e key, system_settings_iter_cb callback, void *user_data);
 
 typedef int (*system_setting_feature_check_cb)(void *value);
 
@@ -175,6 +175,8 @@ typedef struct {
 
        system_setting_feature_check_cb feature_check_cb;
 
+       callback_list changed_cb_list;
+
        void *user_data;                                                                                                /* user_data */
 
 } system_setting_s;
@@ -305,6 +307,42 @@ int system_setting_vconf_unset_changed_cb(const char *vconf_key, int slot);
 
 /**
  * @internal
+ * @brief Unset the system settings notification callback
+ * @since_tizen 4.0
+ * @param[in] key system_settings_key_e value to get vconf string
+ * @param[out] key_string string pointer to be assigned vconf string
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED Not support system-settings API
+ */
+int system_settings_vconf_get_key_string(system_settings_key_e key, char **key_string);
+
+
+/**
+ * @internal
+ * @brief Unset the system settings notification callback
+ * @since_tizen 4.0
+ * @param[in] vconf_key vconf key name used in the code
+ * @param[in] key system_settings_key_e value.
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ */
+int system_setting_vconf_set_changed_multi_cb(const char *vconf_key, system_settings_key_e key);
+
+/**
+ * @internal
+ * @brief Unset the system settings notification callback
+ * @since_tizen 4.0
+ * @param[in] vconf_key vconf key name used in the code
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ */
+int system_setting_vconf_unset_changed_multi_cb(const char *vconf_key);
+
+/**
+ * @internal
  * @brief get current font size
  * @since_tizen 2.3
  * @param[in] key key name should be SYSTEM_SETTINGS_KEY_FONT_SIZE
@@ -314,7 +352,7 @@ int system_setting_vconf_unset_changed_cb(const char *vconf_key, int slot);
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_font_size(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_font_size(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -328,7 +366,7 @@ int system_setting_get_font_size(system_settings_key_e key, system_setting_data_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_font_size(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_font_size(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -351,7 +389,7 @@ int system_setting_unset_changed_callback_font_size(system_settings_key_e key);
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_incoming_call_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_incoming_call_ringtone(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -365,25 +403,25 @@ int system_setting_get_incoming_call_ringtone(system_settings_key_e key, system_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_incoming_call_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_incoming_call_ringtone(system_settings_key_e key, void *value);
 
 
 /**
  * @todo add comment here
  */
-int system_setting_add_incoming_call_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_add_incoming_call_ringtone(system_settings_key_e key, void *value);
 
 
 /**
  * @todo add comment here
  */
-int system_setting_del_incoming_call_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_del_incoming_call_ringtone(system_settings_key_e key, void *value);
 
 
 /**
  * @todo add comment here
  */
-int system_setting_list_incoming_call_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, system_settings_iter_cb callback, void *data);
+int system_setting_list_incoming_call_ringtone(system_settings_key_e key, system_settings_iter_cb callback, void *data);
 
 /**
  * @internal
@@ -405,7 +443,7 @@ int system_setting_unset_changed_callback_incoming_call_ringtone(system_settings
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_email_alert_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_email_alert_ringtone(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -419,7 +457,7 @@ int system_setting_get_email_alert_ringtone(system_settings_key_e key, system_se
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_email_alert_ringtone(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_email_alert_ringtone(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -442,7 +480,7 @@ int system_setting_unset_changed_callback_email_alert_ringtone(system_settings_k
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_wallpaper_home_screen(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_wallpaper_home_screen(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -456,7 +494,7 @@ int system_setting_get_wallpaper_home_screen(system_settings_key_e key, system_s
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_wallpaper_home_screen(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_wallpaper_home_screen(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -479,7 +517,7 @@ int system_setting_unset_changed_callback_wallpaper_home_screen(system_settings_
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_wallpaper_lock_screen(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_wallpaper_lock_screen(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -493,7 +531,7 @@ int system_setting_get_wallpaper_lock_screen(system_settings_key_e key, system_s
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_wallpaper_lock_screen(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_wallpaper_lock_screen(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -515,7 +553,7 @@ int system_setting_unset_changed_callback_wallpaper_lock_screen(system_settings_
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_default_font_type(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_default_font_type(system_settings_key_e key, void **value);
 
 
 /**
@@ -523,7 +561,7 @@ int system_setting_get_default_font_type(system_settings_key_e key, system_setti
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_font_type(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_font_type(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -537,7 +575,7 @@ int system_setting_get_font_type(system_settings_key_e key, system_setting_data_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_font_type(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_font_type(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -559,7 +597,7 @@ int system_setting_unset_changed_callback_font_type(system_settings_key_e key);
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_motion_activation(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_motion_activation(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -573,7 +611,7 @@ int system_setting_get_motion_activation(system_settings_key_e key, system_setti
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_motion_activation(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_motion_activation(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -595,7 +633,7 @@ int system_setting_unset_changed_callback_motion_activation(system_settings_key_
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_usb_debugging_option(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_usb_debugging_option(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -609,7 +647,7 @@ int system_setting_get_usb_debugging_option(system_settings_key_e key, system_se
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_usb_debugging_option(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_usb_debugging_option(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -631,7 +669,7 @@ int system_setting_unset_changed_callback_usb_debugging_option(system_settings_k
  * @since_tizen 2.3
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_3g_data_network(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_3g_data_network(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -645,7 +683,7 @@ int system_setting_get_3g_data_network(system_settings_key_e key, system_setting
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_3g_data_network(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_3g_data_network(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -675,7 +713,7 @@ int system_setting_unset_changed_callback_3g_data_network(system_settings_key_e
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_tap_and_hold_delay(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_tap_and_hold_delay(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -685,7 +723,7 @@ int system_setting_get_tap_and_hold_delay(system_settings_key_e key, system_sett
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_tap_and_hold_delay(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_tap_and_hold_delay(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -715,7 +753,7 @@ int system_setting_unset_changed_callback_tap_and_hold_delay(system_settings_key
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_lockscreen_app(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_lockscreen_app(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -725,7 +763,7 @@ int system_setting_get_lockscreen_app(system_settings_key_e key, system_setting_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_lockscreen_app(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_lockscreen_app(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -755,7 +793,7 @@ int system_setting_unset_changed_callback_lockscreen_app(system_settings_key_e k
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_locale_country(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_locale_country(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -764,7 +802,7 @@ int system_setting_get_locale_country(system_settings_key_e key, system_setting_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_locale_country(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_locale_country(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -792,7 +830,7 @@ int system_setting_unset_changed_callback_locale_country(system_settings_key_e k
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_locale_language(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_locale_language(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -801,7 +839,7 @@ int system_setting_get_locale_language(system_settings_key_e key, system_setting
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_locale_language(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_locale_language(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -829,7 +867,7 @@ int system_setting_unset_changed_callback_locale_language(system_settings_key_e
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_locale_timeformat_24hour(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_locale_timeformat_24hour(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -838,7 +876,7 @@ int system_setting_get_locale_timeformat_24hour(system_settings_key_e key, syste
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_locale_timeformat_24hour(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_locale_timeformat_24hour(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -866,7 +904,7 @@ int system_setting_unset_changed_callback_locale_timeformat_24hour(system_settin
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_locale_timezone(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_locale_timezone(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -876,7 +914,7 @@ int system_setting_get_locale_timezone(system_settings_key_e key, system_setting
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_locale_timezone(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_locale_timezone(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -927,7 +965,7 @@ int system_setting_unset_changed_callback_locale_timezone_changed(system_setting
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_time_changed(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_time_changed(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -956,7 +994,7 @@ int system_setting_unset_changed_callback_time_changed(system_settings_key_e key
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_sound_lock(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_sound_lock(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -984,7 +1022,7 @@ int system_setting_unset_changed_callback_sound_lock(system_settings_key_e key);
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_sound_silent_mode(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_sound_silent_mode(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -994,7 +1032,7 @@ int system_setting_get_sound_silent_mode(system_settings_key_e key, system_setti
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_sound_silent_mode(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_sound_silent_mode(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -1023,7 +1061,7 @@ int system_setting_unset_changed_callback_sound_silent_mode(system_settings_key_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_sound_touch(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_sound_touch(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1051,7 +1089,7 @@ int system_setting_unset_changed_callback_sound_touch(system_settings_key_e key)
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_auto_rotation_mode(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_auto_rotation_mode(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1060,7 +1098,7 @@ int system_setting_get_auto_rotation_mode(system_settings_key_e key, system_sett
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_auto_rotation_mode(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_auto_rotation_mode(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1088,7 +1126,7 @@ int system_setting_unset_changed_callback_auto_rotation_mode(system_settings_key
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_screen_backlight_time(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_screen_backlight_time(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1097,7 +1135,7 @@ int system_setting_get_screen_backlight_time(system_settings_key_e key, system_s
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_screen_backlight_time(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_screen_backlight_time(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1125,7 +1163,7 @@ int system_setting_unset_changed_callback_screen_backlight_time(system_settings_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_sound_notification(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_sound_notification(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1134,7 +1172,7 @@ int system_setting_get_sound_notification(system_settings_key_e key, system_sett
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_sound_notification(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_sound_notification(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1162,7 +1200,7 @@ int system_setting_unset_changed_callback_sound_notification(system_settings_key
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_notification_repetition_period(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_notification_repetition_period(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1171,7 +1209,7 @@ int system_setting_get_notification_repetition_period(system_settings_key_e key,
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_notification_repetition_period(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_notification_repetition_period(system_settings_key_e key, void *value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1199,7 +1237,7 @@ int system_setting_unset_changed_callback_notification_repetition_period(system_
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_device_name(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_device_name(system_settings_key_e key, void **value);
 /**
  * @internal
  * @since_tizen 2.3
@@ -1228,7 +1266,7 @@ int system_setting_unset_changed_callback_device_name(system_settings_key_e key)
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_network_flight_mode(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_network_flight_mode(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -1260,7 +1298,7 @@ int system_setting_unset_changed_callback_network_flight_mode(system_settings_ke
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_network_wifi_notification(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_network_wifi_notification(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -1292,7 +1330,7 @@ int system_setting_unset_changed_callback_network_wifi_notification(system_setti
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_lock_state(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_lock_state(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -1302,7 +1340,7 @@ int system_setting_get_lock_state(system_settings_key_e key, system_setting_data
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_lock_state(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_lock_state(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -1333,7 +1371,7 @@ int system_setting_unset_changed_callback_lock_state(system_settings_key_e key);
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_ads_id(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_ads_id(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -1344,7 +1382,7 @@ int system_setting_get_ads_id(system_settings_key_e key, system_setting_data_typ
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_set_ads_id(system_settings_key_e key, system_setting_data_type_e data_type, void *value);
+int system_setting_set_ads_id(system_settings_key_e key, void *value);
 
 /**
  * @internal
@@ -1375,7 +1413,7 @@ int system_setting_unset_changed_callback_ads_id(system_settings_key_e key);
  * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
  * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
  */
-int system_setting_get_uds_state(system_settings_key_e key, system_setting_data_type_e data_type, void **value);
+int system_setting_get_uds_state(system_settings_key_e key, void **value);
 
 /**
  * @internal
@@ -1409,6 +1447,73 @@ int system_setting_unset_changed_callback_uds_state(system_settings_key_e key);
 int system_setting_set_changed_callback_uds_pkg_list(system_settings_key_e key, system_settings_changed_cb callback, void *user_data);
 
 
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_get_accessibility_tts(system_settings_key_e key, void **value);
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_set_changed_callback_accessibility_tts(system_settings_key_e key, system_settings_changed_cb callback, void *user_data);
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_unset_changed_callback_accessibility_tts(system_settings_key_e key);
+
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_get_vibration(system_settings_key_e key, void **value);
+
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_set_vibration(system_settings_key_e key, void *value);
+
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_set_changed_callback_vibration(system_settings_key_e key, system_settings_changed_cb callback, void *user_data);
+
+/**
+ * @internal
+ * @since_tizen 4.0
+ * @return     0 on success, otherwise a negative error value
+ * @retval     #SYSTEM_SETTINGS_ERROR_NONE Successful
+ * @retval     #SYSTEM_SETTINGS_ERROR_IO_ERROR Internal I/O error
+ * @retval     #SYSTEM_SETTINGS_ERROR_PERMISSION_DENIED Permission violation error
+ */
+int system_setting_unset_changed_callback_vibration(system_settings_key_e key);
 
 /**
  * @internal
@@ -1420,7 +1525,6 @@ int system_setting_set_changed_callback_uds_pkg_list(system_settings_key_e key,
  */
 int system_setting_unset_changed_callback_uds_pkg_list(system_settings_key_e key);
 
-
 /**
  * @internal
  * @since_tizen 4.0