Summary of Interfaces

Microsoft® DirectX® Transform supports the creation of two kinds of objects: DXTransform objects and DXSurface objects. DXTransform objects use input graphics and transform properties to produce graphic output. DXSurface objects store two-dimensional (2-D) bitmap images in a way that makes accessing and manipulating them much easier. They can be attached as inputs or output to DXTransform objects.

DirectX Transform implements a set of core interfaces used to create and modify each of these objects. Other interfaces provide basic support functionality that is not specific to DXTransform or DXSurface objects.

The DirectX Transform interfaces are organized in the following categories.

DXTransform Interfaces

The following list describes the DirectX Transform interfaces that provide the core functionality for DXTransform objects. With the exception of IDXTransformFactory, these are interfaces implemented by all DXTransform objects.

All DXTransform objects must implement the IDXTransform interface. The other interfaces are optional.

IDXBindHost
This interface specifies the bind host that the calling transform should use.
IDXEffect
This interface inherits from IDispatch and is used to generically control transition settings on transform objects. Transform objects that use their inputs to produce animation should inherit from this interface.
IDXScaleOutput
This interface is used to set the destination size of transformed output, which is scaled automatically when the transform's Execute method is called.
IDXSurfacePick
This interface can be used to choose which of the transform input surfaces contribute to the output at a specific point.
IDXTransform
This interface is exposed on a DXTransform object and is used to execute a transform on a specified data object or group of objects.
IDXTransformFactory
This core interface is obtained by creating a DXTransformFactory object (Transform Factory) and is used to instantiate and initialize a desired transform.

DXSurface Interfaces

The following list describes the DirectX Transform interfaces that provide the core functionality for DXSurface objects. With the exception of IDXSurfaceFactory, all of these are interfaces implemented by DXSurface objects.

IDXARGBReadPtr
This interface is used by a transform object to gain read-only access to samples contained in a DXSurface. This interface contains methods to move a sample pointer to various locations within a DXSurface and to unpack samples into a common pixel format (either ARGB32 or PMARGB32).
IDXARGBReadWritePtr
DirectX Transform objects use the IDXARGBReadWritePtr interface to gain read/write access to samples contained in a DXSurface. This interface contains methods that select various locations within a DXSurface and pack ARGB32- or PMARGB32-transformed samples into the native, underlying pixel format of the output surface.
IDXARGBSurfaceInit
This interface is used to initialize DXSurfaces from DirectDrawSurface objects and buffers. It derives from the IDXSurfaceInit interface.
IDXDCLock
This interface retrieves the current device context (DC).
IDXRawSurface
This interface is used to implement custom surface types that are not based on Microsoft DirectDraw® surfaces.
IDXSurface
This interface is exposed on DXSurfaces. It provides methods to get information and generate IDs for surfaces being sent to transforms. The IDXSurface interface is also used to lock the surface and retrieve a pointer to access samples of the DXSurface. This interface derives from IDXBaseObject.
IDXSurfaceFactory
This interface creates DXSurface objects. This interface is typically implemented as a service the DXTransformFactory object.
IDXSurfaceInit
This interface initializes a new DXSurface object (from a DirectDraw object) with the specified bounding volume and pixel format.
IDXSurfaceModifier
This interface is used to combine and manipulate DXSurfaces. You can define a foreground surface, which is composited or tiled over a background surface or color. The interface also supports lookup table and opacity adjustments of the foreground surface. The interface exposes an IDXSurface interface, which allows the combined images to be accessed as if it were a modified DXSurface.

Utility Interfaces

The following list describes core DirectX Transform interfaces that provide basic functionality, such as task management and lookup table support, that is not specific to surfaces or transforms.

IDXBaseObject
This interface manages the generation ID of a surface and retrieves its size.
IDXLookupTable
This interface is used to access a lookup table, which changes each of the values of a sample's ARGB components. The values are changed by using the color value as an index in a table that holds the new color value.
IDXLUTBuilder
This interface builds lookup tables to perform standard color adjustments to DXSurfaces.
IDXTaskManager
The IDXTaskManager interface is used to schedule and execute caller-defined tasks on different threads. This interface enables you to specify the thread pool size and the thread concurrency limit of the DXTaskManager object (Task Manager).

Utility Transforms

These transform interfaces produce a variety of image effects. Transform authors can also use them to create other transforms, or as graphics tools for DXSurfaces.

IDXGradient
This interface produces two-color gradient DXSurfaces.
IDXTConvolution
This interface performs convolution filtering on DXSurface images. The interface also enables you to define custom filters.
IDXTScale
This interface enables you to change the scale of an image or mesh along each of its axes.

Top of Page Top of Page
© 2000 Microsoft and/or its suppliers. All rights reserved. Terms of Use.