IDXTransform interface

The IDXTransform interface is used to set up a transform and cause it to produce its graphics output. This interface is exposed on all Microsoft DirectX Transform objects created with the IDXTransformFactory::CreateTransform method.


The IDXTransform interface inherits from IDXBaseObject. IDXTransform also has these types of members:

  • Methods


The IDXTransform interface has these methods.

Method Description

Executes the transform operation given the specified portion bounds and places the result in the destination data object.


Retrieves input or output information about the specified data object, and an optional pointer to it.


Retrieves flags that describe the behavior of the transform.


Retrieves the quality level used to render the transform result.


Maps the input coordinate space to the output coordinate space.


Maps the output coordinate space to the input coordinate space.


Sets transform flags that specify how to generate the output.


Sets the quality level used to render the transform result.


Defines the input and output data objects used in the transform.



Input and output data objects are specified for transform objects in the IDXTransform::Setup method. This method accepts pointers to the data object's IUnknown interface, which enables transforms to support any number and type of data objects. If you provide only an output data object, then reading, modifying, and writing all occur on that object. The transform input and output data objects are typically DXSurface objects, though this depends on the individual transform.

All transforms on DXSurfaces support data access through either the IDXARGBReadPtr or IDXARGBReadWritePtr pointer modifier interfaces, or both. These interfaces provide simplified access to samples of the DXSurface in either of the following two pixel formats: ARGB32, or alpha premultipliedPMARGB32. These formats are defined for optimal alpha blending performance and to maintain precision for intermediate results. In addition, transforms also must support Component Object Model (COM) aggregation so that additional interface pointers can be passed to the client.

The IDXTransform interface inherits from the IDXBaseObject interface. You can use the methods in the IDXBaseObject interface to manage the generation ID.

Transforms can use discrete DXBNDS structures to describe DXSurfaces. The CDXBnds template helper class can take bounds of any type and convert them where necessary. Transforms should always work using bounds in their native coordinate type.

For information about creating a transform object and retrieving the IDXTransform interface, see the IDXTransformFactory interface.


Minimum supported client

Windows XP

Minimum supported server

Windows 2000 Server