Available in LEADTOOLS Medical Imaging toolkits. |
The internal DICOM tables have been moved from the ltdicu.dll to a dedicated LtDicTablesu.dll. This makes the main DICOM dll Ltdicu.dll significantly smaller in size, and offers the developer several new options for accessing and tailoring the DICOM tables to the specific requirements of their application.
There are five DICOM tables that are defined and stored internally in the DICOM toolkit:
Value Representation Table
Contains a list of all supported value representation defined in the DICOM specification.
This list is well-defined, does not change, and is small.
Stored internally in Ltdicu.dll.
Unique Identifier Table (UID)
Contains a list of all unique identifiers defined in the DICOM specification.
New UID©s are added ever year.
Stored internally in LtDicTablesu.dll.
Can be easily and quickly updated by calling LDicomUID::LoadXml
Element Tag Table
Contains a list of all DICOM elements defined in the DICOM specification.
New elements are added every year.
Stored internally in both LtDicTablesu.dll and in ltdicu.dll
Can be easily and quickly updated by calling LDicomTag::LoadXml.
Information Object Definition Table (IOD)
Contains a list of all Information Object Definitions defined in the DICOM specification.
New IOD©s are defined every year.
Stored internally in LtDicTablesu.dll
This is a very large table
Can be easily and quickly updated by calling LDicomIOD::LoadXml
Context Group Table
Contains a list of all Context Groups defined in the DICOM specification
New Context Groups are added every year.
Store internally in LtDicTablesu.dll
Can be easily and quickly updated by calling LDicomContextGroup::LoadXml.
DICOM toolkit users have several options when using and tailoring the DICOM tables to meet the needs of their application.
Developers can include ltdicu.dll and LtDicTablesu.dll in their distributable. LtDicTablesu.dll includes all UID©s, Element tags, IOD©s, and DICOM Context Groups from the 2008 DICOM specification. This is the easiest way of using the DICOM tables.
Developers can choose not to include ltdictablesu.dll in their redistributable. In this case, developers should call the appropriate LoadXml function to load the DICOM tables that they want to load. As part of the toolkit, four human-readable DICOM table XML files are now installed in the LEADTOOLS Sample Images directory:
dicTableUid.xml - used with LDicomUID::LoadXml()
dicTableElement.xml - used with LDicomTag::LoadXml()
dicTableIodModule.xml - used with LDicomIOD::LoadXml()
dicTableContextGroup.xml: used with LDicomContextGroup::LoadXml()
These four tables can easily be tailored to your needs. For example, to add new UID©s, elements, IOD©s, or context groups, developers can edit any one of these files with any text editor. Also, the tables can be easily combined into a single table.
Developers can easily remove items from these tables that will not be used. For example, the DICOM IOD table contains more than 60 IOD definitions, more 300 modules definitions, which comes to more than 18000 lines in the dicTableIodModule.xml file. If a particular DICOM application does not use IOD©s, then the application footprint can be significantly reduced by not including these IODs at all. Or if you are doing basic DICOM communication, you can include only the IODs that you need, and remove all others. For example, your application might use only the following IODs:
© Patient level for the patient root query/retrieve model
© Study level for the patient root query/retrieve model
© Series level for the patient root query/retrieve model
© Image level for the patient root query/retrieve model
© Study level for the study root query/retrieve model
© Series level for the study root query/retrieve model
© Image level for the study root query/retrieve model
© Patient level for the patient/study only query/retrieve model
© Study level for the patient/study only query/retrieve model
For more information on UIDs, Dicom Elements, IODs, and Context Groups, refer to
Working with Unique Identifiers (UIDs)