ホーム › System.WindowsProgramming › ICameraUIControl
ICameraUIControl
COMメソッド 8
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT Show(IUnknown* pWindow, CameraUIControlMode mode, CameraUIControlLinearSelectionMode selectionMode, CameraUIControlCaptureMode captureMode, CameraUIControlPhotoFormat photoFormat, CameraUIControlVideoFormat videoFormat, BOOL bHasCloseButton, ICameraUIControlEventCallback* pEventCallback)
| pWindow | IUnknown* | in | カメラ UI の親となるウィンドウを表す IUnknown インターフェイスへのポインタを指定する。 |
| mode | CameraUIControlMode | in | カメラ UI の表示モード(ブラウズまたはリニア)を指定する CameraUIControlMode である。 |
| selectionMode | CameraUIControlLinearSelectionMode | in | リニアモードでの選択方式を指定する CameraUIControlLinearSelectionMode である。 |
| captureMode | CameraUIControlCaptureMode | in | 写真・動画・両方のいずれをキャプチャ対象とするかを指定する CameraUIControlCaptureMode である。 |
| photoFormat | CameraUIControlPhotoFormat | in | 写真キャプチャに使用するファイル形式を指定する CameraUIControlPhotoFormat である。 |
| videoFormat | CameraUIControlVideoFormat | in | 動画キャプチャに使用するファイル形式を指定する CameraUIControlVideoFormat である。 |
| bHasCloseButton | BOOL | in | UI に閉じるボタンを表示するかどうかを指定する BOOL である。 |
| pEventCallback | ICameraUIControlEventCallback* | inoptional | 項目のキャプチャや削除などのイベント通知を受け取るコールバックを表す ICameraUIControlEventCallback へのポインタを指定する。 |
vtbl 4 HRESULT Close()
| pbDeferralRequired | BOOL* | out | 中断処理に遅延(deferral)が必要かどうかを受け取る BOOL へのポインタである。 |
vtbl 6 HRESULT Resume()
vtbl 7 HRESULT GetCurrentViewType(CameraUIControlViewType* pViewType)
| pViewType | CameraUIControlViewType* | out | 現在の表示ビューの種類を受け取る CameraUIControlViewType へのポインタである。 |
| pbstrActiveItemPath | LPWSTR* | outoptional | 現在アクティブな項目のファイルパスを受け取る文字列ポインタである。 |
| ppSelectedItemPaths | SAFEARRAY** | out | 選択されている項目のパスを格納した SAFEARRAY を受け取るポインタである。 |
| pszPath | LPWSTR | in | 削除対象とするキャプチャ済み項目のファイルパスを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ICameraUIControl "{B8733ADF-3D68-4B8F-BB08-E28A0BED0376}" #usecom global ICameraUIControl IID_ICameraUIControl "{16D5A2BE-B1C5-47B3-8EAE-CCBCF452C7E8}" #comfunc global ICameraUIControl_Show 3 sptr,int,int,int,int,int,int,sptr #comfunc global ICameraUIControl_Close 4 #comfunc global ICameraUIControl_Suspend 5 var #comfunc global ICameraUIControl_Resume 6 #comfunc global ICameraUIControl_GetCurrentViewType 7 var #comfunc global ICameraUIControl_GetActiveItem 8 var #comfunc global ICameraUIControl_GetSelectedItems 9 var #comfunc global ICameraUIControl_RemoveCapturedItem 10 wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ICameraUIControl "{B8733ADF-3D68-4B8F-BB08-E28A0BED0376}" #usecom global ICameraUIControl IID_ICameraUIControl "{16D5A2BE-B1C5-47B3-8EAE-CCBCF452C7E8}" #comfunc global ICameraUIControl_Show 3 sptr,int,int,int,int,int,int,sptr #comfunc global ICameraUIControl_Close 4 #comfunc global ICameraUIControl_Suspend 5 sptr #comfunc global ICameraUIControl_Resume 6 #comfunc global ICameraUIControl_GetCurrentViewType 7 sptr #comfunc global ICameraUIControl_GetActiveItem 8 sptr #comfunc global ICameraUIControl_GetSelectedItems 9 sptr #comfunc global ICameraUIControl_RemoveCapturedItem 10 wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。