Win32 API 日本語リファレンス
ホームMedia.Speech › ISpSREngine2

ISpSREngine2

COM
IID7ba627d8-33f9-4375-90c5-9985aee5ede5継承元ISpSREngine自前メソッド開始 vtbl32

メソッド 11

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 32 HRESULT PrivateCallImmediate(void* pvEngineContext, void* pInCallFrame, DWORD ulInCallFrameSize, void** ppvCoMemResponse, DWORD* pulResponseSize)
pvEngineContextvoid*in対象のエンジン側認識コンテキストへのポインタ。
pInCallFramevoid*in即時実行する独自呼び出し入力データへのポインタ。
ulInCallFrameSizeDWORDinpInCallFrameが指す入力データのバイト数。
ppvCoMemResponsevoid**out応答データを受け取る出力先。CoTaskMemAllocで確保される。
pulResponseSizeDWORD*out応答データのバイト数を受け取る出力先。
vtbl 33 HRESULT SetAdaptationData2(void* pvEngineContext, LPWSTR pAdaptationData, DWORD cch, LPWSTR pTopicName, SPADAPTATIONSETTINGS eSettings, SPADAPTATIONRELEVANCE eRelevance)
pvEngineContextvoid*in対象のエンジン側認識コンテキストへのポインタ。
pAdaptationDataLPWSTRin認識精度向上に用いる適応テキストデータ。
cchDWORDinpAdaptationDataの文字数。
pTopicNameLPWSTRin適応データを関連付けるトピック名文字列。NULL可。
eSettingsSPADAPTATIONSETTINGSin適応の動作設定を示すSPADAPTATIONSETTINGS列挙値。
eRelevanceSPADAPTATIONRELEVANCEin適応データの関連度を示すSPADAPTATIONRELEVANCE列挙値。
vtbl 34 HRESULT SetGrammarPrefix(void* pvEngineGrammar, LPWSTR pszPrefix, BOOL fIsPrefixRequired)
pvEngineGrammarvoid*in対象のエンジン側文法コンテキストへのポインタ。
pszPrefixLPWSTRinoptional文法に付与する接頭辞文字列。
fIsPrefixRequiredBOOLin接頭辞が必須か否かを示すBOOL。
vtbl 35 HRESULT SetRulePriority(SPRULEHANDLE hRule, void* pvClientRuleContext, INT nRulePriority)
hRuleSPRULEHANDLEin優先度を設定する対象ルールのハンドルSPRULEHANDLE。
pvClientRuleContextvoid*inルールに関連付けられたクライアント定義データへのポインタ。
nRulePriorityINTinルールに設定する優先度の値。大きいほど優先される。
vtbl 36 HRESULT EmulateRecognition(ISpPhrase* pPhrase, DWORD dwCompareFlags)
pPhraseISpPhrase*in認識を模擬する入力フレーズISpPhrase。
dwCompareFlagsDWORDin比較方法を制御するフラグ。
vtbl 37 HRESULT SetSLMWeight(void* pvEngineGrammar, FLOAT flWeight)
pvEngineGrammarvoid*in対象のエンジン側文法コンテキストへのポインタ。
flWeightFLOATinSLMに適用する重み係数(FLOAT)。
vtbl 38 HRESULT SetRuleWeight(SPRULEHANDLE hRule, void* pvClientRuleContext, FLOAT flWeight)
hRuleSPRULEHANDLEin重みを設定する対象ルールのハンドルSPRULEHANDLE。
pvClientRuleContextvoid*inルールに関連付けられたクライアント定義データへのポインタ。
flWeightFLOATinルールに適用する重み係数(FLOAT)。
vtbl 39 HRESULT SetTrainingState(BOOL fDoingTraining, BOOL fAdaptFromTrainingData)
fDoingTrainingBOOLinトレーニング中か否かを示すBOOL。
fAdaptFromTrainingDataBOOLinトレーニングデータから適応を行うか否かを示すBOOL。
vtbl 40 HRESULT ResetAcousticModelAdaptation()
vtbl 41 HRESULT OnLoadCFG(void* pvEngineGrammar, SPBINARYGRAMMAR* pGrammarData, DWORD ulGrammarID)
pvEngineGrammarvoid*in対象のエンジン側文法コンテキストへのポインタ。
pGrammarDataSPBINARYGRAMMAR*in読み込むバイナリ文法データSPBINARYGRAMMARへのポインタ。
ulGrammarIDDWORDin読み込む文法に割り当てるID。
vtbl 42 HRESULT OnUnloadCFG(void* pvEngineGrammar, DWORD ulGrammarID)
pvEngineGrammarvoid*in対象のエンジン側文法コンテキストへのポインタ。
ulGrammarIDDWORDinアンロードする文法のID。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ISpSREngine2 "{7BA627D8-33F9-4375-90C5-9985AEE5EDE5}"
#usecom global ISpSREngine2 IID_ISpSREngine2 "{}"
#comfunc global ISpSREngine2_PrivateCallImmediate          32 sptr,sptr,int,sptr,var
#comfunc global ISpSREngine2_SetAdaptationData2            33 sptr,wstr,int,wstr,int,int
#comfunc global ISpSREngine2_SetGrammarPrefix              34 sptr,wstr,int
#comfunc global ISpSREngine2_SetRulePriority               35 sptr,sptr,int
#comfunc global ISpSREngine2_EmulateRecognition            36 sptr,int
#comfunc global ISpSREngine2_SetSLMWeight                  37 sptr,float
#comfunc global ISpSREngine2_SetRuleWeight                 38 sptr,sptr,float
#comfunc global ISpSREngine2_SetTrainingState              39 int,int
#comfunc global ISpSREngine2_ResetAcousticModelAdaptation  40
#comfunc global ISpSREngine2_OnLoadCFG                     41 sptr,var,int
#comfunc global ISpSREngine2_OnUnloadCFG                   42 sptr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。