Tizen 2.1 base
[platform/core/uifw/stt.git] / server / sttd_client_data.h
1 /*
2 *  Copyright (c) 2012, 2013 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.
12 */
13
14
15 #ifndef __STTD_CLIENT_DATA_H_
16 #define __STTD_CLIENT_DATA_H_
17
18 #include <glib.h>
19 #include <Ecore.h>
20
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24
25 typedef enum {
26         APP_STATE_CREATED       = 0,
27         APP_STATE_READY         = 1,
28         APP_STATE_RECORDING     = 2,
29         APP_STATE_PROCESSING    = 3
30 }app_state_e;
31
32 typedef struct {
33         int     pid;
34         int     uid;
35         app_state_e     state;
36         Ecore_Timer*    timer;
37 } client_info_s;
38
39 typedef struct {
40         int pid;
41 } setting_client_info_s;
42
43 int sttd_client_add(const int pid, const int uid);
44
45 int sttd_client_delete(const int uid);
46
47 int sttd_client_get_state(const int uid, app_state_e* state);
48
49 int sttd_client_set_state(const int uid, const app_state_e state);
50
51 int sttd_client_get_ref_count();
52
53 int sttd_client_get_pid(const int uid);
54
55 int sttd_client_get_current_recording();
56
57 int sttd_client_get_current_thinking();
58
59 int sttd_cliet_set_timer(int uid, Ecore_Timer* timer);
60
61 int sttd_cliet_get_timer(int uid, Ecore_Timer** timer);
62
63 int sttd_client_get_list(int** uids, int* uid_count);
64
65
66 int sttd_setting_client_add(int pid);
67
68 int sttd_setting_client_delete(int pid);
69
70 bool sttd_setting_client_is(int pid);
71
72 #ifdef __cplusplus
73 }
74 #endif
75
76 #endif  /* __STTD_CLIENT_DATA_H_ */
77