Metodo ID2D1EffectImpl::Initialize (d2d1effectauthor.h)
L'effetto può usare questo metodo per eseguire una sola volta le attività di inizializzazione. Se questo metodo non è necessario, il metodo può restituire solo S_OK.
Sintassi
HRESULT Initialize(
[in] ID2D1EffectContext *effectContext,
[in] ID2D1TransformGraph *transformGraph
);
Parametri
[in] effectContext
Tipo: ID2D1EffectContext*
Interfaccia di contesto interna che crea e restituisce tipi incentrati sugli effetti.
[in] transformGraph
Tipo: ID2D1TransformGraph*
L'effetto può popolare il grafico di trasformazione con una topologia e può aggiornarlo in un secondo momento.
Valore restituito
Tipo: HRESULT
Se il metodo ha esito positivo, restituisce S_OK. Se ha esito negativo, restituisce un codice di errore HRESULT .
Commenti
In questo modo il costo di creazione delle risorse viene spostato sulla chiamata CreateEffect anziché durante il rendering.
Se l'implementazione non riesce, anche la chiamata ID2D1DeviceContext::CreateEffect corrispondente ha esito negativo.
Nell'esempio seguente viene illustrato un effetto che implementa un metodo initialize.
Esempio
L'esempio seguente mostra un effetto che implementa un metodo 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;
};
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 e aggiornamento della piattaforma per Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2012 e aggiornamento della piattaforma per Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | d2d1effectauthor.h |
Libreria | D2D1.lib |