Working with Information Object Definitions

An Information Object Definition (IOD) is an abstract data model that specifies information about Real-World objects. It provides a means of standardizing information exchanged between applications. There are a tremendous number of IODs that are standard for the DICOM file format. In addition to the standard IODs, user-defined IODs may also be added.

LEADTOOLS maintains a tree internally of all available Information Object Definitions (IODs), standard and user defined. In this documentation the tree of available IODs will be referred to as the IOD Structure, since some functions allow you to evaluate the internal IOD Structure as a tree or as a list. Unfortunately, the collection of default IODs is too large to include a table of default values in this documentation. For more information on IOD defaults, refer to the DICOM Standard.

LEADTOOLS provides a number of functions for maneuvering through and modifying the IOD Structure. All functions pertaining to the IOD Structure have the form L_DicomxxxIOD.

For maneuvering through the IOD Structure, LEADTOOLS provides the following functions:

L_DicomGetRootIOD

L_DicomGetParentIOD

L_DicomGetChildIOD

L_DicomGetFirstIOD

L_DicomGetLastIOD

L_DicomGetPrevIOD

L_DicomGetNextIOD

L_DicomGetCountModuleIOD

LEADTOOLS provides several functions for searching the IOD Structure. To find the IOD for a specific class or module, use L_DicomFindClassIOD and L_DicomFindModuleIOD. You can find the IOD for elements, modules or classes using L_DicomFindIOD. If you want to find the IOD for the module at a specific position in a specific class, use L_DicomFindIndexModule.

The L_DicomFindIndexModuleIOD function returns a pointer to the item in the IOD Structure that contains the IOD for the module in the specified class at the specified index.

To insert new items in the IOD Structure, call L_DicomInsertIOD.

You can delete individual items from the IOD Structure and free the memory for the IOD using L_DicomDeleteIOD, or you can delete all items from the IOD Structure, using L_DicomResetIOD.

To change the name or the description of an IOD already in the IOD Structure, call L_DicomSetNameIOD and L_DicomSetDescriptionIOD.

To determine whether you have a valid pointer to an IOD item, call L_DicomExistsIOD.

To load DICOM IODs from a file, call L_DicomLoadXmlIOD.

Finally, to reset the IOD Structure to the default values, use L_DicomDefaultIOD.

For more information on IODs, refer to An Overview of the DICOM File Format or the DICOM Standard.