10 #endif // #ifdef _MSC_VER 12 #ifndef _D2D1_EFFECT_AUTHOR_H_ 13 #define _D2D1_EFFECT_AUTHOR_H_ 17 #endif // #ifndef _D2D1_1_H_ 24 _In_ IUnknown *effect,
33 _In_
const IUnknown *effect,
36 _Out_opt_
UINT32 *actualSize
39 #ifndef D2D_USE_C_DEFINITIONS 306 #define D2D1_APPEND_ALIGNED_ELEMENT ( 0xffffffff ) 419 #ifndef D2D_USE_C_DEFINITIONS 429 _Outptr_result_bytebuffer_(bufferSize) BYTE **
data,
445 _In_reads_opt_(dimensions)
CONST UINT32 *minimumExtents,
446 _In_reads_opt_(dimensions)
CONST UINT32 *maximimumExtents,
465 STDMETHOD(SetInputDescription)(
473 STDMETHOD(SetOutputBuffer)(
481 STDMETHOD_(
void, SetCached)(
490 STDMETHOD_(
void, SetInstructionCountHint)(
506 STDMETHOD(SetPixelShaderConstantBuffer)(
514 STDMETHOD(SetResourceTexture)(
522 STDMETHOD(SetVertexShaderConstantBuffer)(
530 STDMETHOD(SetPixelShader)(
531 _In_ REFGUID shaderId,
539 STDMETHOD(SetVertexProcessing)(
559 STDMETHOD(SetComputeShaderConstantBuffer)(
567 STDMETHOD(SetComputeShader)(
568 _In_ REFGUID shaderId
574 STDMETHOD(SetResourceTexture)(
590 STDMETHOD_(
UINT32, GetInputCount)(
604 STDMETHOD_(
UINT32, GetInputCount)(
611 STDMETHOD(SetSingleTransformNode)(
625 STDMETHOD(RemoveNode)(
633 STDMETHOD(SetOutputNode)(
640 STDMETHOD(ConnectNode)(
650 STDMETHOD(ConnectToEffectInput)(
651 UINT32 toEffectInputIndex,
659 STDMETHOD_(
void, Clear)(
665 STDMETHOD(SetPassthroughGraph)(
677 STDMETHOD(MapOutputRectToInputRects)(
679 _Out_writes_(inputRectsCount)
D2D1_RECT_L *inputRects,
683 STDMETHOD(MapInputRectsToOutputRect)(
691 STDMETHOD(MapInvalidRect)(
705 STDMETHOD(SetDrawInfo)(
718 STDMETHOD(SetComputeInfo)(
722 STDMETHOD(CalculateThreadgroups)(
738 STDMETHOD(ProcessAnalysisResults)(
739 _In_reads_(analysisDataCount)
CONST BYTE *analysisData,
752 STDMETHOD(SetRenderInfo)(
774 STDMETHOD(SetOutputBuffer)(
782 STDMETHOD_(
void, SetCached)(
794 STDMETHOD_(
void, SetDescription)(
798 STDMETHOD_(
void, GetDescription)(
810 STDMETHOD_(
void, SetExtendModeX)(
814 STDMETHOD_(
void, SetExtendModeY)(
833 STDMETHOD_(
void, SetOffset)(
848 STDMETHOD_(
void, SetOutputBounds)(
852 STDMETHOD_(
void, GetOutputBounds)(
869 STDMETHOD(Initialize)(
878 STDMETHOD(PrepareForRender)(
900 STDMETHOD_(
void, GetDpi)(
909 STDMETHOD(CreateEffect)(
910 _In_ REFCLSID effectId,
914 STDMETHOD(GetMaximumSupportedFeatureLevel)(
916 UINT32 featureLevelsCount,
923 STDMETHOD(CreateTransformNodeFromEffect)(
928 STDMETHOD(CreateBlendTransform)(
934 STDMETHOD(CreateBorderTransform)(
940 STDMETHOD(CreateOffsetTransform)(
945 STDMETHOD(CreateBoundsAdjustmentTransform)(
950 STDMETHOD(LoadPixelShader)(
952 _In_reads_(shaderBufferCount)
CONST BYTE *shaderBuffer,
956 STDMETHOD(LoadVertexShader)(
958 _In_reads_(shaderBufferCount)
CONST BYTE *shaderBuffer,
962 STDMETHOD(LoadComputeShader)(
964 _In_reads_(shaderBufferCount)
CONST BYTE *shaderBuffer,
968 STDMETHOD_(
BOOL, IsShaderLoaded)(
972 STDMETHOD(CreateResourceTexture)(
973 _In_opt_
CONST GUID *resourceId,
981 STDMETHOD(FindResourceTexture)(
982 _In_
CONST GUID *resourceId,
986 STDMETHOD(CreateVertexBuffer)(
988 _In_opt_
CONST GUID *resourceId,
993 STDMETHOD(FindVertexBuffer)(
994 _In_
CONST GUID *resourceId,
1004 STDMETHOD(CreateColorContext)(
1006 _In_reads_opt_(profileSize)
CONST BYTE *profile,
1011 STDMETHOD(CreateColorContextFromFilename)(
1012 _In_ PCWSTR filename,
1016 STDMETHOD(CreateColorContextFromWicColorContext)(
1021 STDMETHOD(CheckFeatureSupport)(
1023 _Out_writes_bytes_(featureSupportDataSize)
void *featureSupportData,
1024 UINT32 featureSupportDataSize
1030 STDMETHOD_(
BOOL, IsBufferPrecisionSupported)(
1040 #ifdef D2D_USE_C_DEFINITIONS 1084 #endif // #ifndef _D2D1_EFFECT_AUTHOR_H_ EXTERN_C CONST IID IID_ID2D1DrawInfo
Definition: d2d1effectauthor.h:401
Definition: d2d1effectauthor.h:210
#define DX_DECLARE_INTERFACE(x)
Definition: dcommon.h:17
D2D1_VERTEX_USAGE
Describes how a vertex buffer is to be managed.
Definition: d2d1effectauthor.h:147
Definition: d2d1effectauthor.h:137
Definition: d2d1effectauthor.h:229
Definition: d2d1effectauthor.h:230
BOOL computeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x
Definition: d2d1effectauthor.h:393
Defines a property binding to a function. The name must match the property defined in the registratio...
Definition: d2d1effectauthor.h:252
UINT32 semanticIndex
Definition: d2d1effectauthor.h:294
Indicates that the output rectangle does not need to be cleared before drawing custom vertices....
Definition: d2d1effectauthor.h:125
UINT32 inputSlot
Definition: d2d1effectauthor.h:296
D3D_FEATURE_LEVEL
Definition: d3dcommon.h:79
EXTERN_C CONST IID IID_ID2D1OffsetTransform
Definition: d2d1effectauthor.h:413
Definition: d2d1effectauthor.h:226
D2D1_BLEND_OPERATION
Describes a particular blend in the D2D1_BLEND_DESCRIPTION structure.
Definition: d2d1effectauthor.h:167
GLuint buffer
Definition: glext.h:6555
Definition: glslang_tab.cpp:129
PCWSTR propertyName
The name of the property.
Definition: d2d1effectauthor.h:258
GLenum target
Definition: glext.h:7982
struct D2D1_BLEND_DESCRIPTION D2D1_BLEND_DESCRIPTION
Blend description which configures a blend transform object.
PD2D1_PROPERTY_SET_FUNCTION setFunction
The function that will receive the data to set.
Definition: d2d1effectauthor.h:263
Definition: d2d1effectauthor.h:189
Represents an x-coordinate and y-coordinate pair in two-dimensional space.
Definition: dcommon.h:165
Definition: d2d1effectauthor.h:227
EXTERN_C CONST IID IID_ID2D1EffectImpl
Definition: d2d1effectauthor.h:415
interface ID2D1ComputeTransform ID2D1ComputeTransform
Definition: d2d1effectauthor.h:1061
Definition: d2d1effectauthor.h:171
Definition: d2d1effectauthor.h:197
Definition: d2d1effectauthor.h:102
D2D_POINT_2L D2D1_POINT_2L
Definition: d2d1_1.h:58
interface ID2D1DrawInfo ID2D1DrawInfo
Definition: d2d1effectauthor.h:1049
GLfloat f
Definition: glext.h:8207
interface ID2D1BoundsAdjustmentTransform ID2D1BoundsAdjustmentTransform
Definition: d2d1effectauthor.h:1075
Definition: d2d1effectauthor.h:169
Definition: d2d1effectauthor.h:174
interface ID2D1AnalysisTransform ID2D1AnalysisTransform
Definition: d2d1effectauthor.h:1063
EXTERN_C CONST IID IID_ID2D1ResourceTexture
Definition: d2d1effectauthor.h:399
Definition: d2d1effectauthor.h:172
interface ID2D1SourceTransform ID2D1SourceTransform
Definition: d2d1effectauthor.h:1065
typedef HRESULT(WINAPI *PFN_D3D12_SERIALIZE_ROOT_SIGNATURE)(_In_ const D3D12_ROOT_SIGNATURE_DESC *pRootSignature
Default pixel processing.
Definition: d2d1effectauthor.h:94
D2D1_PIXEL_OPTIONS
Indicates options for drawing using a pixel shader.
Definition: d2d1effectauthor.h:88
UINT32 inputCount
Definition: d2d1effectauthor.h:315
D2D1_FEATURE
Defines capabilities of the underlying D3D device which may be queried using CheckFeatureSupport.
Definition: d2d1effectauthor.h:239
interface ID2D1OffsetTransform ID2D1OffsetTransform
Definition: d2d1effectauthor.h:1073
EXTERN_C CONST IID IID_ID2D1DrawTransform
Definition: d2d1effectauthor.h:406
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: glext.h:6303
const GLubyte * c
Definition: glext.h:9812
UINT32 alignedByteOffset
Definition: d2d1effectauthor.h:297
Definition: d2d1effectauthor.h:225
A new graph has been set due to a change in the input count.
Definition: d2d1effectauthor.h:77
DEFINE_ENUM_FLAG_OPERATORS(D2D1_CHANGE_TYPE)
EXTERN_C CONST IID IID_ID2D1ComputeInfo
Definition: d2d1effectauthor.h:402
D2D1_VERTEX_USAGE usage
Definition: d2d1effectauthor.h:316
Definition: d2d1effectauthor.h:222
interface ID2D1BorderTransform ID2D1BorderTransform
Definition: d2d1effectauthor.h:1071
Definition: d2d1effectauthor.h:193
Indicates that custom vertices do not form primitives which overlap one another.
Definition: d2d1effectauthor.h:136
struct D2D1_INPUT_ELEMENT_DESC D2D1_INPUT_ELEMENT_DESC
This defines a single element of the vertex layout.
Definition: d2d1effectauthor.h:209
Definition: d2d1effectauthor.h:190
UINT32 dimensions
Definition: d2d1effectauthor.h:279
Causes a depth buffer to be used while drawing custom vertices. This impacts drawing behavior when pr...
Definition: d2d1effectauthor.h:131
D2D1_COLOR_SPACE
Defines a color space.
Definition: d2d1_1.h:270
D2D1_BLEND destinationBlendAlpha
Definition: d2d1effectauthor.h:358
The vertex buffer is intended to be updated frequently.
Definition: d2d1effectauthor.h:158
struct D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS D2D1_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS
Indicates support for features which are optional on D3D10 feature levels. This may be populated usin...
UINT32 byteWidth
Definition: d2d1effectauthor.h:318
interface ID2D1VertexBuffer ID2D1VertexBuffer
Definition: d2d1effectauthor.h:1043
The vertex buffer content do not change frequently from frame to frame.
Definition: d2d1effectauthor.h:153
#define NULL
Pointer to 0.
Definition: gctypes.h:65
interface ID2D1Effect ID2D1Effect
Definition: d2d1_1.h:53
This defines the properties of a vertex buffer which uses the default vertex layout.
Definition: d2d1effectauthor.h:313
EXTERN_C CONST IID IID_ID2D1BlendTransform
Definition: d2d1effectauthor.h:411
Definition: d2d1effectauthor.h:184
Definition: d2d1effectauthor.h:228
DXGI_FORMAT
Definition: dxgiformat.h:10
interface ID2D1ComputeInfo ID2D1ComputeInfo
Definition: d2d1effectauthor.h:1051
The effect's properties have changed.
Definition: d2d1effectauthor.h:67
struct D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES
This defines the input layout of vertices and the vertex shader which processes them.
Definition: d2d1effectauthor.h:78
D2D1_BLEND sourceBlend
Definition: d2d1effectauthor.h:354
interface ID2D1BlendTransform ID2D1BlendTransform
Definition: d2d1effectauthor.h:1069
Indicates that the shader samples its inputs only at exactly the same scene coordinate as the output ...
Definition: d2d1effectauthor.h:101
interface ID2D1DrawTransform ID2D1DrawTransform
Definition: d2d1effectauthor.h:1059
D2D1_EXTEND_MODE
Enum which describes how to sample from a source outside its base tile.
Definition: d2d1.h:151
interface ID2D1ResourceTexture ID2D1ResourceTexture
Definition: d2d1effectauthor.h:1045
Indicates whether shader support for doubles is present on the underlying hardware....
Definition: d2d1effectauthor.h:380
struct D2D1_FEATURE_DATA_DOUBLES D2D1_FEATURE_DATA_DOUBLES
Indicates whether shader support for doubles is present on the underlying hardware....
Definition: d2d1effectauthor.h:242
EXTERN_C CONST IID IID_ID2D1EffectContext
Definition: d2d1effectauthor.h:416
Definition: d2d1effectauthor.h:173
D2D1_BLEND
Describes a particular blend in the D2D1_BLEND_DESCRIPTION structure.
Definition: d2d1effectauthor.h:182
EXTERN_C CONST IID IID_ID2D1RenderInfo
Definition: d2d1effectauthor.h:400
UINT32 vertexCount
Definition: d2d1effectauthor.h:344
interface ID2D1EffectImpl ID2D1EffectImpl
Definition: d2d1effectauthor.h:1077
UINT32 stride
Definition: d2d1effectauthor.h:333
D2D1_FILTER
Represents filtering modes transforms may select to use on their input textures.
Definition: d2d1effectauthor.h:219
Definition: d2d1effectauthor.h:186
D2D1_FILTER filter
Definition: d2d1effectauthor.h:282
interface ID2D1TransformNode ID2D1TransformNode
Definition: d2d1effectauthor.h:47
Definition: d2d1effectauthor.h:221
EXTERN_C CONST IID IID_ID2D1AnalysisTransform
Definition: d2d1effectauthor.h:408
description
Definition: setup.py:7
Definition: d2d1effectauthor.h:185
struct D2D1_INPUT_DESCRIPTION D2D1_INPUT_DESCRIPTION
Describes options transforms may select to use on their input textures.
D2D1_BUFFER_PRECISION
This specifies the precision that should be used in buffers allocated by D2D.
Definition: d2d1_1.h:193
EXTERN_C CONST IID IID_ID2D1VertexBuffer
Definition: d2d1effectauthor.h:398
D2D1_BLEND_OPERATION blendOperationAlpha
Definition: d2d1effectauthor.h:359
_Field_size_(dimensions) CONST UINT32 *extents
GLenum GLsizei dataSize
Definition: glext.h:12030
EXTERN_C CONST IID IID_ID2D1ConcreteTransform
Definition: d2d1effectauthor.h:410
interface ID2D1ConcreteTransform ID2D1ConcreteTransform
Definition: d2d1effectauthor.h:1067
interface ID2D1Transform ID2D1Transform
Definition: d2d1effectauthor.h:1057
FLOAT blendFactor[4]
Definition: d2d1effectauthor.h:360
DXGI_FORMAT format
Definition: d2d1effectauthor.h:295
interface ID2D1ColorContext ID2D1ColorContext
Definition: d2d1_1.h:31
Definition: d2d1effectauthor.h:241
This defines the range of vertices from a vertex buffer to draw.
Definition: d2d1effectauthor.h:341
D2D1_VERTEX_OPTIONS
Indicates options for drawing custom vertices set by transforms.
Definition: d2d1effectauthor.h:112
D2D1_CHANGE_TYPE
Indicates what has changed since the last time the effect was asked to prepare to render.
Definition: d2d1effectauthor.h:56
D2D1_BLEND sourceBlendAlpha
Definition: d2d1effectauthor.h:357
Definition: d2d1effectauthor.h:211
unsigned int BOOL
Definition: gctypes.h:51
Definition: d2d1effectauthor.h:194
This defines a single element of the vertex layout.
Definition: d2d1effectauthor.h:291
Definition: d2d1effectauthor.h:192
struct D2D1_PROPERTY_BINDING D2D1_PROPERTY_BINDING
Defines a property binding to a function. The name must match the property defined in the registratio...
uint32_t UINT32
Definition: coretypes.h:10
Definition: d2d1effectauthor.h:191
D2D1_CHANNEL_DEPTH channelDepth
Definition: d2d1effectauthor.h:281
EXTERN_C CONST IID IID_ID2D1BorderTransform
Definition: d2d1effectauthor.h:412
EXTERN_C CONST IID IID_ID2D1SourceTransform
Definition: d2d1effectauthor.h:409
interface IWICColorContext IWICColorContext
Definition: d2d1_1.h:32
D2D1_BLEND destinationBlend
Definition: d2d1effectauthor.h:355
_Field_size_opt_(elementCount) CONST D2D1_INPUT_ELEMENT_DESC *inputElements
_Field_size_(shaderBufferSize) CONST BYTE *shaderBufferWithInputSignature
Default vertex processing.
Definition: d2d1effectauthor.h:118
PD2D1_PROPERTY_GET_FUNCTION getFunction
The function that will be asked to write the output data.
Definition: d2d1effectauthor.h:268
Definition: d2d1effectauthor.h:208
Definition: d2d1effectauthor.h:187
D2D1_BUFFER_PRECISION bufferPrecision
Definition: d2d1effectauthor.h:280
EXTERN_C CONST IID IID_ID2D1ComputeTransform
Definition: d2d1effectauthor.h:407
Describes options transforms may select to use on their input textures.
Definition: d2d1effectauthor.h:368
D2D1_CHANNEL_DEPTH
Allows a caller to control the channel depth of a stage in the rendering pipeline.
Definition: d2d1effectauthor.h:206
GLuint GLenum GLenum transform
Definition: glext.h:10314
Definition: d2d1effectauthor.h:196
Nothing has changed.
Definition: d2d1effectauthor.h:62
EXTERN_C CONST IID IID_ID2D1BoundsAdjustmentTransform
Definition: d2d1effectauthor.h:414
This defines the input layout of vertices and the vertex shader which processes them.
Definition: d2d1effectauthor.h:327
Definition: glslang_tab.cpp:133
interface ID2D1EffectContext ID2D1EffectContext
Definition: d2d1effectauthor.h:46
GLsizei const GLuint const GLintptr const GLsizei * strides
Definition: glsym_gl.h:638
This is used to define a resource texture when that resource texture is created.
Definition: d2d1effectauthor.h:276
Definition: d2d1effectauthor.h:223
EXTERN_C CONST IID IID_ID2D1Transform
Definition: d2d1effectauthor.h:405
Definition: d2d1effectauthor.h:224
BOOL doublePrecisionFloatShaderOps
Definition: d2d1effectauthor.h:382
UINT32 startVertex
Definition: d2d1effectauthor.h:343
Definition: video4linux2.c:51
UINT32 levelOfDetailCount
Definition: d2d1effectauthor.h:371
interface ID2D1TransformGraph ID2D1TransformGraph
Definition: d2d1effectauthor.h:1055
GLintptr offset
Definition: glext.h:6560
Definition: d2d1effectauthor.h:159
struct D2D1_VERTEX_RANGE D2D1_VERTEX_RANGE
This defines the range of vertices from a vertex buffer to draw.
Definition: d2d1effectauthor.h:188
EXTERN_C CONST IID IID_ID2D1TransformGraph
Definition: d2d1effectauthor.h:404
struct D2D1_VERTEX_BUFFER_PROPERTIES D2D1_VERTEX_BUFFER_PROPERTIES
This defines the properties of a vertex buffer which uses the default vertex layout.
Definition: civetweb.c:1321
D2D1_BLEND_OPERATION blendOperation
Definition: d2d1effectauthor.h:356
Indicates support for features which are optional on D3D10 feature levels. This may be populated usin...
Definition: d2d1effectauthor.h:391
PCSTR semanticName
Definition: d2d1effectauthor.h:293
D2D1_FILTER filter
Definition: d2d1effectauthor.h:370
Definition: d2d1effectauthor.h:195
D2D_RECT_L D2D1_RECT_L
Definition: d2d1_1.h:57
UINT32 elementCount
Definition: d2d1effectauthor.h:332
The internal context has changed and should be inspected.
Definition: d2d1effectauthor.h:72
Blend description which configures a blend transform object.
Definition: d2d1effectauthor.h:352
interface ID2D1Bitmap1 ID2D1Bitmap1
Definition: d2d1_1.h:2424
EXTERN_C CONST IID IID_ID2D1TransformNode
Definition: d2d1effectauthor.h:403
HRESULT(CALLBACK * PD2D1_PROPERTY_GET_FUNCTION)(_In_ const IUnknown *effect, _Out_writes_opt_(dataSize) BYTE *data, UINT32 dataSize, _Out_opt_ UINT32 *actualSize)
Function pointer that gets a property from an effect.
Definition: d2d1effectauthor.h:32
struct D2D1_RESOURCE_TEXTURE_PROPERTIES D2D1_RESOURCE_TEXTURE_PROPERTIES
This is used to define a resource texture when that resource texture is created.
_Field_size_opt_(byteWidth) CONST BYTE *data
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6844
Definition: d2d1effectauthor.h:243
HRESULT(CALLBACK * PD2D1_PROPERTY_SET_FUNCTION)(_In_ IUnknown *effect, _In_reads_(dataSize) const BYTE *data, UINT32 dataSize)
Function pointer that sets a property on an effect.
Definition: d2d1effectauthor.h:23
Definition: d2d1effectauthor.h:170
UINT32 shaderBufferSize
Definition: d2d1effectauthor.h:330
interface ID2D1RenderInfo ID2D1RenderInfo
Definition: d2d1effectauthor.h:1047