LDicomDS::GetOverlayBitmapList
#include "ltdic.h"
L_UINT16 LDicomDS::GetOverlayBitmapList ( uOverlayIndex, hList, uOverlayFrameIndex, uCount, uFlags)
L_UINT uOverlayIndex; |
/* index */ |
HBITMAPLIST hList; |
/* handle */ |
L_UINT32 uOverlayFrameIndex; |
/* position of the first frame */ |
L_UINT32 uCount; |
/* number of frames */ |
L_UINT uFlags; |
/* reserved for future use */ |
Loads the bitmap list with frames from the "Overlay Data" (60xx, 3000) element.
Parameter |
Description |
uOverlayIndex |
The index of the overlay for which to get the frames. This index is zero-based. |
hList |
Handle to the list of bitmaps. |
uOverlayFrameIndex |
Position of the first frame to be loaded. Use zero-based indexing. For example, if there are 5 bitmaps in a list, the index of the last one is 4. |
uCount |
Number of frames to load into the bitmap list. |
uFlags |
Reserved for future use. Pass 0. |
Returns
0 |
The function was successful. |
> 0 |
An error occurred. Refer to Return Codes. |
Comments
Before calling this function you must call LDicomDS::GetOverlayAttributes. The nNumFramesInOverlay member of the OVERLAYATTRIBUTES structure will be updated with the number of frames under an overlay.
As an example, if you wish to load 5 frames starting with the 1st frame in the "Overlay Data", call this function with uOverlayFrameIndex set to 0 and uCount set to 5.
Required DLLs and Libraries
LTDIC 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
Example
//This function will load frames of an overlay into a bitmap list
L_UINT16 MyGetOverlayBitmapList
(
LDicomDS &InDS,// Input dataset
HBITMAPLIST hList,//Bitmap list to be populated
L_CHAR *pActivationLayer,//Retrieve activation layer if needed
L_UINT uLength//Length of input buffer
)
{
L_UINT16 uRet;
OVERLAYATTRIBUTES OverlayAttributes = {0};
L_INT GroupNumber=0;
L_BOOL IsOverlayInDataset = FALSE;
//(1)Sanity Check !
if(hList == NULL)
{
return DICOM_ERROR_NULL_PTR;
}
// Get activation layer
if(pActivationLayer && uLength)
{
InDS.GetOverlayActivationLayer (0,pActivationLayer,uLength);
}
uRet = InDS.GetOverlayAttributes ( 0,
&OverlayAttributes,
sizeof(OverlayAttributes),
&GroupNumber,
&IsOverlayInDataset,
0);
if(DICOM_SUCCESS !=uRet)
{
return uRet;
}
return InDS.GetOverlayBitmapList (0,
hList,
0,
OverlayAttributes.nNumFramesInOverlay,
0);
}