IModelObject::SetConcept-Methode (dbgmodel.h)
Die SetConcept-Methode platziert ein angegebenes Konzept auf dem Objekt instance, das durch diesen Zeiger angegeben wird. Wenn ein übergeordnetes Modell, das an das Objekt angefügt instance, auch das Konzept unterstützt, überschreibt die Implementierung im instance dies im übergeordneten Modell.
Informationen zum Satz von Konzepten (Schnittstellen), die vom Datenmodell unterstützt werden, finden Sie unter Debuggerdatenmodell-C++-Konzepte.
Informationen zur IKeyStore-Schnittstelle finden Sie unter IKeyStore-Schnittstelle.
Syntax
HRESULT SetConcept(
REFIID conceptId,
IUnknown *conceptInterface,
IKeyStore *conceptMetadata
);
Parameter
conceptId
Der eindeutige Bezeichner des zugewiesenen Konzepts. Dies ist auch die IID der Kernschnittstelle des Konzepts.
conceptInterface
Die zugewiesene Konzeptschnittstelle (definiert durch conceptId).
conceptMetadata
Optionale Metadaten, die diesem Konzept zugeordnet werden sollen.
Rückgabewert
Diese Methode gibt HRESULT zurück, das auf Erfolg oder Fehler hinweist.
Hinweise
Codebeispiel
ComPtr<IModelObject> spObject; /* get an object: say a new one from CreateSyntheticObject */
// Implement IStringDisplayableConcept for the object. Return a static "Hello World" string.
class MyStringConversion :
public Microsoft::WRL::RuntimeClass<
Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::RuntimeClassType::ClassicCom>,
IStringDisplayableConcept
>
{
public:
IFACEMETHOD(ToDisplayString)(_In_ IModelObject * /*pContextObject*/,
_In_opt_ IKeyStore * /*pMetadata*/,
_Out_ BSTR *pDisplayString)
{
*pDisplayString = SysAllocString(L"Hello World");
return *pDisplayString == nullptr ? E_OUTOFMEMORY : S_OK;
}
};
// Add the implementation as a concept
ComPtr<MyStringConversion> spStringConverter = Microsoft::WRL::Make<MyStringConversion>();
if (spStringConverter != nullptr)
{
if (SUCCEEDED(spObject->SetConcept(__uuidof(IStringDisplayableConcept),
static_cast<IStringDisplayableConcept *>
(spStringConverter.Get()), nullptr)))
{
// The new object can be converted to a string!
}
}
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |