Метод IDataModelManager::CreateDataModelObject (dbgmodel.h)
Метод CreateDataModelObject — это простая вспомогающая оболочка для создания объектов, являющихся моделями данных, то есть объектов, которые будут присоединены в качестве родительских моделей к другим объектам. Все такие объекты должны поддерживать концепцию модели данных с помощью IDataModelConcept. Этот метод создает пустой искусственный объект без явного контекста и добавляет в качестве реализации концепции модели данных только что созданный объект IDataModelConcept . Аналогичным образом это можно сделать с помощью вызовов CreateSyntheticObject и SetConcept.
Синтаксис
HRESULT CreateDataModelObject(
IDataModelConcept *dataModel,
IModelObject **object
);
Параметры
dataModel
Реализация IDataModelConcept , которая будет автоматически добавлена к созданному объекту в качестве реализации концепции модели данных.
object
Сюда будет возвращен только что созданный искусственный объект (с набором концепций модели данных).
Возвращаемое значение
Этот метод возвращает HRESULT.
Комментарии
Образец кода
ComPtr<IDataModelManager> 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().
}
}
Требования
Требование | Значение |
---|---|
Заголовок | dbgmodel.h |