LBitmap::GetMinMaxBits
#include "ltwrappr.h"
virtual L_INT LBitmap::GetMinMaxBits(pnLowBit, pnHighBit)
|
L_INT * pnLowBit; |
/* address of a variable to be updated */ |
|
L_INT * pnHighBit; |
/* address of a variable to be updated */ |
Returns the low and high bits of the values present in a 12 or 16-bit grayscale and 48 and 64-bit image. This function is available in Document/Medical toolkits only.
|
Parameter |
Description |
|
pnLowBit |
Address of a variable to be updated with the lowest bit set in the bitmap. |
|
pnHighBit |
Address of a variable to be updated with the highest bit set in the bitmap. |
Returns
|
SUCCESS |
The function was successful. |
|
< 1 |
An error occurred. Refer to Return Codes. |
Comments
The minimum and maximum bit values can be used to specify the range of useful bits and to create a lookup table, for use in LBitmap::WindowLevel or LBitmap::WindowLevelBitmap.
This function supports 12 and 16-bit grayscale images. Support for 12 and 16-bit grayscale images is available only in the Document/Medical toolkits.
This function supports signed data images.
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
|
LTDIS For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
See Also
|
Functions: |
LBitmap::GetMinMaxVal, LBitmap::WindowLevel, LBitmap::WindowLevelBitmap, Class Members |
|
Topics: |
|
|
|
|
|
|
|
|
|
Raster Image Functions: Working with Color Halftones, Halftones, and Grayscale Images |
|
|
Example
L_INT LBitmap__GetMinMaxBitsExample()
{
L_INT nRet;
LBitmap LeadBitmap;
L_INT nLowBit, nHighBit;
L_TCHAR szDummyBuffer[50];
nRet =LeadBitmap.Load(TEXT("test16.tif"), 0,ORDER_BGR);
if(nRet !=SUCCESS)
return nRet;
if(
((LeadBitmap.IsGrayScale()!=GRAY_NO)&&
((LeadBitmap.GetBitsPerPixel ()==12)||
(LeadBitmap.GetBitsPerPixel()==16)))
)
{
nRet =LeadBitmap.GetMinMaxBits(&nLowBit, &nHighBit);
if(nRet !=SUCCESS)
return nRet;
wsprintf(szDummyBuffer, TEXT("LowBit= %d\tHighBit= %d"), nLowBit, nHighBit);
MessageBox(NULL, szDummyBuffer, TEXT("GetMinMaxBits"), MB_OK);
}
else
{
MessageBox(NULL, TEXT("Not a (12 or 16) gray scale image."), TEXT("GetMinMaxBits"), MB_OK);
return FAILURE;
}
return SUCCESS;
}