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

IDirectSoundFullDuplex

COM
IIDedcb4c7a-daab-4216-a42e-6c50596ddc1d継承元IUnknown自前メソッド開始 vtbl3

メソッド 1

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

vtbl 3 HRESULT Initialize(GUID* pCaptureGuid, GUID* pRenderGuid, DSCBUFFERDESC* lpDscBufferDesc, DSBUFFERDESC* lpDsBufferDesc, HWND hWnd, DWORD dwLevel, IDirectSoundCaptureBuffer8** lplpDirectSoundCaptureBuffer8, IDirectSoundBuffer8** lplpDirectSoundBuffer8)
pCaptureGuidGUID*in使用するキャプチャデバイスのGUIDへのポインタ。NULLで既定デバイスを使用する。
pRenderGuidGUID*in使用する再生(レンダリング)デバイスのGUIDへのポインタ。NULLで既定デバイスを使用する。
lpDscBufferDescDSCBUFFERDESC*in作成するキャプチャバッファの仕様を記述したDSCBUFFERDESC構造体へのポインタ。
lpDsBufferDescDSBUFFERDESC*in作成する再生バッファの仕様を記述したDSBUFFERDESC構造体へのポインタ。
hWndHWNDin協調レベル設定の対象となるアプリケーションのウィンドウハンドル。
dwLevelDWORDinデバイスの協調レベル。DSSCL_NORMAL や DSSCL_PRIORITY などを指定する。
lplpDirectSoundCaptureBuffer8IDirectSoundCaptureBuffer8**out生成されたIDirectSoundCaptureBuffer8インターフェイスを受け取るポインタのアドレス。
lplpDirectSoundBuffer8IDirectSoundBuffer8**out生成されたIDirectSoundBuffer8インターフェイスを受け取るポインタのアドレス。

HSP用 COM定義

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

出力引数:
#define global IID_IDirectSoundFullDuplex "{EDCB4C7A-DAAB-4216-A42E-6C50596DDC1D}"
#usecom global IDirectSoundFullDuplex IID_IDirectSoundFullDuplex "{FEA4300C-7959-4147-B26A-2377B9E7A91D}"
#comfunc global IDirectSoundFullDuplex_Initialize  3 var,var,var,var,sptr,int,sptr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。