Update hello protocol
[platform/core/uifw/tts.git] / client / tts_client.h
index ad0a60c..0db3bf9 100644 (file)
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved 
+*  Copyright (c) 2011-2016 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
 *  limitations under the License.
 */
 
+
 #ifndef __TTS_CLIENT_H_
 #define __TTS_CLIENT_H_
 
-#include <pthread.h>
+#include <Ecore.h>
+
 #include "tts.h"
+#include "tts_config_mgr.h"
 #include "tts_main.h"
 
 #ifdef __cplusplus
@@ -31,21 +33,45 @@ typedef struct {
        int     current_utt_id;
 
        /* callback info */
-       tts_interrupted_cb              interrupted_cb;
-       void*                           interrupted_user_data;
+       tts_state_changed_cb            state_changed_cb;
+       void*                           state_changed_user_data;
        tts_utterance_started_cb        utt_started_cb;
        void*                           utt_started_user_data;
        tts_utterance_completed_cb      utt_completeted_cb;
        void*                           utt_completed_user_data;
        tts_error_cb                    error_cb;
        void*                           error_user_data;
-
-       /* state */
+       tts_default_voice_changed_cb    default_voice_changed_cb;
+       void*                           default_voice_changed_user_data;
+       tts_engine_changed_cb           engine_changed_cb;
+       void*                           engine_changed_user_data;
+       tts_supported_voice_cb          supported_voice_cb;
+       void*                           supported_voice_user_data;
+
+       /* mode / state */
+       tts_mode_e      mode;
+       tts_state_e     before_state;
        tts_state_e     current_state;
 
        /* semaphore */
        int             cb_ref_count;
-}tts_client_s;
+
+       /* callback data */
+       int             utt_id;
+       int             reason;
+       char*           err_msg;
+
+       /* connection */
+       Ecore_Timer*    conn_timer;
+
+       /* options */
+       char*           credential;
+       bool            credential_needed;
+       bool            internal;
+
+       /* repetition */
+       char*           text_repeat;
+} tts_client_s;
 
 int tts_client_new(tts_h* tts);
 
@@ -61,6 +87,14 @@ int tts_client_use_callback(tts_client_s* client);
 
 int tts_client_not_use_callback(tts_client_s* client);
 
+int tts_client_get_use_callback(tts_client_s* client);
+
+int tts_client_get_connected_client_count();
+
+int tts_client_get_mode_client_count(tts_mode_e mode);
+
+GList* tts_client_get_client_list();
+
 #ifdef __cplusplus
 }
 #endif