IDataModelManager3 ::CreateDataModelObject, méthode (dbgmodel.h)
La méthode CreateDataModelObject est un wrapper d’assistance simple pour créer des objets qui sont des modèles de données , c’est-à-dire des objets qui vont être attachés en tant que modèles parents à d’autres objets. Tous ces objets doivent prendre en charge le concept de modèle de données via IDataModelConcept. Cette méthode crée un objet synthétique vide sans contexte explicite et ajoute le IDataModelConcept que l’implémentation de l’objet nouvellement créé du concept de modèle de données. Cela peut également être effectué avec des appels à CreateSyntheticObject et SetConcept.
Syntaxe
HRESULT CreateDataModelObject(
IDataModelConcept *dataModel,
IModelObject **object
);
Paramètres
dataModel
Implémentation de IDataModelConcept qui sera automatiquement ajoutée à l’objet nouvellement créé comme implémentation du concept de modèle de données.
object
L’objet synthétique nouvellement créé (avec le jeu de concepts de modèle de données) est retourné ici.
Valeur de retour
Cette méthode retourne HRESULT.
Remarques
exemple de code
ComPtr<IDataModelManager3> spManager; /* get the data model manager */
// We need some IDataModelConcept implementation. Provide a
// minimal one for example purposes.
class MyDataModel :
public Microsoft::WRL::RuntimeClass<
Microsoft::WRL::RuntimeClassFlags<
Microsoft::WRL::RuntimeClassType::ClassicCom
>,
IDataModelConcept
>
{
public:
IFACEMETHOD(InitializeObject)(
_In_ IModelObject * /*pContextObject*/,
_In_opt_ IDebugHostTypeSignature * /*pMatchingSignature*/,
_In_opt_ IDebugHostSymbolEnumerator * /*pWildcardMatches*/
)
{
return S_OK;
}
IFACEMETHOD(GetName)(_Out_ BSTR *pModelName)
{
*pModelName = nullptr;
return E_NOTIMPL;
}
};
ComPtr<MyDataModel> spMyModel = Microsoft::WRL::Make<MyDataModel>();
if (spMyModel != nullptr)
{
ComPtr<IModelObject> spDataModelObject;
if (SUCCEEDED(spManager->CreateDataModelObject(spMyModel.Get(),
&spDataModelObject)))
{
// spDataModelObject is now a data model object and can be attached
// as a parent to any other object via AddParentModel().
}
}
Exigences
Exigence | Valeur |
---|---|
d’en-tête | dbgmodel.h |