Win32 API 日本語リファレンス
ホームAI.MachineLearning.WinML › IMLOperatorShapeInferenceContext

IMLOperatorShapeInferenceContext

COM
IID105b6b29-5408-4a68-9959-09b5955a3492継承元IMLOperatorAttributes自前メソッド開始 vtbl7

メソッド 8

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

vtbl 7 DWORD GetInputCount()
vtbl 8 DWORD GetOutputCount()
vtbl 9 BOOLEAN IsInputValid(DWORD inputIndex)
inputIndexDWORDin有効性を確認する入力の 0 起点インデックスである。
vtbl 10 BOOLEAN IsOutputValid(DWORD outputIndex)
outputIndexDWORDin有効性を確認する出力の 0 起点インデックスである。
vtbl 11 HRESULT GetInputEdgeDescription(DWORD inputIndex, MLOperatorEdgeDescription* edgeDescription)
inputIndexDWORDin対象入力エッジの 0 起点インデックスである。
edgeDescriptionMLOperatorEdgeDescription*out入力エッジの型情報 MLOperatorEdgeDescription を受け取る出力先である。
vtbl 12 HRESULT GetInputTensorDimensionCount(DWORD inputIndex, DWORD* dimensionCount)
inputIndexDWORDin対象入力テンソルの 0 起点インデックスである。
dimensionCountDWORD*out入力テンソルの次元数を受け取る出力ポインタである。
vtbl 13 HRESULT GetInputTensorShape(DWORD inputIndex, DWORD dimensionCount, DWORD* dimensions)
inputIndexDWORDin対象入力テンソルの 0 起点インデックスである。
dimensionCountDWORDindimensions 配列の要素数(次元数)である。
dimensionsDWORD*out各次元のサイズを受け取る出力配列である。
vtbl 14 HRESULT SetOutputTensorShape(DWORD outputIndex, DWORD dimensionCount, DWORD* dimensions)
outputIndexDWORDin形状を設定する出力テンソルの 0 起点インデックスである。
dimensionCountDWORDindimensions 配列の要素数(次元数)である。
dimensionsDWORD*in推論した各次元サイズを与える入力配列である。

HSP用 COM定義

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

出力引数:
#define global IID_IMLOperatorShapeInferenceContext "{105B6B29-5408-4A68-9959-09B5955A3492}"
#usecom global IMLOperatorShapeInferenceContext IID_IMLOperatorShapeInferenceContext "{}"
#comfunc global IMLOperatorShapeInferenceContext_GetInputCount                 7
#comfunc global IMLOperatorShapeInferenceContext_GetOutputCount                8
#comfunc global IMLOperatorShapeInferenceContext_IsInputValid                  9 int
#comfunc global IMLOperatorShapeInferenceContext_IsOutputValid                 10 int
#comfunc global IMLOperatorShapeInferenceContext_GetInputEdgeDescription       11 int,var
#comfunc global IMLOperatorShapeInferenceContext_GetInputTensorDimensionCount  12 int,var
#comfunc global IMLOperatorShapeInferenceContext_GetInputTensorShape           13 int,int,var
#comfunc global IMLOperatorShapeInferenceContext_SetOutputTensorShape          14 int,int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。