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 调用也会失败。
以下示例演示了实现 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;
};
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用] |
最低受支持的服务器 | 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | d2d1effectauthor.h |
Library | D2D1.lib |