L_DicomAddPresStateImageRefByFileName

#include "l_bitmap.h"

L_LTDIC_API L_UINT16 L_DicomAddPresStateImageRefByFileName(hDS, pszImageFileName, pFrameNumbers, uFramesCount)

HDICOMDS hDS;

/* a DICOM handle */

L_TCHAR* pszImageFileName;

/* file name of the Image to be added */

L_INT32* pFrameNumbers ;

/* array of frame numbers */

L_UINT uFramesCount;

/* size of the array */

Adds a new item to the "Referenced Image Sequence" under the "Presentation State Module"

Parameter

Description

hDS

A DICOM handle.

pszImageFileName

File name of the image(SOP Instance) to be referenced.

pFrameNumbers

An array which represents the frame numbers inside the image (SOP Instance) to which the presentation state will be applied.

uFramesCount

Number of frames being set.

Returns

0

SUCCESS

>0

An error occurred. Refer to Return Codes.

Comments

This function will add a new item into the "Referenced Image Sequence" (0008,1140) under the "Presentation State Module", by passing the file name of the image (SOP Instance) to be referenced.

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

Platforms

Win32, x64

See Also

Functions:

L_DicomSetPresStateInfo, L_DicomGetPresStateInfo, L_DicomAddPresStateImageRefByDS, L_DicomRemovePresStateImageRefBySOPInstance, L_DicomRemoveAllPresStateImageRefs, L_DicomGetPresStateImageRefSOPInstance, L_DicomGetPresStateImageRefCount, L_DicomFindFirstPresStateRefSeriesItem, L_DicomFindNextPresStateRefSeriesItem, L_DicomGetPresStateImageRefBySOPInstance

Topics:

Working with DICOM Annotations

 

Dicom Annotations: Presentation State Module

Example

L_INT DicomAddPresStateImageRefByFileNameExample(HDICOMDS hPresStateDS)
{
   L_UINT   uFramesCount      = 2;
   L_INT32*pFrameNumbers     = NULL;
   L_TCHAR*  pszImageFileName  = TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\Patient-1.dcm");
   L_UINT16 nRet;

   pFrameNumbers = (L_INT32*)malloc(sizeof(L_INT32) * uFramesCount);
   if(pFrameNumbers == NULL)
      return ERROR_NOT_ENOUGH_MEMORY;

   pFrameNumbers[0]   = 1;
   pFrameNumbers[1]   = 12;

   nRet = L_DicomAddPresStateImageRefByFileName(hPresStateDS,
                                                pszImageFileName,
                                                pFrameNumbers,
                                                uFramesCount);
   if (nRet == DICOM_SUCCESS)
   {
      MessageBox( NULL, 
                  TEXT("Image was successfully added to the referenced image sequence."),
                  TEXT("Success"),
                  MB_OK);
   }
   if (pFrameNumbers)
      free(pFrameNumbers);
   return nRet;
}