Win32 API 日本語リファレンス
ホームMedia.Audio.XAudio2 › IXAPOParameters

IXAPOParameters

COM
IID26d95c66-80f2-499a-ad54-5ae7f01c6d98継承元IUnknown自前メソッド開始 vtbl3

メソッド 2

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

vtbl 3 void SetParameters(void* pParameters, DWORD ParameterByteSize)
pParametersvoid*inXAPOへ設定する効果パラメーター構造体へのポインター。型はエフェクトに依存する。
ParameterByteSizeDWORDinパラメーター構造体のサイズをバイト単位で指定するDWORD値。
vtbl 4 void GetParameters(void* pParameters, DWORD ParameterByteSize)
pParametersvoid*out現在の効果パラメーターを受け取るバッファーへのポインター。
ParameterByteSizeDWORDin受け取るパラメーターバッファーのサイズをバイト単位で指定するDWORD値。

HSP用 COM定義

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

#define global IID_IXAPOParameters "{26D95C66-80F2-499A-AD54-5AE7F01C6D98}"
#usecom global IXAPOParameters IID_IXAPOParameters "{}"
#comfunc global IXAPOParameters_SetParameters  3 sptr,int
#comfunc global IXAPOParameters_GetParameters  4 sptr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。