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.
15 #ifndef __STT_CLIENT_H_
16 #define __STT_CLIENT_H_
31 int uid; /*<< unique id = pid + handle */
33 stt_result_cb result_cb;
34 void* result_user_data;
35 stt_partial_result_cb partial_result_cb;
36 void* partial_result_user_data;
37 stt_state_changed_cb state_changed_cb;
38 void* state_changed_user_data;
39 stt_error_cb error_cb;
40 void* error_user_data;
43 bool silence_supported;
44 bool profanity_supported;
45 bool punctuation_supported;
47 stt_option_profanity_e profanity;
48 stt_option_punctuation_e punctuation;
49 stt_option_silence_detection_e silence;
52 stt_state_e before_state;
53 stt_state_e current_state;
69 int stt_client_new(stt_h* stt);
71 int stt_client_destroy(stt_h stt);
73 stt_client_s* stt_client_get(stt_h stt);
75 stt_client_s* stt_client_get_by_uid(const int uid);
77 int stt_client_get_size();
79 int stt_client_use_callback(stt_client_s* client);
81 int stt_client_not_use_callback(stt_client_s* client);
83 int stt_client_get_use_callback(stt_client_s* client);
85 int stt_client_set_option_supported(stt_h stt, bool silence, bool profanity, bool punctuation);
91 #endif /* __STT_CLIENT_H_ */