Partager via


ID2D1EffectImpl ::Initialize, méthode (d2d1effectauthor.h)

L’effet peut utiliser cette méthode pour effectuer des tâches d’initialisation ponctuelles. Si cette méthode n’est pas nécessaire, la méthode peut simplement retourner S_OK.

Syntaxe

HRESULT Initialize(
  [in] ID2D1EffectContext  *effectContext,
  [in] ID2D1TransformGraph *transformGraph
);

Paramètres

[in] effectContext

Type : ID2D1EffectContext*

Interface de contexte interne qui crée et retourne des types centrés sur l’auteur d’effet.

[in] transformGraph

Type : ID2D1TransformGraph*

L’effet peut remplir le graphe de transformation avec une topologie et peut le mettre à jour ultérieurement.

Valeur retournée

Type : HRESULT

Si la méthode réussit, elle retourne S_OK. En cas d’échec, il retourne un code d’erreur HRESULT .

Remarques

Cela déplace le coût de création des ressources vers l’appel CreateEffect , plutôt que pendant le rendu.

Si l’implémentation échoue à cet appel, l’appel ID2D1DeviceContext ::CreateEffect correspondant échoue également.

L’exemple suivant montre un effet implémentant une méthode initialize.

Exemples

L’exemple ci-dessous montre un effet implémentant une méthode initialize.

class CEffectImplementation : public ID2D1EffectImpl
{
public:

    virtual ~CEffectImplementation()
    {
        if (_pContextInternal != NULL)
        {
            _pContextInternal->Release();
        }
    }

    IFACEMETHODIMP Initialize(__in ID2D1DeviceContextInternal *pContextInternal, __in ID2D1TransformGraph *pTransformGraph)
    {
        HRESULT hr = S_OK;

        _pContextInternal = pContextInternal;
        _pContextInternal->AddRef();

								_pTransformGraph = pTransformGraph;
        _pTransformGraph>AddRef();

								// Populate the transform graph.					    

        return S_OK;
    }

private:

    ID2D1EffectContext *_pContextInternal;
    ID2D1TransformGraph *_pTransformGraph;
};

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d2d1effectauthor.h
Bibliothèque D2D1.lib

Voir aussi

ID2D1DeviceContext

ID2D1EffectImpl