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; }