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

ISpRecoResult

COM
IID20b053be-e235-43cd-9a2a-8d17a48b7842継承元ISpPhrase自前メソッド開始 vtbl7

メソッド 7

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

vtbl 7 HRESULT GetResultTimes(SPRECORESULTTIMES* pTimes)
pTimesSPRECORESULTTIMES*inout認識結果の時刻情報を受け取るSPRECORESULTTIMES構造体へのポインタ。
vtbl 8 HRESULT GetAlternates(DWORD ulStartElement, DWORD cElements, DWORD ulRequestCount, ISpPhraseAlt** ppPhrases, DWORD* pcPhrasesReturned)
ulStartElementDWORDin代替候補を取得する開始要素のインデックス。
cElementsDWORDin対象とする要素数。
ulRequestCountDWORDin取得を要求する代替候補数。
ppPhrasesISpPhraseAlt**out取得した代替候補ISpPhraseAltの配列を受け取るバッファ。
pcPhrasesReturnedDWORD*inout実際に返された代替候補数を受け取るポインタ。
vtbl 9 HRESULT GetAudio(DWORD ulStartElement, DWORD cElements, ISpStreamFormat** ppStream)
ulStartElementDWORDin取得開始する要素の0始まりインデックス。
cElementsDWORDin取得する要素数。0で開始要素以降全体を取得する。
ppStreamISpStreamFormat**out該当区間の音声ストリームISpStreamFormatを受け取るポインタ。
vtbl 10 HRESULT SpeakAudio(DWORD ulStartElement, DWORD cElements, DWORD dwFlags, DWORD* pulStreamNumber)
ulStartElementDWORDin読み上げ開始する要素のインデックス。
cElementsDWORDin読み上げる要素数。0で開始要素以降全体を対象とする。
dwFlagsDWORDin読み上げ方法を指定するSPEAKFLAGS。
pulStreamNumberDWORD*inout割り当てられたストリーム番号を受け取るポインタ。NULL可。
vtbl 11 HRESULT Serialize(SPSERIALIZEDRESULT** ppCoMemSerializedResult)
ppCoMemSerializedResultSPSERIALIZEDRESULT**inoutシリアライズした認識結果を受け取るSPSERIALIZEDRESULTポインタ。CoTaskMemFreeで解放する。
vtbl 12 HRESULT ScaleAudio(GUID* pAudioFormatId, WAVEFORMATEX* pWaveFormatEx)
pAudioFormatIdGUID*in再スケールする音声フォーマットを識別するGUID。
pWaveFormatExWAVEFORMATEX*in再スケール後の波形フォーマット詳細を示すWAVEFORMATEX。
vtbl 13 HRESULT GetRecoContext(ISpRecoContext** ppRecoContext)
ppRecoContextISpRecoContext**outこの結果を生成した認識コンテキストISpRecoContextを受け取るポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_ISpRecoResult "{20B053BE-E235-43CD-9A2A-8D17A48B7842}"
#usecom global ISpRecoResult IID_ISpRecoResult "{}"
#comfunc global ISpRecoResult_GetResultTimes  7 var
#comfunc global ISpRecoResult_GetAlternates   8 int,int,int,sptr,var
#comfunc global ISpRecoResult_GetAudio        9 int,int,sptr
#comfunc global ISpRecoResult_SpeakAudio      10 int,int,int,var
#comfunc global ISpRecoResult_Serialize       11 var
#comfunc global ISpRecoResult_ScaleAudio      12 var,var
#comfunc global ISpRecoResult_GetRecoContext  13 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。