Added set/unset background volume ratio fucntion.
[platform/core/uifw/tts.git] / server / ttsd_config.c
index 58dc2fa..341ae96 100644 (file)
@@ -34,9 +34,9 @@ void __ttsd_config_engine_changed_cb(const char* engine_id, const char* setting,
 
        if (NULL != g_callback) {
                SECURE_SLOG(LOG_DEBUG, tts_tag(), "Call the engine reload callback : engine id(%s)", engine_id);
-               g_callback(TTS_CONFIG_TYPE_ENGINE, engine_id, 0);
+               g_callback(TTS_CONFIG_TYPE_ENGINE, engine_id, 0, 0);
                SECURE_SLOG(LOG_DEBUG, tts_tag(), "Call the voice changed callback : lang(%s), type(%d)", language, voice_type);
-               g_callback(TTS_CONFIG_TYPE_VOICE, language, voice_type);
+               g_callback(TTS_CONFIG_TYPE_VOICE, language, voice_type, 0);
        } else {
                SLOG(LOG_ERROR, tts_tag(), "Config changed callback is NULL");
        }
@@ -51,7 +51,7 @@ void __ttsd_config_voice_changed_cb(const char* before_language, int before_type
        }
 
        if (NULL != g_callback) {
-               g_callback(TTS_CONFIG_TYPE_VOICE, language, type);
+               g_callback(TTS_CONFIG_TYPE_VOICE, language, type, 0);
        } else {
                SLOG(LOG_ERROR, tts_tag(), "Config changed callback is NULL");
        }
@@ -60,7 +60,7 @@ void __ttsd_config_voice_changed_cb(const char* before_language, int before_type
 void __ttsd_config_speech_rate_changed_cb(int value, void* user_data)
 {
        if (NULL != g_callback) {
-               g_callback(TTS_CONFIG_TYPE_SPEED, NULL, value);
+               g_callback(TTS_CONFIG_TYPE_SPEED, NULL, value, 0);
        } else {
                SLOG(LOG_ERROR, tts_tag(), "Config changed callback is NULL");
        }
@@ -69,7 +69,7 @@ void __ttsd_config_speech_rate_changed_cb(int value, void* user_data)
 void __ttsd_config_pitch_changed_cb(int value, void* user_data)
 {
        if (NULL != g_callback) {
-               g_callback(TTS_CONFIG_TYPE_PITCH, NULL, value);
+               g_callback(TTS_CONFIG_TYPE_PITCH, NULL, value, 0);
        } else {
                SLOG(LOG_ERROR, tts_tag(), "Config changed callback is NULL");
        }
@@ -82,6 +82,14 @@ void __ttsd_config_screen_reader_changed_cb(bool value)
        }
 }
 
+void __ttsd_config_bg_volume_ratio_changed_cb(double value, void* user_data)
+{
+       if (NULL != g_callback)
+               g_callback(TTS_CONFIG_TYPE_BACKGROUND_VOLUME_RATIO, NULL, 0, value);
+       else
+               SLOG(LOG_ERROR, tts_tag(), "Config changed callback is NULL");
+}
+
 int ttsd_config_initialize(ttsd_config_changed_cb config_cb)
 {
        if (NULL == config_cb) {
@@ -100,7 +108,7 @@ int ttsd_config_initialize(ttsd_config_changed_cb config_cb)
        }
 
        ret = tts_config_mgr_set_callback(getpid(), __ttsd_config_engine_changed_cb, __ttsd_config_voice_changed_cb, 
-               __ttsd_config_speech_rate_changed_cb, __ttsd_config_pitch_changed_cb, NULL);
+               __ttsd_config_speech_rate_changed_cb, __ttsd_config_pitch_changed_cb, __ttsd_config_bg_volume_ratio_changed_cb, NULL);
        if (0 != ret) {
                SLOG(LOG_ERROR, tts_tag(), "[ERROR] Fail to set config changed : %d", ret);
                return -1;
@@ -201,6 +209,19 @@ int ttsd_config_get_default_pitch(int* pitch)
        return 0;
 }
 
+int ttsd_config_get_bg_volume_ratio(double* ratio)
+{
+       if (NULL == ratio)
+               return -1;
+
+       if (0 != tts_config_mgr_get_bg_volume_ratio(ratio)) {
+               SLOG(LOG_ERROR, tts_tag(), "[Config ERROR] Fail to get default bg volume ratio");
+               return TTSD_ERROR_OPERATION_FAILED;
+       }
+
+       return 0;
+}
+
 int ttsd_config_save_error(int uid, int uttid, const char* lang, int vctype, const char* text, 
                           const char* func, int line, const char* message)
 {