Partager via


IModelObject ::GetConcept, méthode (dbgmodel.h)

La méthode GetConcept recherche un concept sur l’objet (ou sa chaîne de modèle parente) et retourne un pointeur d’interface vers l’interface conceptuelle. Le comportement et les méthodes d’une interface conceptuelle sont spécifiques à chaque concept. Il est important de noter, toutefois, que de nombreuses interfaces conceptuelles nécessitent que l’appelant passe explicitement l’objet de contexte (ou ce que l’on pourrait traditionnellement appeler ce pointeur). Il est important de s’assurer que l’objet de contexte correct est passé à chaque interface conceptuelle.

Syntaxe

HRESULT GetConcept(
  REFIID    conceptId,
  IUnknown  **conceptInterface,
  IKeyStore **conceptMetadata
);

Paramètres

conceptId

Identificateur unique du concept interrogé. Il s’agit également de l’IID de l’interface principale du concept.

conceptInterface

L’interface définie par conceptId sera retournée dans cet argument.

conceptMetadata

Le magasin de métadonnées associé à ce concept sera éventuellement retourné dans cet argument.

Valeur retournée

Cette méthode retourne HRESULT qui indique la réussite ou l’échec.

Remarques

Exemple de code

ComPtr<IModelObject> spObject; /* get some object */

// Get the string conversion of spObject through the string displayable concept:
ComPtr<IStringDisplayableConcept> spStringDisplayable;
if (SUCCEEDED(spObject->GetConcept(__uuidof(IStringDisplayableConcept), 
                                   &spStringDisplayable, 
                                   nullptr)))
{
    BSTR stringConversion;
    if (SUCCEEDED(spStringDisplayable->ToDisplayString(spObject.Get(), 
                                                       nullptr, 
                                                       &stringConversion)))
    {
        // stringConversion contains the display string conversion for the object
        SysFreeString(stringConversion);
    }
}

Configuration requise

Condition requise Valeur
En-tête dbgmodel.h

Voir aussi

Interface IModelObject