2 * Copyright (c) 2011-2016 Samsung Electronics Co., Ltd All Rights Reserved
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 * http://www.apache.org/licenses/LICENSE-2.0
7 * Unless required by applicable law or agreed to in writing, software
8 * distributed under the License is distributed on an "AS IS" BASIS,
9 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10 * See the License for the specific language governing permissions and
11 * limitations under the License.
15 #ifndef __TTSD_ENGINE_AGENT_H_
16 #define __TTSD_ENGINE_AGENT_H_
18 #include "ttsd_main.h"
19 #include "ttsd_player.h"
27 * tts Engine Agent Interfaces
30 /** Init engine agent */
31 int ttsd_engine_agent_init(ttse_request_callback_s *callback);
33 /** Release engine agent */
34 int ttsd_engine_agent_release();
36 /** load current engine */
37 int ttsd_engine_agent_load_current_engine();
39 /** Set callbacks of the current engine */
40 int ttsd_engine_agent_set_private_data_set_cb(ttse_private_data_set_cb callback);
41 int ttsd_engine_agent_set_private_data_requested_cb(ttse_private_data_requested_cb callback);
42 int ttsd_engine_agent_set_activated_mode_changed_cb(ttse_activated_mode_changed_cb callback);
44 /** Unload current engine */
45 int ttsd_engine_agent_unload_current_engine();
47 /** Get state of current engine to need network */
48 bool ttsd_engine_agent_need_network();
50 bool ttsd_engine_select_valid_voice(const char* lang, int type, char** out_lang, int* out_type);
52 bool ttsd_engine_agent_is_same_engine(const char* engine_id);
54 /** Get/Set app option */
55 int ttsd_engine_agent_set_default_engine(const char* engine_id);
57 int ttsd_engine_agent_set_default_voice(const char* language, int vctype);
59 int ttsd_engine_agent_set_default_speed(int speed);
61 int ttsd_engine_agent_set_default_pitch(int pitch);
63 int ttsd_engine_agent_is_credential_needed(unsigned int uid, bool* credential_needed);
65 int ttsd_engine_set_private_data(const char* key, const char* data);
67 int ttsd_engine_get_private_data(const char* key, char** data);
69 int ttsd_engine_check_app_agreed(const char* appid, bool* is_agreed);
71 int ttsd_engine_notify_activated_mode_changed(int activated_mode);
74 * TTS Engine Interfaces for client
77 int ttsd_engine_load_voice(const char* lang, int vctype);
79 int ttsd_engine_unload_voice(const char* lang, int vctype);
81 int ttsd_engine_start_synthesis(const char* lang, int vctype, const char* text, int speed, const char* appid, const char* credential, void* user_param);
83 int ttsd_engine_cancel_synthesis();
85 int ttsd_engine_get_voice_list(GList** voice_list);
87 int ttsd_engine_get_default_voice(char** lang, int* vctype);
95 #endif /* __TTSD_ENGINE_AGENT_H_ */