L_DicomDeleteModule

#include "Ltdic.h"

L_LTDIC_API L_VOID L_DicomDeleteModule(hDS, nModule)

HDICOMDS hDS;

/* a DICOM handle */

L_UINT32 nModule;

/* module constant */

Deletes a module from the Data Set.

Parameter

Description

hDS

A DICOM handle.

nModule

Module constant that specifies which module to delete. For a list of default values, refer to IOD Module Constants.

Returns

None

Comments

You can remove all items from the Data Set using L_DicomResetDS.

Since the Data Set is stored internally as a tree, the deletion must be carried out as a tree.

When deleting an item from the tree, if the item being deleted has a sibling (same level, same parent), following it, this function returns a pointer to this sibling. If the item being deleted does not have a sibling following it, but has a sibling preceding it, this function returns a pointer to the preceding sibling. If the item being deleted is an only child, this function returns a pointer to the parent. If there is no parent this function returns NULL.

Below are illustrations of these situations:

For the sake of these illustrations, the order of siblings is top to bottom. A preceding sibling is drawn above the sibling it precedes, a following sibling is drawn below the sibling it follows.

Please note that the numbering of the items of interest is arbitrary, and does not imply order.

In this illustration item 2 will be deleted. Since it has a following sibling, the returned pointer will point to item 3.

image\IODDlAft.gif

In this illustration item 3 will be deleted. Since it does not have a following sibling, but does have a preceding sibling, the returned pointer will point to item 2.

image\IODDlBef.gif

In this illustration item 2 will be deleted. Since it is an only child, the returned pointer will point to the parent, item 1.

image\IODDlPar.gif

In this illustration item 1 will be deleted. Since it has no siblings and no parent, this function will return NULL.

image\IODDlNul.gif

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_DicomDeleteElement, L_DicomResetDS

Topics:

Working with Data Sets

Example

This example removes a module from the Data Set

L_INT DicomDeleteModuleExample(L_VOID)
{
   HDICOMDS hDS;

   hDS = L_DicomCreateDS(NULL);
   L_DicomInitDS(hDS, CLASS_CT_IMAGE_STORAGE, 0); 
   L_DicomDeleteModule(hDS, MODULE_PATIENT);
   L_DicomFreeDS(hDS);

   return DICOM_SUCCESS;
}