IDXLUTBuilder interface
This interface enables you to construct a lookup table for an input DXSurface. A lookup table is a set of four arrays of 256 numbers each, with one array for each color channel and one array for the alpha channel.
Members
The IDXLUTBuilder interface inherits from the IUnknown interface. IDXLUTBuilder also has these types of members:
- Methods
Methods
The IDXLUTBuilder interface has these methods.
Method | Description |
---|---|
GetBrightness | Retrieves the settings for the lookup table brightness curve. |
GetBuildOrder | Retrieves the order of operations used to build the lookup table. |
GetColorBalance | Retrieves the tint curves used for color balance operations on the selected color. |
GetContrast | Retrieves the settings for the lookup table contrast curve. |
GetGamma | Retrieves the value used for gamma correction. |
GetInvert | Retrieves the threshold value used for color inversion. |
GetLevelsPerChannel | Retrieves the number of color levels to use for the posterizing operation. |
GetNumBuildSteps | Retrieves the number of lookup table operations to perform. |
GetOpacity | Retrieves the opacity adjustment for the lookup table. |
GetThreshold | Retrieves the value used for threshold filtering operations. |
SetBrightness | Sets the values for the lookup table brightness curve. |
SetBuildOrder | Sets the order of operations used to build the lookup table. |
SetColorBalance | Sets the tint curves for color balance operations on the selected color. |
SetContrast | Sets the values for the lookup table contrast curve. |
SetGamma | Sets the value used for gamma correction. |
SetInvert | Sets the threshold value for color inversion. |
SetLevelsPerChannel | Sets the number of color levels to use for the posterizing operation. |
SetOpacity | Sets the opacity adjustment for the lookup table. |
SetThreshold | Sets the value for threshold filtering operations. |
Remarks
Each color channel of each sample in an image is modified by a lookup table with the following code:
pBuffer[i].Color = pColorLookupTable[pBuffer[i].Color];
In effect, this color value is used as an index to the modified color value stored in the lookup table array.
There are a number of standard color corrections that you can perform with Microsoft DirectX Transform lookup tables. These corrections are listed in the OPIDDXLUTBUILDER enumeration. You can also specify any number of color corrections in any order.
To use this interface, call the Component Object Model (COM)CoCreateInstance method as shown in the following code example.
IDXLUTBuilder* g_pLUTBuilder;
hr = CoCreateInstance( CLSID_DXLUTBuilder, NULL, CLSCTX_INPROC,
IID_IDXLUTBuilder, (void **)&g_pLUTBuilder );
...
IDXLookupTable* g_pLUT;
hr = g_pLUTBuilder->QueryInterface( IID_IDXLookupTable,
(void **)&g_pLUT );
When you implement this interface, the call to the QueryInterface method should return an IDXLookupTable pointer. Use this pointer as a parameter to the IDXSurfaceModifier::SetLookup method to connect your lookup table to the DXSurfaceModifier object.
Requirements
Minimum supported client |
Windows XP |
Minimum supported server |
Windows 2000 Server |
Header |
Dxtmsft.h |
IDL |
Dxtmsft.idl |
DLL |
Dxtrans.dll |