Поделиться через


Метод ID2D1EffectImpl::Initialize (d2d1effectauthor.h)

Эффект может использовать этот метод для выполнения однократных задач инициализации. Если этот метод не требуется, метод может просто вернуть S_OK.

Синтаксис

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

Параметры

[in] effectContext

Тип: ID2D1EffectContext*

Внутренний контекстный интерфейс, который создает и возвращает типы эффектов, ориентированные на авторов.

[in] transformGraph

Тип: ID2D1TransformGraph*

Эффект может заполнить граф преобразования топологией и обновить его позже.

Возвращаемое значение

Тип: HRESULT

Если метод завершается успешно, он возвращает S_OK. В случае сбоя возвращается код ошибки HRESULT .

Комментарии

Это перемещает затраты на создание ресурсов в вызов CreateEffect , а не во время отрисовки.

Если реализация завершается сбоем этого вызова, соответствующий вызов ID2D1DeviceContext::CreateEffect также завершается ошибкой.

В следующем примере показан эффект, реализующий метод инициализации.

Примеры

В этом примере показан эффект, реализующий метод инициализации.

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;
};

Требования

Требование Значение
Минимальная версия клиента Windows 8 и обновление платформы для Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 и обновление платформы для Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d2d1effectauthor.h
Библиотека D2D1.lib

См. также раздел

ID2D1DeviceContext

ID2D1EffectImpl