#include "l_bitmap.h"
L_LTIMGCOR_API L_INT L_ApplyModalityLUT (pBitmap, pLUT, pLUTDescriptor, uFlags)
pBITMAPHANDLE pBitmap; |
pointer to the main bitmap handle |
L_UINT16 *pLUT; |
pointer to the lookup table to be applied to the bitmap |
pDICOMLUTDESCRIPTOR pLUTDescriptor; |
pointer to the structure describing the LUT parameters |
L_UINT uFlags; |
flags |
Remaps the bitmap pixels through a lookup-table (LUT).
Parameter |
Description |
||||||||||
pBitmap |
Pointer to the main bitmap handle. |
||||||||||
pLUT |
Pointer to the lookup table to be applied to the bitmap. |
||||||||||
pLUTDescriptor |
Pointer to a structure describing the LUT parameters. |
||||||||||
uFlags |
A flag that determine the behavior of the function, the user can use one or more flags of the following: |
||||||||||
|
|
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comment
This function does not support 32-bit grayscale images. It returns the error code ERROR_GRAY32_UNSUPPORTED if a 32-bit grayscale image is passed to this function.
Required DLLs and Libraries
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64, Linux.
L_INT ApplyModalityLUTExample(pBITMAPHANDLE pBitmap,L_BOOL bLinear)
{
L_INT nRet;
if(bLinear)
{
nRet = L_ApplyLinearModalityLUT (pBitmap, 0.0, 0.5, 0);
if(nRet != SUCCESS)
return nRet;
}
else
{
L_UINT16 *pLUT;
L_UINT16 i;
DICOMLUTDESCRIPTOR LUTDescriptor;
// allocate and initialize the LUT
pLUT = (L_UINT16 *)malloc(0x10000 * sizeof(L_UINT16));
if(!pLUT)
return ERROR_NO_MEMORY;
// set a LUT which reduces the intensity of each pixel to half
for(i = 0; i <= 0xFFFF; i++)
pLUT[i] = i / 2;
// fill the LUTDescriptor structure
LUTDescriptor.uStructSize =sizeof(LUTDescriptor);
LUTDescriptor.nFirstStoredPixelValueMapped = 0;
LUTDescriptor.uEntryBits = 16;
LUTDescriptor.uNumberOfEntries = 0x10000;
// apply the LUT
nRet = L_ApplyModalityLUT(pBitmap, pLUT, &LUTDescriptor, 0);
if(nRet != SUCCESS)
{
return nRet;
}
// free the LUT
free(pLUT);
}
return SUCCESS;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET