IDataModelManager-Schnittstelle (dbgmodel.h)

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

Diese Schnittstelle wird nie direkt von einem Client implementiert.

Vererbung

IDataModelManager erbt von IUnknown.

Methoden

Die IDataModelManager-Schnittstelle verfügt über diese Methoden.

 
IDataModelManager::AcquireNamedModel

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

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

Die Close-Methode wird im Datenmodell-Manager von einer Anwendung aufgerufen, z. B. von einem Debugger, der das Datenmodell hostt, 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 verfügt nicht über das Konzept von Ausnahmen und Ausnahmefluss.
IDataModelManager::CreateIntrinsicObject

Die CreateIntrinsicObject-Methode ist die Methode, die systeminterne Werte in IModelObject eingibt. Der Aufrufer platziert den Wert in einem COM VARIANT-Element 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, boxt es in ein IModelObject und gibt es zurück. Das zurückgegebene Modellobjekt verfügt über eine Art von ObjectNoValue.
IDataModelManager::CreateSyntheticObject

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

Die IDataModelManager::CreateTypedIntrinsicObject-Methode boxt systeminterne Werte zusammen mit einer nativen/sprachlichen Typzuordnung in IModelObject.
IDataModelManager::CreateTypedObject

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

Die IDataModelManager::CreateTypedObjectReference-Methode erstellt einen Verweis auf ein zugrunde liegendes natives/sprachbasiertes Konstrukt.
IDataModelManager::GetModelForType

Die IDataModelManager::GetModelForType-Methode gibt das Datenmodell zurück, das die kanonische Schnellansicht für einen bestimmten Typ instance.
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 Schnellansicht 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 verringert die Verweisanzahl für eine Schnittstelle für ein Objekt.
IDataModelManager::UnregisterExtensionForTypeSignature

Die IDataModelManager::UnregisterExtensionForTypeSignature-Methode hebt einen vorherigen Aufruf der RegisterExtensionForTypeSignature-Methode zurück.
IDataModelManager::UnregisterModelForTypeSignature

Die IDataModelManager::UnregisterModelForTypeSignature-Methode hebt einen vorherigen Aufruf der RegisterModelForTypeSignature-Methode auf.
IDataModelManager::UnregisterNamedModel

Die IDataModelManager::UnregisterNamedModel-Methode hebt einen vorherigen Aufruf der RegisterNamedModel-Methode auf.

Hinweise

Objekterstellung/Boxingmethoden

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

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

Weitere Informationen

Übersicht über das Debuggerdatenmodell in C++