灵云SDK开发手册(iOS API)  8.1
hci_kb.h
1 
6 #ifndef __HCI_KB_HEADER__
7 #define __HCI_KB_HEADER__
8 
9 #include "hci_sys.h"
10 
11 #ifdef __cplusplus
12 extern "C"
13 {
14 #endif
15 
17  /* @{ */
18 
19 
21  /* @{ */
22 
26  #define KB_MODULE "HCI_KB"
27 
31  typedef enum _tag_KB_SLIDE_INFO_ITEM_TYPE
32  {
36 
40  typedef struct _tag_KB_SLIDE_INFO_ITEM
41  {
43  char *pszKey;
44  unsigned int uiPercent;
46 
50  typedef struct _tag_KB_QUERY_SELECTED_ITEM
51  {
52  char* pszSelected;
53  char* pszMatched;
55 
59  typedef struct _tag_KB_QUERY_INFO
60  {
61  char* pszQuery;
62  unsigned int uiSelectedItemCount;
64  unsigned int uiSlideInfoItemCount;
66  } KB_QUERY_INFO;
67 
68 
72  typedef struct _tag_KB_RESULT_MATCH_ITEM
73  {
74  char * pszResultItem;
75  char * pszSymbolsItem;
77 
81  typedef struct _tag_KB_RECOG_RESULT_ITEM
82  {
83  char *pszResult;
84  char *pszSymbols;
85  unsigned int uiMatchItemCount;
88 
89 
93  typedef struct _tag_KB_CONFIRM_RESULT
94  {
95  char *pszResult;
97 
101  typedef struct _tag_KB_SYLLABLE_RESULT_ITEM
102  {
103  char *pszSyllable;
105 
109  typedef struct _tag_KB_RECOG_RESULT
110  {
112  unsigned int uiResultItemCount;
114  unsigned int uiSyllableItemCount;
115  bool bMore;
116  } KB_RECOG_RESULT;
117 
121  typedef struct _tag_KB_UDB_ITEM_INFO
122  {
125 
129  typedef enum _tag_KB_FUZZY_SYLLABLE_TYPE
130  {
136 
140  typedef struct _tag_KB_FUZZY_SYLLABLE
141  {
143  char * pszSyllableOne;
144  char * pszSyllableTwo;
146 
147 
151  typedef struct _tag_KB_CONV_RESULT_ITEM
152  {
153  char * pszSymbols;
155 
159  typedef struct _tag_KB_CONV_RESULT
160  {
162  unsigned int uiConvItemCount;
163  } KB_CONV_RESULT;
164 
166 // 回调函数定义
167 
179  typedef bool (HCIAPI * Callback_KB_UDB_ITERATE)(
180  _OPT_ _IN_ void * pvUserParam,
181  _MUST_ _IN_ KB_UDB_ITEM_INFO * psKbUdbItem,
182  _MUST_ _IN_ HCI_ERR_CODE hciErrCode
183  );
184 
185 
186  /* @} */
188  /* @{ */
189 
249  HCI_ERR_CODE HCIAPI hci_kb_init(
250  _MUST_ _IN_ const char * pszConfig
251  );
252 
253 
307  _MUST_ _IN_ const char * pszConfig,
308  _MUST_ _OUT_ int * pnSessionId
309  );
310 
311 
331  _MUST_ _IN_ int nSessionId,
332  _MUST_ _IN_ KB_FUZZY_SYLLABLE *pFuzzySyllableList,
333  _MUST_ _IN_ unsigned int uiFuzzySyllableCount
334  );
335 
336 
427  HCI_ERR_CODE HCIAPI hci_kb_recog(
428  _MUST_ _IN_ int nSessionId,
429  _OPT_ _IN_ const char * pszConfig,
430  _MUST_ _IN_ KB_QUERY_INFO *pQueryInfo,
431  _MUST_ _OUT_ KB_RECOG_RESULT *pRecogResult
432  );
433 
448  HCI_ERR_CODE HCIAPI hci_kb_confirm(_MUST_ _IN_ int nSessionId,_MUST_ _IN_ KB_CONFIRM_RESULT * pConfirmResult);
449 
460  HCI_ERR_CODE HCIAPI hci_kb_free_recog_result(_MUST_ _IN_ KB_RECOG_RESULT * pRecogResult);
461 
462 
481  _MUST_ _IN_ int nSessionId,
482  _MUST_ _IN_ Callback_KB_UDB_ITERATE pfnUdbIterate,
483  _OPT_ _IN_ void * pvUserParam
484  );
485 
535  _MUST_ _IN_ int nSessionId,
536  _OPT_ _IN_ const char * pszConfig,
537  _MUST_ _IN_ KB_UDB_ITEM_INFO * psKbUdbItem
538  );
539 
587  _MUST_ _IN_ int nSessionId,
588  _OPT_ _IN_ const char * pszConfig,
589  _MUST_ _IN_ KB_UDB_ITEM_INFO * psKbUdbItem
590  );
591 
640  HCI_ERR_CODE HCIAPI hci_kb_conv(
641  _MUST_ _IN_ int nSessionId,
642  _OPT_ _IN_ const char * pszConfig,
643  _MUST_ _IN_ char *pszSrc,
644  _MUST_ _IN_ KB_CONV_RESULT *pConvResult
645  );
646 
657  HCI_ERR_CODE HCIAPI hci_kb_free_conv_result(_MUST_ _IN_ KB_CONV_RESULT * pConvResult);
658 
673  _MUST_ _IN_ int nSessionId
674  );
675 
676 
689  HCI_ERR_CODE HCIAPI hci_kb_release();
690 
691  /* @} */
693 
694 /* @} */
695 #ifdef __cplusplus
696 }
697 #endif
698 
699 #endif // _hci_cloud_tts_player_api_header_
700