IDXTransformFactory interface

The IDXTransformFactory interface creates and initializes a transform. It is created by calling the CoCreateInstance method and specifying CLSID_DXTransformFactory as the class identifier (CLSID) and IID_IDXTransformFactory as the interface ID.


The IDXTransformFactory interface inherits from IServiceProvider. IDXTransformFactory also has these types of members:

  • Methods


The IDXTransformFactory interface has these methods.

Method Description

Creates and initializes a transform.


Initializes a transform that has been created by the caller.


Adds a service provider to the Transform Factory.



You can use the IDXTransformFactory::CreateTransform method to create and initialize a transform in one step. Alternatively, you can use the Component Object Model (COM) CoCreateInstance method to create the transform and initialize it by using the IDXTransformFactory::InitializeTransform method. After the transform is created and initialized, it can be executed by using IDXTransform::Setup and then IDXTransform::Execute.

IDXTransformFactory also provides support services to transforms through the IServiceProvider interface. An important service that this interface provides is access to the IDXSurfaceFactory interface, which is exposed when the DXTransformFactory is created. A pointer to the DXSurfaceFactory can be obtained by calling the IServiceProvider::QueryService method on IDXTransformFactory with SID_DXSurfaceFactory as the service ID. The pointer to the DXSurfaceFactory can then be used to create a DXSurface. Furthermore, the task management service is created and added to the factory upon first query by default. You can add service providers through the IDXTransformFactory::SetService method. These services can be requested later, potentially by different transforms. A transform typically tries to obtain a service from the factory before it creates and adds a new one. This avoids duplication of identical servers across the simultaneously active transforms.

For more information on how to use this interface in your application, see About Transforms and DXSurfaces overview article.

This interface inherits from the standard COM interface IServiceProvider.


Minimum supported client

Windows XP

Minimum supported server

Windows 2000 Server