#define global IID_IMSVidRect "{7F5000A6-A440-47CA-8ACC-C0E75531A2C2}"
#usecom global IMSVidRect IID_IMSVidRect "{CB4276E6-7D5F-4CF1-9727-629C5E6DB6AE}"
#comfunc global IMSVidRect_get_Top 7 var
#comfunc global IMSVidRect_put_Top 8 int
#comfunc global IMSVidRect_get_Left 9 var
#comfunc global IMSVidRect_put_Left 10 int
#comfunc global IMSVidRect_get_Width 11 var
#comfunc global IMSVidRect_put_Width 12 int
#comfunc global IMSVidRect_get_Height 13 var
#comfunc global IMSVidRect_put_Height 14 int
#comfunc global IMSVidRect_get_HWnd 15 sptr
#comfunc global IMSVidRect_put_HWnd 16 sptr
#comfunc global IMSVidRect_put_Rect 17 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IMSVidRect "{7F5000A6-A440-47CA-8ACC-C0E75531A2C2}"
#usecom global IMSVidRect IID_IMSVidRect "{CB4276E6-7D5F-4CF1-9727-629C5E6DB6AE}"
#comfunc global IMSVidRect_get_Top 7 sptr
#comfunc global IMSVidRect_put_Top 8 int
#comfunc global IMSVidRect_get_Left 9 sptr
#comfunc global IMSVidRect_put_Left 10 int
#comfunc global IMSVidRect_get_Width 11 sptr
#comfunc global IMSVidRect_put_Width 12 int
#comfunc global IMSVidRect_get_Height 13 sptr
#comfunc global IMSVidRect_put_Height 14 int
#comfunc global IMSVidRect_get_HWnd 15 sptr
#comfunc global IMSVidRect_put_HWnd 16 sptr
#comfunc global IMSVidRect_put_Rect 17 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。