Freigeben über


IDataModelManager-Schnittstelle (dbgmodel.h)

Die Kernschnittstelle für den Datenmodell-Manager. Dies ist die Schnittstelle, über die neue Objekte erstellt werden, systeminterne Werte boxen und entboxt werden, und Modelle werden für Typen registriert.

Diese Schnittstelle wird nie direkt von einem Client implementiert.

Erbschaft

IDataModelManager erbt von IUnknown.

Methodik

Die IDataModelManager Schnittstelle verfügt über diese Methoden.

 
IDataModelManager::AcquireNamedModel

Dadurch wird ein bekannter Modellname nachschlagen und das mit diesem Namen registrierte Datenmodell zurückgegeben.
IDataModelManager::AddRef

Die AddRef-Methode erhöht die Verweisanzahl für eine Schnittstelle in einem Objekt. Diese Methode gehört zur IDataModelManager-Schnittstelle.
IDataModelManager::Close

Die Close-Methode wird vom Datenmodell-Manager von einer Anwendung aufgerufen, z. B. debugger, der das Datenmodell hosten soll, um den Herunterfahrensprozess des Datenmodell-Managers zu starten.
IDataModelManager::CreateDataModelObject

Die IDataModelManager::CreateDataModelObject-Methode ist ein einfacher Hilfswrapper zum Erstellen von Objekten, die Datenmodelle sind.
IDataModelManager::CreateErrorObject

Die CreateErrorObject-Methode erstellt ein "Error-Objekt". Das Datenmodell hat nicht den Begriff der Ausnahmen und des Ausnahmeflusses.
IDataModelManager::CreateIntrinsicObject

Die CreateIntrinsicObject-Methode ist die Methode, die systeminterne Werte in IModelObject eingibt. Der Aufrufer platziert den Wert in einer COM VARIANT und ruft diese Methode auf.
IDataModelManager::CreateMetadataStore-

Die IDataModelManager::CreateMetadataStore-Methode erstellt einen Schlüsselspeicher, der zum Speichern von Metadaten verwendet wird, die Eigenschaften und anderen Werten zugeordnet werden können.
IDataModelManager::CreateNoValue

Die CreateNoValue-Methode erstellt ein "no value"-Objekt, schachtelt es in ein IModelObject und gibt es zurück. Das zurückgegebene Modellobjekt weist eine Art von ObjectNoValue auf.
IDataModelManager::CreateSyntheticObject

Die IDataModelManager::CreateSyntheticObject-Methode erstellt ein leeres Datenmodellobjekt, das ein Wörterbuch mit Schlüssel/Wert/Metadaten-Tupeln und -Konzepten ist.
IDataModelManager::CreateTypedIntrinsicObject

Die IDataModelManager::CreateTypedIntrinsicObject-Methode schachtelt systeminterne Werte zusammen mit einer System-/Sprachtypzuordnung in IModelObject.
IDataModelManager::CreateTypedObject

Die IDataModelManager::CreateTypedObject-Methode erstellt eine Darstellung eines nativen/spracheigenen Objekts im Adressraum eines Debugziels.
IDataModelManager::CreateTypedObjectReference

Die IDataModelManager::CreateTypedObjectReference-Methode erstellt einen Verweis auf ein zugrunde liegendes System-/Sprachkonstrukt.
IDataModelManager::GetModelForType

Die IDataModelManager::GetModelForType-Methode gibt das Datenmodell zurück, das die kanonische Visualisierung für eine bestimmte Typinstanz ist.
IDataModelManager::GetModelForTypeSignature

Die IDataModelManager::GetModelForTypeSignature-Methode gibt das Datenmodell zurück, das zuvor für eine bestimmte Typsignatur registriert wurde.
IDataModelManager::GetRootNamespace

Die GetRootNamespace-Methode gibt den Stammnamespace des Datenmodells zurück.
IDataModelManager::QueryInterface

Die IDataModelManager::QueryInterface-Methode ruft Zeiger auf die unterstützten Schnittstellen für ein Objekt ab.
IDataModelManager::RegisterExtensionForTypeSignature

Die IDataModelManager::RegisterExtensionForTypeSignature-Methode registriert ein Datenmodell für eine bestimmte Typsignatur als Erweiterung.
IDataModelManager::RegisterModelForTypeSignature

Die IDataModelManager::RegisterModelForTypeSignature-Methode registriert eine kanonische Visualisierung für eine bestimmte Typsignatur.
IDataModelManager::RegisterNamedModel

Die IDataModelManager::RegisterNamedModel-Methode registriert ein bestimmtes Datenmodell unter einem bekannten Namen, sodass es leicht auffindbar ist.
IDataModelManager::Release

Die IDataModelManager::Release-Methode erhöht die Referenzanzahl für eine Schnittstelle für ein Objekt.
IDataModelManager::UnregisterExtensionForTypeSignature

Die IDataModelManager::UnregisterExtensionForTypeSignature-Methode rückgängig machen einen vorherigen Aufruf der RegisterExtensionForTypeSignature-Methode rückgängig.
IDataModelManager::UnregisterModelForTypeSignature

Die IDataModelManager::UnregisterModelForTypeSignature-Methode rückgängig machen einen vorherigen Aufruf der RegisterModelForTypeSignature-Methode rückgängig.
IDataModelManager::UnregisterNamedModel

Die IDataModelManager::UnregisterNamedModel-Methode rückgängig machen einen vorherigen Aufruf der RegisterNamedModel-Methode rückgängig.

Bemerkungen

Objekterstellung /Boxingmethoden

Der folgende Satz von Methoden wird verwendet, um neue Objekte zu erstellen oder Werte in einem IModelObject- zu boxen – die Kernschnittstelle des Datenmodells.

STDMETHOD(CreateNoValue)(_Out_ IModelObject** object) PURE;

STDMETHOD(CreateErrorObject)(_In_ HRESULT hrError, 
                             _In_opt_ PCWSTR pwszMessage, 
                             _COM_Outptr_ IModelObject** object) PURE;

STDMETHOD(CreateTypedObject)(_In_opt_ IDebugHostContext* context, 
                             _In_ Location objectLocation, 
                             _In_ IDebugHostType* objectType, 
                             _COM_Errorptr_ IModelObject** object) PURE;

STDMETHOD(CreateTypedObjectReference)(_In_opt_ IDebugHostContext* context, 
                                      _In_ Location objectLocation, 
                                      _In_ IDebugHostType* objectType, 
                                      _COM_Errorptr_ IModelObject** object) PURE;

STDMETHOD(CreateSyntheticObject)(_In_opt_ IDebugHostContext* context, 
                                 _COM_Outptr_ IModelObject** object) PURE;

STDMETHOD(CreateDataModelObject)(_In_ IDataModelConcept* dataModel, 
                                 _COM_Outptr_ IModelObject** object) PURE;

STDMETHOD(CreateIntrinsicObject)(_In_ ModelObjectKind objectKind, 
                                 _In_ VARIANT* intrinsicData, 
                                 _COM_Outptr_ IModelObject** object) PURE;

STDMETHOD(CreateTypedIntrinsicObject)(_In_ VARIANT* intrinsicData, 
                                      _In_ IDebugHostType* type, 
                                      _COM_Outptr_ IModelObject** object) PURE;

STDMETHOD(CreateMetadataStore)(_In_opt_ IKeyStore* parentStore, 
                               _COM_Outptr_ IKeyStore** metadataStore) PURE;

STDMETHOD(CreateTypedIntrinsicObjectEx)(_In_opt_ IDebugHostContext* context, 
                                        _In_ VARIANT* intrinsicData, 
                                        _In_ IDebugHostType* type, 
                                        _COM_Outptr_ IModelObject** object) PURE;

Anforderungen

Anforderung Wert
Header- dbgmodel.h

Siehe auch

Debuggerdatenmodell C++-Übersicht