RetroArch
Classes | Macros | Typedefs | Enumerations | Functions | Variables
d2d1_1.h File Reference
#include <d2d1.h>
#include <d2d1effects.h>
#include <dxgi.h>
#include <d2d1_1helper.h>
Include dependency graph for d2d1_1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  D2D1_BITMAP_PROPERTIES1
 Extended bitmap properties. More...
 
struct  D2D1_MAPPED_RECT
 Describes mapped memory from the ID2D1Bitmap1::Map API. More...
 
struct  D2D1_RENDERING_CONTROLS
 This controls advanced settings of the Direct2D imaging pipeline. More...
 
struct  D2D1_EFFECT_INPUT_DESCRIPTION
 This identifies a certain input connection of a certain effect. More...
 
struct  D2D1_POINT_DESCRIPTION
 Describes a point along a path. More...
 
struct  D2D1_IMAGE_BRUSH_PROPERTIES
 Creation properties for an image brush. More...
 
struct  D2D1_BITMAP_BRUSH_PROPERTIES1
 Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush. More...
 
struct  D2D1_STROKE_STYLE_PROPERTIES1
 This defines how geometries should be drawn and widened. More...
 
struct  D2D1_LAYER_PARAMETERS1
 All parameters related to pushing a layer. More...
 
struct  D2D1_DRAWING_STATE_DESCRIPTION1
 This describes the drawing state. More...
 
struct  D2D1_PRINT_CONTROL_PROPERTIES
 The creation properties for a ID2D1PrintControl object. More...
 
struct  D2D1_CREATION_PROPERTIES
 This specifies the options while simultaneously creating the device, factory, and device context. More...
 

Macros

#define _D2D1_1_H_
 
#define D2D1_INVALID_PROPERTY_INDEX   UINT_MAX
 

Typedefs

typedef interface ID2D1ColorContext ID2D1ColorContext
 
typedef interface IWICColorContext IWICColorContext
 
typedef interface IWICImagingFactory IWICImagingFactory
 
typedef interface IPrintDocumentPackageTarget IPrintDocumentPackageTarget
 
typedef interface IDWriteFactory IDWriteFactory
 
typedef struct DWRITE_GLYPH_RUN_DESCRIPTION DWRITE_GLYPH_RUN_DESCRIPTION
 
typedef struct D2D1_PROPERTY_BINDING D2D1_PROPERTY_BINDING
 
typedef HRESULT(CALLBACK * PD2D1_EFFECT_FACTORY) (_Outptr_ IUnknown **effectImpl)
 Function pointer to construct a new effect once registered. More...
 
typedef interface ID2D1Device ID2D1Device
 
typedef interface ID2D1Effect ID2D1Effect
 
typedef D2D_RECT_L D2D1_RECT_L
 
typedef D2D_POINT_2L D2D1_POINT_2L
 
typedef enum D2D1_PROPERTY_TYPE D2D1_PROPERTY_TYPE
 This defines the valid property types that can be used in an effect property interface. More...
 
typedef enum D2D1_PROPERTY D2D1_PROPERTY
 This defines the list of system properties present on the root effect property interface. More...
 
typedef enum D2D1_SUBPROPERTY D2D1_SUBPROPERTY
 This defines the indices of sub-properties that may be present on any parent property. More...
 
typedef enum D2D1_BITMAP_OPTIONS D2D1_BITMAP_OPTIONS
 Specifies how the bitmap can be used. More...
 
typedef enum D2D1_COMPOSITE_MODE D2D1_COMPOSITE_MODE
 Specifies the composite mode that will be applied. More...
 
typedef enum D2D1_BUFFER_PRECISION D2D1_BUFFER_PRECISION
 This specifies the precision that should be used in buffers allocated by D2D. More...
 
typedef enum D2D1_MAP_OPTIONS D2D1_MAP_OPTIONS
 This describes how the individual mapping operation should be performed. More...
 
typedef enum D2D1_INTERPOLATION_MODE D2D1_INTERPOLATION_MODE
 This is used to specify the quality of image scaling with ID2D1DeviceContext::DrawImage and with the 2D Affine Transform Effect. More...
 
typedef enum D2D1_UNIT_MODE D2D1_UNIT_MODE
 This specifies what units should be accepted by the D2D API. More...
 
typedef enum D2D1_COLOR_SPACE D2D1_COLOR_SPACE
 Defines a color space. More...
 
typedef enum D2D1_DEVICE_CONTEXT_OPTIONS D2D1_DEVICE_CONTEXT_OPTIONS
 This specifies options that apply to the device context for its lifetime. More...
 
typedef enum D2D1_STROKE_TRANSFORM_TYPE D2D1_STROKE_TRANSFORM_TYPE
 Defines how the world transform, dots per inch (dpi), and stroke width affect the shape of the pen used to stroke a primitive. More...
 
typedef enum D2D1_PRIMITIVE_BLEND D2D1_PRIMITIVE_BLEND
 A blend mode that applies to all primitives drawn on the context. More...
 
typedef enum D2D1_THREADING_MODE D2D1_THREADING_MODE
 This specifies the threading mode used while simultaneously creating the device, factory, and device context. More...
 
typedef enum D2D1_COLOR_INTERPOLATION_MODE D2D1_COLOR_INTERPOLATION_MODE
 This specifies how colors are interpolated. More...
 
typedef D2D_VECTOR_2F D2D1_VECTOR_2F
 
typedef D2D_VECTOR_3F D2D1_VECTOR_3F
 
typedef D2D_VECTOR_4F D2D1_VECTOR_4F
 
typedef struct D2D1_BITMAP_PROPERTIES1 D2D1_BITMAP_PROPERTIES1
 Extended bitmap properties. More...
 
typedef struct D2D1_MAPPED_RECT D2D1_MAPPED_RECT
 Describes mapped memory from the ID2D1Bitmap1::Map API. More...
 
typedef struct D2D1_RENDERING_CONTROLS D2D1_RENDERING_CONTROLS
 This controls advanced settings of the Direct2D imaging pipeline. More...
 
typedef struct D2D1_EFFECT_INPUT_DESCRIPTION D2D1_EFFECT_INPUT_DESCRIPTION
 This identifies a certain input connection of a certain effect. More...
 
typedef D2D_MATRIX_4X3_F D2D1_MATRIX_4X3_F
 
typedef D2D_MATRIX_4X4_F D2D1_MATRIX_4X4_F
 
typedef D2D_MATRIX_5X4_F D2D1_MATRIX_5X4_F
 
typedef struct D2D1_POINT_DESCRIPTION D2D1_POINT_DESCRIPTION
 Describes a point along a path. More...
 
typedef struct D2D1_IMAGE_BRUSH_PROPERTIES D2D1_IMAGE_BRUSH_PROPERTIES
 Creation properties for an image brush. More...
 
typedef struct D2D1_BITMAP_BRUSH_PROPERTIES1 D2D1_BITMAP_BRUSH_PROPERTIES1
 Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush. More...
 
typedef struct D2D1_STROKE_STYLE_PROPERTIES1 D2D1_STROKE_STYLE_PROPERTIES1
 This defines how geometries should be drawn and widened. More...
 
typedef enum D2D1_LAYER_OPTIONS1 D2D1_LAYER_OPTIONS1
 Specifies how the layer contents should be prepared. More...
 
typedef struct D2D1_LAYER_PARAMETERS1 D2D1_LAYER_PARAMETERS1
 All parameters related to pushing a layer. More...
 
typedef enum D2D1_PRINT_FONT_SUBSET_MODE D2D1_PRINT_FONT_SUBSET_MODE
 Defines when font resources should be subset during printing. More...
 
typedef struct D2D1_DRAWING_STATE_DESCRIPTION1 D2D1_DRAWING_STATE_DESCRIPTION1
 This describes the drawing state. More...
 
typedef struct D2D1_PRINT_CONTROL_PROPERTIES D2D1_PRINT_CONTROL_PROPERTIES
 The creation properties for a ID2D1PrintControl object. More...
 
typedef struct D2D1_CREATION_PROPERTIES D2D1_CREATION_PROPERTIES
 This specifies the options while simultaneously creating the device, factory, and device context. More...
 
typedef interface ID2D1GdiMetafileSink ID2D1GdiMetafileSink
 
typedef interface ID2D1GdiMetafile ID2D1GdiMetafile
 
typedef interface ID2D1CommandSink ID2D1CommandSink
 
typedef interface ID2D1CommandList ID2D1CommandList
 
typedef interface ID2D1PrintControl ID2D1PrintControl
 
typedef interface ID2D1ImageBrush ID2D1ImageBrush
 
typedef interface ID2D1BitmapBrush1 ID2D1BitmapBrush1
 
typedef interface ID2D1StrokeStyle1 ID2D1StrokeStyle1
 
typedef interface ID2D1PathGeometry1 ID2D1PathGeometry1
 
typedef interface ID2D1Properties ID2D1Properties
 
typedef interface ID2D1Bitmap1 ID2D1Bitmap1
 
typedef interface ID2D1GradientStopCollection1 ID2D1GradientStopCollection1
 
typedef interface ID2D1DrawingStateBlock1 ID2D1DrawingStateBlock1
 
typedef interface ID2D1DeviceContext ID2D1DeviceContext
 
typedef interface ID2D1Factory1 ID2D1Factory1
 
typedef interface ID2D1Multithread ID2D1Multithread
 

Enumerations

enum  D2D1_PROPERTY_TYPE {
  D2D1_PROPERTY_TYPE_UNKNOWN = 0, D2D1_PROPERTY_TYPE_STRING = 1, D2D1_PROPERTY_TYPE_BOOL = 2, D2D1_PROPERTY_TYPE_UINT32 = 3,
  D2D1_PROPERTY_TYPE_INT32 = 4, D2D1_PROPERTY_TYPE_FLOAT = 5, D2D1_PROPERTY_TYPE_VECTOR2 = 6, D2D1_PROPERTY_TYPE_VECTOR3 = 7,
  D2D1_PROPERTY_TYPE_VECTOR4 = 8, D2D1_PROPERTY_TYPE_BLOB = 9, D2D1_PROPERTY_TYPE_IUNKNOWN = 10, D2D1_PROPERTY_TYPE_ENUM = 11,
  D2D1_PROPERTY_TYPE_ARRAY = 12, D2D1_PROPERTY_TYPE_CLSID = 13, D2D1_PROPERTY_TYPE_MATRIX_3X2 = 14, D2D1_PROPERTY_TYPE_MATRIX_4X3 = 15,
  D2D1_PROPERTY_TYPE_MATRIX_4X4 = 16, D2D1_PROPERTY_TYPE_MATRIX_5X4 = 17, D2D1_PROPERTY_TYPE_COLOR_CONTEXT = 18, D2D1_PROPERTY_TYPE_FORCE_DWORD = 0xffffffff
}
 This defines the valid property types that can be used in an effect property interface. More...
 
enum  D2D1_PROPERTY {
  D2D1_PROPERTY_CLSID = 0x80000000, D2D1_PROPERTY_DISPLAYNAME = 0x80000001, D2D1_PROPERTY_AUTHOR = 0x80000002, D2D1_PROPERTY_CATEGORY = 0x80000003,
  D2D1_PROPERTY_DESCRIPTION = 0x80000004, D2D1_PROPERTY_INPUTS = 0x80000005, D2D1_PROPERTY_CACHED = 0x80000006, D2D1_PROPERTY_PRECISION = 0x80000007,
  D2D1_PROPERTY_MIN_INPUTS = 0x80000008, D2D1_PROPERTY_MAX_INPUTS = 0x80000009, D2D1_PROPERTY_FORCE_DWORD = 0xffffffff
}
 This defines the list of system properties present on the root effect property interface. More...
 
enum  D2D1_SUBPROPERTY {
  D2D1_SUBPROPERTY_DISPLAYNAME = 0x80000000, D2D1_SUBPROPERTY_ISREADONLY = 0x80000001, D2D1_SUBPROPERTY_MIN = 0x80000002, D2D1_SUBPROPERTY_MAX = 0x80000003,
  D2D1_SUBPROPERTY_DEFAULT = 0x80000004, D2D1_SUBPROPERTY_FIELDS = 0x80000005, D2D1_SUBPROPERTY_INDEX = 0x80000006, D2D1_SUBPROPERTY_FORCE_DWORD = 0xffffffff
}
 This defines the indices of sub-properties that may be present on any parent property. More...
 
enum  D2D1_BITMAP_OPTIONS {
  D2D1_BITMAP_OPTIONS_NONE = 0x00000000, D2D1_BITMAP_OPTIONS_TARGET = 0x00000001, D2D1_BITMAP_OPTIONS_CANNOT_DRAW = 0x00000002, D2D1_BITMAP_OPTIONS_CPU_READ = 0x00000004,
  D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE = 0x00000008, D2D1_BITMAP_OPTIONS_FORCE_DWORD = 0xffffffff
}
 Specifies how the bitmap can be used. More...
 
enum  D2D1_COMPOSITE_MODE {
  D2D1_COMPOSITE_MODE_SOURCE_OVER = 0, D2D1_COMPOSITE_MODE_DESTINATION_OVER = 1, D2D1_COMPOSITE_MODE_SOURCE_IN = 2, D2D1_COMPOSITE_MODE_DESTINATION_IN = 3,
  D2D1_COMPOSITE_MODE_SOURCE_OUT = 4, D2D1_COMPOSITE_MODE_DESTINATION_OUT = 5, D2D1_COMPOSITE_MODE_SOURCE_ATOP = 6, D2D1_COMPOSITE_MODE_DESTINATION_ATOP = 7,
  D2D1_COMPOSITE_MODE_XOR = 8, D2D1_COMPOSITE_MODE_PLUS = 9, D2D1_COMPOSITE_MODE_SOURCE_COPY = 10, D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY = 11,
  D2D1_COMPOSITE_MODE_MASK_INVERT = 12, D2D1_COMPOSITE_MODE_FORCE_DWORD = 0xffffffff
}
 Specifies the composite mode that will be applied. More...
 
enum  D2D1_BUFFER_PRECISION {
  D2D1_BUFFER_PRECISION_UNKNOWN = 0, D2D1_BUFFER_PRECISION_8BPC_UNORM = 1, D2D1_BUFFER_PRECISION_8BPC_UNORM_SRGB = 2, D2D1_BUFFER_PRECISION_16BPC_UNORM = 3,
  D2D1_BUFFER_PRECISION_16BPC_FLOAT = 4, D2D1_BUFFER_PRECISION_32BPC_FLOAT = 5, D2D1_BUFFER_PRECISION_FORCE_DWORD = 0xffffffff
}
 This specifies the precision that should be used in buffers allocated by D2D. More...
 
enum  D2D1_MAP_OPTIONS {
  D2D1_MAP_OPTIONS_NONE = 0, D2D1_MAP_OPTIONS_READ = 1, D2D1_MAP_OPTIONS_WRITE = 2, D2D1_MAP_OPTIONS_DISCARD = 4,
  D2D1_MAP_OPTIONS_FORCE_DWORD = 0xffffffff
}
 This describes how the individual mapping operation should be performed. More...
 
enum  D2D1_INTERPOLATION_MODE {
  D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, D2D1_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, D2D1_INTERPOLATION_MODE_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC, D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR,
  D2D1_INTERPOLATION_MODE_ANISOTROPIC = D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC, D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC, D2D1_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff
}
 This is used to specify the quality of image scaling with ID2D1DeviceContext::DrawImage and with the 2D Affine Transform Effect. More...
 
enum  D2D1_UNIT_MODE { D2D1_UNIT_MODE_DIPS = 0, D2D1_UNIT_MODE_PIXELS = 1, D2D1_UNIT_MODE_FORCE_DWORD = 0xffffffff }
 This specifies what units should be accepted by the D2D API. More...
 
enum  D2D1_COLOR_SPACE { D2D1_COLOR_SPACE_CUSTOM = 0, D2D1_COLOR_SPACE_SRGB = 1, D2D1_COLOR_SPACE_SCRGB = 2, D2D1_COLOR_SPACE_FORCE_DWORD = 0xffffffff }
 Defines a color space. More...
 
enum  D2D1_DEVICE_CONTEXT_OPTIONS { D2D1_DEVICE_CONTEXT_OPTIONS_NONE = 0, D2D1_DEVICE_CONTEXT_OPTIONS_ENABLE_MULTITHREADED_OPTIMIZATIONS = 1, D2D1_DEVICE_CONTEXT_OPTIONS_FORCE_DWORD = 0xffffffff }
 This specifies options that apply to the device context for its lifetime. More...
 
enum  D2D1_STROKE_TRANSFORM_TYPE { D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0, D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1, D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2, D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD = 0xffffffff }
 Defines how the world transform, dots per inch (dpi), and stroke width affect the shape of the pen used to stroke a primitive. More...
 
enum  D2D1_PRIMITIVE_BLEND {
  D2D1_PRIMITIVE_BLEND_SOURCE_OVER = 0, D2D1_PRIMITIVE_BLEND_COPY = 1, D2D1_PRIMITIVE_BLEND_MIN = 2, D2D1_PRIMITIVE_BLEND_ADD = 3,
  D2D1_PRIMITIVE_BLEND_MAX = 4, D2D1_PRIMITIVE_BLEND_FORCE_DWORD = 0xffffffff
}
 A blend mode that applies to all primitives drawn on the context. More...
 
enum  D2D1_THREADING_MODE { D2D1_THREADING_MODE_SINGLE_THREADED = D2D1_FACTORY_TYPE_SINGLE_THREADED, D2D1_THREADING_MODE_MULTI_THREADED = D2D1_FACTORY_TYPE_MULTI_THREADED, D2D1_THREADING_MODE_FORCE_DWORD = 0xffffffff }
 This specifies the threading mode used while simultaneously creating the device, factory, and device context. More...
 
enum  D2D1_COLOR_INTERPOLATION_MODE { D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT = 0, D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED = 1, D2D1_COLOR_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff }
 This specifies how colors are interpolated. More...
 
enum  D2D1_LAYER_OPTIONS1 { D2D1_LAYER_OPTIONS1_NONE = 0, D2D1_LAYER_OPTIONS1_INITIALIZE_FROM_BACKGROUND = 1, D2D1_LAYER_OPTIONS1_IGNORE_ALPHA = 2, D2D1_LAYER_OPTIONS1_FORCE_DWORD = 0xffffffff }
 Specifies how the layer contents should be prepared. More...
 
enum  D2D1_PRINT_FONT_SUBSET_MODE { D2D1_PRINT_FONT_SUBSET_MODE_DEFAULT = 0, D2D1_PRINT_FONT_SUBSET_MODE_EACHPAGE = 1, D2D1_PRINT_FONT_SUBSET_MODE_NONE = 2, D2D1_PRINT_FONT_SUBSET_MODE_FORCE_DWORD = 0xffffffff }
 Defines when font resources should be subset during printing. More...
 

Functions

 DEFINE_ENUM_FLAG_OPERATORS (D2D1_BITMAP_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_MAP_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_DEVICE_CONTEXT_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_LAYER_OPTIONS1)
 
HRESULT WINAPI D2D1CreateDevice (_In_ IDXGIDevice *dxgiDevice, _In_opt_ CONST D2D1_CREATION_PROPERTIES *creationProperties, _Outptr_ ID2D1Device **d2dDevice)
 
HRESULT WINAPI D2D1CreateDeviceContext (_In_ IDXGISurface *dxgiSurface, _In_opt_ CONST D2D1_CREATION_PROPERTIES *creationProperties, _Outptr_ ID2D1DeviceContext **d2dDeviceContext)
 
D2D1_COLOR_F WINAPI D2D1ConvertColorSpace (D2D1_COLOR_SPACE sourceColorSpace, D2D1_COLOR_SPACE destinationColorSpace, _In_ CONST D2D1_COLOR_F *color)
 
void WINAPI D2D1SinCos (_In_ FLOAT angle, _Out_ FLOAT *s, _Out_ FLOAT *c)
 
FLOAT WINAPI D2D1Tan (_In_ FLOAT angle)
 
FLOAT WINAPI D2D1Vec3Length (_In_ FLOAT x, _In_ FLOAT y, _In_ FLOAT z)
 

Variables

EXTERN_C CONST IID IID_ID2D1GdiMetafileSink
 
EXTERN_C CONST IID IID_ID2D1GdiMetafile
 
EXTERN_C CONST IID IID_ID2D1CommandSink
 
EXTERN_C CONST IID IID_ID2D1CommandList
 
EXTERN_C CONST IID IID_ID2D1PrintControl
 
EXTERN_C CONST IID IID_ID2D1ImageBrush
 
EXTERN_C CONST IID IID_ID2D1BitmapBrush1
 
EXTERN_C CONST IID IID_ID2D1StrokeStyle1
 
EXTERN_C CONST IID IID_ID2D1PathGeometry1
 
EXTERN_C CONST IID IID_ID2D1Properties
 
EXTERN_C CONST IID IID_ID2D1Effect
 
EXTERN_C CONST IID IID_ID2D1Bitmap1
 
EXTERN_C CONST IID IID_ID2D1ColorContext
 
EXTERN_C CONST IID IID_ID2D1GradientStopCollection1
 
EXTERN_C CONST IID IID_ID2D1DrawingStateBlock1
 
EXTERN_C CONST IID IID_ID2D1DeviceContext
 
EXTERN_C CONST IID IID_ID2D1Device
 
EXTERN_C CONST IID IID_ID2D1Factory1
 
EXTERN_C CONST IID IID_ID2D1Multithread
 

Macro Definition Documentation

◆ _D2D1_1_H_

#define _D2D1_1_H_

◆ D2D1_INVALID_PROPERTY_INDEX

#define D2D1_INVALID_PROPERTY_INDEX   UINT_MAX

Typedef Documentation

◆ D2D1_BITMAP_BRUSH_PROPERTIES1

Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush.

◆ D2D1_BITMAP_OPTIONS

Specifies how the bitmap can be used.

◆ D2D1_BITMAP_PROPERTIES1

Extended bitmap properties.

◆ D2D1_BUFFER_PRECISION

This specifies the precision that should be used in buffers allocated by D2D.

◆ D2D1_COLOR_INTERPOLATION_MODE

This specifies how colors are interpolated.

◆ D2D1_COLOR_SPACE

Defines a color space.

◆ D2D1_COMPOSITE_MODE

Specifies the composite mode that will be applied.

◆ D2D1_CREATION_PROPERTIES

This specifies the options while simultaneously creating the device, factory, and device context.

◆ D2D1_DEVICE_CONTEXT_OPTIONS

This specifies options that apply to the device context for its lifetime.

◆ D2D1_DRAWING_STATE_DESCRIPTION1

This describes the drawing state.

◆ D2D1_EFFECT_INPUT_DESCRIPTION

This identifies a certain input connection of a certain effect.

◆ D2D1_IMAGE_BRUSH_PROPERTIES

Creation properties for an image brush.

◆ D2D1_INTERPOLATION_MODE

This is used to specify the quality of image scaling with ID2D1DeviceContext::DrawImage and with the 2D Affine Transform Effect.

◆ D2D1_LAYER_OPTIONS1

Specifies how the layer contents should be prepared.

◆ D2D1_LAYER_PARAMETERS1

All parameters related to pushing a layer.

◆ D2D1_MAP_OPTIONS

This describes how the individual mapping operation should be performed.

◆ D2D1_MAPPED_RECT

Describes mapped memory from the ID2D1Bitmap1::Map API.

◆ D2D1_MATRIX_4X3_F

◆ D2D1_MATRIX_4X4_F

◆ D2D1_MATRIX_5X4_F

◆ D2D1_POINT_2L

◆ D2D1_POINT_DESCRIPTION

Describes a point along a path.

◆ D2D1_PRIMITIVE_BLEND

A blend mode that applies to all primitives drawn on the context.

◆ D2D1_PRINT_CONTROL_PROPERTIES

The creation properties for a ID2D1PrintControl object.

◆ D2D1_PRINT_FONT_SUBSET_MODE

Defines when font resources should be subset during printing.

◆ D2D1_PROPERTY

This defines the list of system properties present on the root effect property interface.

◆ D2D1_PROPERTY_BINDING

◆ D2D1_PROPERTY_TYPE

This defines the valid property types that can be used in an effect property interface.

◆ D2D1_RECT_L

◆ D2D1_RENDERING_CONTROLS

This controls advanced settings of the Direct2D imaging pipeline.

◆ D2D1_STROKE_STYLE_PROPERTIES1

This defines how geometries should be drawn and widened.

◆ D2D1_STROKE_TRANSFORM_TYPE

Defines how the world transform, dots per inch (dpi), and stroke width affect the shape of the pen used to stroke a primitive.

◆ D2D1_SUBPROPERTY

This defines the indices of sub-properties that may be present on any parent property.

◆ D2D1_THREADING_MODE

This specifies the threading mode used while simultaneously creating the device, factory, and device context.

◆ D2D1_UNIT_MODE

This specifies what units should be accepted by the D2D API.

◆ D2D1_VECTOR_2F

◆ D2D1_VECTOR_3F

◆ D2D1_VECTOR_4F

◆ DWRITE_GLYPH_RUN_DESCRIPTION

◆ ID2D1Bitmap1

typedef interface ID2D1Bitmap1 ID2D1Bitmap1

◆ ID2D1BitmapBrush1

◆ ID2D1ColorContext

◆ ID2D1CommandList

◆ ID2D1CommandSink

◆ ID2D1Device

typedef interface ID2D1Device ID2D1Device

◆ ID2D1DeviceContext

◆ ID2D1DrawingStateBlock1

◆ ID2D1Effect

typedef interface ID2D1Effect ID2D1Effect

◆ ID2D1Factory1

typedef interface ID2D1Factory1 ID2D1Factory1

◆ ID2D1GdiMetafile

◆ ID2D1GdiMetafileSink

◆ ID2D1GradientStopCollection1

◆ ID2D1ImageBrush

typedef interface ID2D1ImageBrush ID2D1ImageBrush

◆ ID2D1Multithread

◆ ID2D1PathGeometry1

◆ ID2D1PrintControl

◆ ID2D1Properties

typedef interface ID2D1Properties ID2D1Properties

◆ ID2D1StrokeStyle1

◆ IDWriteFactory

typedef interface IDWriteFactory IDWriteFactory

◆ IPrintDocumentPackageTarget

◆ IWICColorContext

◆ IWICImagingFactory

◆ PD2D1_EFFECT_FACTORY

typedef HRESULT(CALLBACK * PD2D1_EFFECT_FACTORY) (_Outptr_ IUnknown **effectImpl)

Function pointer to construct a new effect once registered.

Enumeration Type Documentation

◆ D2D1_BITMAP_OPTIONS

Specifies how the bitmap can be used.

Enumerator
D2D1_BITMAP_OPTIONS_NONE 

The bitmap is created with default properties.

D2D1_BITMAP_OPTIONS_TARGET 

The bitmap can be specified as a target in ID2D1DeviceContext::SetTarget

D2D1_BITMAP_OPTIONS_CANNOT_DRAW 

The bitmap cannot be used as an input to DrawBitmap, DrawImage, in a bitmap brush or as an input to an effect.

D2D1_BITMAP_OPTIONS_CPU_READ 

The bitmap can be read from the CPU.

D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE 

The bitmap works with the ID2D1GdiInteropRenderTarget::GetDC API.

D2D1_BITMAP_OPTIONS_FORCE_DWORD 

◆ D2D1_BUFFER_PRECISION

This specifies the precision that should be used in buffers allocated by D2D.

Enumerator
D2D1_BUFFER_PRECISION_UNKNOWN 
D2D1_BUFFER_PRECISION_8BPC_UNORM 
D2D1_BUFFER_PRECISION_8BPC_UNORM_SRGB 
D2D1_BUFFER_PRECISION_16BPC_UNORM 
D2D1_BUFFER_PRECISION_16BPC_FLOAT 
D2D1_BUFFER_PRECISION_32BPC_FLOAT 
D2D1_BUFFER_PRECISION_FORCE_DWORD 

◆ D2D1_COLOR_INTERPOLATION_MODE

This specifies how colors are interpolated.

Enumerator
D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT 

Colors will be interpolated in straight alpha space.

D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED 

Colors will be interpolated in premultiplied alpha space.

D2D1_COLOR_INTERPOLATION_MODE_FORCE_DWORD 

◆ D2D1_COLOR_SPACE

Defines a color space.

Enumerator
D2D1_COLOR_SPACE_CUSTOM 

The color space is described by accompanying data, such as a color profile.

D2D1_COLOR_SPACE_SRGB 

The sRGB color space.

D2D1_COLOR_SPACE_SCRGB 

The scRGB color space.

D2D1_COLOR_SPACE_FORCE_DWORD 

◆ D2D1_COMPOSITE_MODE

Specifies the composite mode that will be applied.

Enumerator
D2D1_COMPOSITE_MODE_SOURCE_OVER 
D2D1_COMPOSITE_MODE_DESTINATION_OVER 
D2D1_COMPOSITE_MODE_SOURCE_IN 
D2D1_COMPOSITE_MODE_DESTINATION_IN 
D2D1_COMPOSITE_MODE_SOURCE_OUT 
D2D1_COMPOSITE_MODE_DESTINATION_OUT 
D2D1_COMPOSITE_MODE_SOURCE_ATOP 
D2D1_COMPOSITE_MODE_DESTINATION_ATOP 
D2D1_COMPOSITE_MODE_XOR 
D2D1_COMPOSITE_MODE_PLUS 
D2D1_COMPOSITE_MODE_SOURCE_COPY 
D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY 
D2D1_COMPOSITE_MODE_MASK_INVERT 
D2D1_COMPOSITE_MODE_FORCE_DWORD 

◆ D2D1_DEVICE_CONTEXT_OPTIONS

This specifies options that apply to the device context for its lifetime.

Enumerator
D2D1_DEVICE_CONTEXT_OPTIONS_NONE 
D2D1_DEVICE_CONTEXT_OPTIONS_ENABLE_MULTITHREADED_OPTIMIZATIONS 

Geometry rendering will be performed on many threads in parallel, a single thread is the default.

D2D1_DEVICE_CONTEXT_OPTIONS_FORCE_DWORD 

◆ D2D1_INTERPOLATION_MODE

This is used to specify the quality of image scaling with ID2D1DeviceContext::DrawImage and with the 2D Affine Transform Effect.

Enumerator
D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR 
D2D1_INTERPOLATION_MODE_LINEAR 
D2D1_INTERPOLATION_MODE_CUBIC 
D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR 
D2D1_INTERPOLATION_MODE_ANISOTROPIC 
D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC 
D2D1_INTERPOLATION_MODE_FORCE_DWORD 

◆ D2D1_LAYER_OPTIONS1

Specifies how the layer contents should be prepared.

Enumerator
D2D1_LAYER_OPTIONS1_NONE 
D2D1_LAYER_OPTIONS1_INITIALIZE_FROM_BACKGROUND 
D2D1_LAYER_OPTIONS1_IGNORE_ALPHA 
D2D1_LAYER_OPTIONS1_FORCE_DWORD 

◆ D2D1_MAP_OPTIONS

This describes how the individual mapping operation should be performed.

Enumerator
D2D1_MAP_OPTIONS_NONE 

The mapped pointer has undefined behavior.

D2D1_MAP_OPTIONS_READ 

The mapped pointer can be read from.

D2D1_MAP_OPTIONS_WRITE 

The mapped pointer can be written to.

D2D1_MAP_OPTIONS_DISCARD 

The previous contents of the bitmap are discarded when it is mapped.

D2D1_MAP_OPTIONS_FORCE_DWORD 

◆ D2D1_PRIMITIVE_BLEND

A blend mode that applies to all primitives drawn on the context.

Enumerator
D2D1_PRIMITIVE_BLEND_SOURCE_OVER 
D2D1_PRIMITIVE_BLEND_COPY 
D2D1_PRIMITIVE_BLEND_MIN 
D2D1_PRIMITIVE_BLEND_ADD 
D2D1_PRIMITIVE_BLEND_MAX 
D2D1_PRIMITIVE_BLEND_FORCE_DWORD 

◆ D2D1_PRINT_FONT_SUBSET_MODE

Defines when font resources should be subset during printing.

Enumerator
D2D1_PRINT_FONT_SUBSET_MODE_DEFAULT 

Subset for used glyphs, send and discard font resource after every five pages

D2D1_PRINT_FONT_SUBSET_MODE_EACHPAGE 

Subset for used glyphs, send and discard font resource after each page

D2D1_PRINT_FONT_SUBSET_MODE_NONE 

Do not subset, reuse font for all pages, send it after first page

D2D1_PRINT_FONT_SUBSET_MODE_FORCE_DWORD 

◆ D2D1_PROPERTY

This defines the list of system properties present on the root effect property interface.

Enumerator
D2D1_PROPERTY_CLSID 
D2D1_PROPERTY_DISPLAYNAME 
D2D1_PROPERTY_AUTHOR 
D2D1_PROPERTY_CATEGORY 
D2D1_PROPERTY_DESCRIPTION 
D2D1_PROPERTY_INPUTS 
D2D1_PROPERTY_CACHED 
D2D1_PROPERTY_PRECISION 
D2D1_PROPERTY_MIN_INPUTS 
D2D1_PROPERTY_MAX_INPUTS 
D2D1_PROPERTY_FORCE_DWORD 

◆ D2D1_PROPERTY_TYPE

This defines the valid property types that can be used in an effect property interface.

Enumerator
D2D1_PROPERTY_TYPE_UNKNOWN 
D2D1_PROPERTY_TYPE_STRING 
D2D1_PROPERTY_TYPE_BOOL 
D2D1_PROPERTY_TYPE_UINT32 
D2D1_PROPERTY_TYPE_INT32 
D2D1_PROPERTY_TYPE_FLOAT 
D2D1_PROPERTY_TYPE_VECTOR2 
D2D1_PROPERTY_TYPE_VECTOR3 
D2D1_PROPERTY_TYPE_VECTOR4 
D2D1_PROPERTY_TYPE_BLOB 
D2D1_PROPERTY_TYPE_IUNKNOWN 
D2D1_PROPERTY_TYPE_ENUM 
D2D1_PROPERTY_TYPE_ARRAY 
D2D1_PROPERTY_TYPE_CLSID 
D2D1_PROPERTY_TYPE_MATRIX_3X2 
D2D1_PROPERTY_TYPE_MATRIX_4X3 
D2D1_PROPERTY_TYPE_MATRIX_4X4 
D2D1_PROPERTY_TYPE_MATRIX_5X4 
D2D1_PROPERTY_TYPE_COLOR_CONTEXT 
D2D1_PROPERTY_TYPE_FORCE_DWORD 

◆ D2D1_STROKE_TRANSFORM_TYPE

Defines how the world transform, dots per inch (dpi), and stroke width affect the shape of the pen used to stroke a primitive.

Enumerator
D2D1_STROKE_TRANSFORM_TYPE_NORMAL 

The stroke respects the world transform, the DPI, and the stroke width.

D2D1_STROKE_TRANSFORM_TYPE_FIXED 

The stroke does not respect the world transform, but it does respect the DPI and the stroke width.

D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE 

The stroke is forced to one pixel wide.

D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD 

◆ D2D1_SUBPROPERTY

This defines the indices of sub-properties that may be present on any parent property.

Enumerator
D2D1_SUBPROPERTY_DISPLAYNAME 
D2D1_SUBPROPERTY_ISREADONLY 
D2D1_SUBPROPERTY_MIN 
D2D1_SUBPROPERTY_MAX 
D2D1_SUBPROPERTY_DEFAULT 
D2D1_SUBPROPERTY_FIELDS 
D2D1_SUBPROPERTY_INDEX 
D2D1_SUBPROPERTY_FORCE_DWORD 

◆ D2D1_THREADING_MODE

This specifies the threading mode used while simultaneously creating the device, factory, and device context.

Enumerator
D2D1_THREADING_MODE_SINGLE_THREADED 

Resources may only be invoked serially. Reference counts on resources are interlocked, however, resource and render target state is not protected from multi-threaded access

D2D1_THREADING_MODE_MULTI_THREADED 

Resources may be invoked from multiple threads. Resources use interlocked reference counting and their state is protected.

D2D1_THREADING_MODE_FORCE_DWORD 

◆ D2D1_UNIT_MODE

This specifies what units should be accepted by the D2D API.

Enumerator
D2D1_UNIT_MODE_DIPS 
D2D1_UNIT_MODE_PIXELS 
D2D1_UNIT_MODE_FORCE_DWORD 

Function Documentation

◆ D2D1ConvertColorSpace()

D2D1_COLOR_F WINAPI D2D1ConvertColorSpace ( D2D1_COLOR_SPACE  sourceColorSpace,
D2D1_COLOR_SPACE  destinationColorSpace,
_In_ CONST D2D1_COLOR_F color 
)

◆ D2D1CreateDevice()

HRESULT WINAPI D2D1CreateDevice ( _In_ IDXGIDevice dxgiDevice,
_In_opt_ CONST D2D1_CREATION_PROPERTIES creationProperties,
_Outptr_ ID2D1Device **  d2dDevice 
)

◆ D2D1CreateDeviceContext()

HRESULT WINAPI D2D1CreateDeviceContext ( _In_ IDXGISurface dxgiSurface,
_In_opt_ CONST D2D1_CREATION_PROPERTIES creationProperties,
_Outptr_ ID2D1DeviceContext **  d2dDeviceContext 
)

◆ D2D1SinCos()

void WINAPI D2D1SinCos ( _In_ FLOAT  angle,
_Out_ FLOAT s,
_Out_ FLOAT c 
)

◆ D2D1Tan()

FLOAT WINAPI D2D1Tan ( _In_ FLOAT  angle)

◆ D2D1Vec3Length()

FLOAT WINAPI D2D1Vec3Length ( _In_ FLOAT  x,
_In_ FLOAT  y,
_In_ FLOAT  z 
)

◆ DEFINE_ENUM_FLAG_OPERATORS() [1/4]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_BITMAP_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [2/4]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_MAP_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [3/4]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_DEVICE_CONTEXT_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [4/4]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_LAYER_OPTIONS1  )

Variable Documentation

◆ IID_ID2D1Bitmap1

EXTERN_C CONST IID IID_ID2D1Bitmap1

◆ IID_ID2D1BitmapBrush1

EXTERN_C CONST IID IID_ID2D1BitmapBrush1

◆ IID_ID2D1ColorContext

EXTERN_C CONST IID IID_ID2D1ColorContext

◆ IID_ID2D1CommandList

EXTERN_C CONST IID IID_ID2D1CommandList

◆ IID_ID2D1CommandSink

EXTERN_C CONST IID IID_ID2D1CommandSink

◆ IID_ID2D1Device

EXTERN_C CONST IID IID_ID2D1Device

◆ IID_ID2D1DeviceContext

EXTERN_C CONST IID IID_ID2D1DeviceContext

◆ IID_ID2D1DrawingStateBlock1

EXTERN_C CONST IID IID_ID2D1DrawingStateBlock1

◆ IID_ID2D1Effect

EXTERN_C CONST IID IID_ID2D1Effect

◆ IID_ID2D1Factory1

EXTERN_C CONST IID IID_ID2D1Factory1

◆ IID_ID2D1GdiMetafile

EXTERN_C CONST IID IID_ID2D1GdiMetafile

◆ IID_ID2D1GdiMetafileSink

EXTERN_C CONST IID IID_ID2D1GdiMetafileSink

◆ IID_ID2D1GradientStopCollection1

EXTERN_C CONST IID IID_ID2D1GradientStopCollection1

◆ IID_ID2D1ImageBrush

EXTERN_C CONST IID IID_ID2D1ImageBrush

◆ IID_ID2D1Multithread

EXTERN_C CONST IID IID_ID2D1Multithread

◆ IID_ID2D1PathGeometry1

EXTERN_C CONST IID IID_ID2D1PathGeometry1

◆ IID_ID2D1PrintControl

EXTERN_C CONST IID IID_ID2D1PrintControl

◆ IID_ID2D1Properties

EXTERN_C CONST IID IID_ID2D1Properties

◆ IID_ID2D1StrokeStyle1

EXTERN_C CONST IID IID_ID2D1StrokeStyle1