Метод 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 |