IDataModelManager2::GetModelForType メソッド (dbgmodel.h)
GetModelForType メソッドは、特定の型インスタンスの正規ビジュアライザーであるデータ モデルを返します。 実際、このメソッドは、RegisterModelForTypeSignature メソッドの以前の呼び出しで登録された最適な一致する型シグネチャを検索し、関連付けられたデータ モデルを返します。
構文
HRESULT GetModelForType(
IDebugHostType *type,
IModelObject **dataModel,
IDebugHostTypeSignature **typeSignature,
IDebugHostSymbolEnumerator **wildcardMatches
);
パラメーター
type
RegisterModelForTypeSignature メソッドの前の呼び出しによって登録された、最適に一致する正規ビジュアライザーを検索する具象型インスタンス。
dataModel
RegisterModelForTypeSignature の以前の呼び出しによって登録された最適な一致型シグネチャによって決定される、指定された型インスタンスの正規ビジュアライザーであるデータ モデルがここで返されます。 このデータ モデルは、型引数で指定された型で作成されたネイティブ/言語オブジェクトに自動的にアタッチされます。
typeSignature
型と一致した型シグネチャにより、RegisterModelForTypeSignature の以前の呼び出しから、返された型シグネチャを使用して登録されたデータ モデルが返されました。
wildcardMatches
typeSignature 引数で返されるシグネチャにワイルドカードがある場合は、ワイルドカードと type 引数で指定された具象型インスタンスの間のすべての一致の列挙子がここで返されます。
戻り値
このメソッドは、成功または失敗を示す HRESULT を返します。
注釈
サンプル コード
ComPtr<IDataModelManager> spManager; /* get the data model manager */
ComPtr<IDebugHostModule> spModule; /* get a module */
// Find the type of "MyType<int>" within the module
ComPtr<IDebugHostType> spType;
if (SUCCEEDED(spModule->FindTypeByName(L"MyType<int>", &spType)))
{
// Find the canonical visualizer which would be applied to MyType<int>
ComPtr<IModelObject> spDataModel;
ComPtr<IDebugHostTypeSignature> spSignature;
ComPtr<IDebugHostSymbolEnumerator> spWildcardMatches;
if (SUCCEEDED(spManager->GetModelForType(spType.Get(),
&spDataModel,
&spSignature,
&spWildcardMatches)))
{
// There is a visualizer which matched.
// spDataModel is the data model object which was registered as
// the canonical visualizer (RegisterModelForTypeSignature)
// spSignature is the signature which that data model was registered
// against (e.g.: created for MyType<*> via
// CreateTypeSignature/RegisterModelForTypeSignature)
// spWildcardMatches is an enumerator of the wildcard matches between
// the specific type spType and the signature spSignature (here
// int matched *, so there will be one item -- the type 'int' in
// the enumerator)
}
要件
要件 | 値 |
---|---|
Header | dbgmodel.h |