Send comments on this topic. | Back to Introduction - All Topics | Help Version 15.12.21
Working with Data Sets

A Data Set is a collection of Data Elements stored in a DICOM file. Each DICOM file may or may not include a header consisting of a Preamble and a Prefix. For more information about the DICOM File Format, refer to An Overview of the DICOM File Format or the DICOM Standard, published by the

National Electrical Manufacturers Association

1300 N. 17th Street

Rosslyn, Virginia 22209 USA

hereafter referred to as the DICOM Standard.

Each DICOM file represents a separate class of information. For example, one DICOM file may represent the Computed Tomography Image class, and another DICOM file may represent the Radiotherapy Structure Set class. However, both classes would not be contained in the same DICOM file. For a list of the standard classes supported by DICOM, refer to IOD Class Constants. In addition to the standard classes supported by DICOM, user-defined classes may also be added.

For each class supported by DICOM there are certain Modules contained in each class. Each Module consists of a number of Data Elements, each Data Element having its own Tag. These Data Elements can be mandatory or optional, depending on the Module and the class. For a list of the default Modules supported by DICOM, refer to the DicomModuleType enumeration. For a list of default Data Elements (Tag values) supported by DICOM, refer to the DicomTagType enumeration. For more details concerning the DICOM File Format, refer to An Overview of the DICOM File Format and the DICOM Standard. In addition to the standard Modules and Data Elements supported by DICOM, user-defined Modules and Data Elements may also be added.

LEADTOOLS maintains the Data Set internally as a tree structure. In this documentation the tree will be referred to as the Data Set, and individual members of the Data Set will be referred to as Data Elements or items. Some of the methods provided by LEADTOOLS allow you to evaluate the Data Set as a tree or as a list. All methods and properties pertaining to the Data Sets are in the class DicomDataSet.

LEADTOOLS provides a number of methods and properties for maneuvering through the Data Set, getting and setting Data Set information, getting and setting Data Element values, searching the Data Set, and creating, loading and saving Data Sets.

For creating, initializing, loading and saving Data Sets, LEADTOOLS provides the following methods:

DicomDataSet.DicomDataSet

DicomDataSet.Initialize

DicomDataSet.Load

DicomDataSet.Save

For maneuvering through the Data Set use the following methods:

DicomDataSet.GetRootElement

DicomDataSet.GetParentElement

DicomDataSet.GetChildElement

DicomDataSet.GetFirstElement

DicomDataSet.GetLastElement

DicomDataSet.GetPreviousElement

DicomDataSet.GetNextElement

LEADTOOLS provides several methods for searching the Data Set. To find specific Modules, use DicomDataSet.FindModule and DicomDataSet.FindModuleByIndex. You can find specific Data Elements using DicomDataSet.FindFirstElement, DicomDataSet.FindLastElement, DicomDataSet.FindPreviousElement, and DicomDataSet.FindNextElement.

To insert new items in the Data Set, call DicomDataSet.InsertElement or DicomDataSet.InsertModule. To insert one or more images in a Data Element of type DicomTagType.PixelData, use DicomDataSet.InsertImage or DicomDataSet.InsertImages.

You can delete individual items from the Data Set using DicomDataSet.DeleteElement. You can delete entire Modules from the Data Set using DicomDataSet.DeleteModule. To delete all items in the Data Set, call DicomDataSet.Reset. To delete one or more images in a Data Element of type DicomTagType.PixelData use DicomDataSet.DeleteImage.

To retrieve values stored in the Value Field of the Data Element LEADTOOLS provides the following:

DicomDataSet.FreeElementValue

DicomDataSet.GetAgeValue

DicomDataSet.GetBinaryValue

DicomDataSet.GetByteValue

DicomDataSet.GetElementValueCount

DicomDataSet.GetDateTimeValue

DicomDataSet.GetDateValue

DicomDataSet.GetDoubleValue

DicomDataSet.GetFloatValue

DicomDataSet.GetImage

DicomDataSet.GetImages

DicomDataSet.GetLongValue

DicomDataSet.GetShortValue

DicomDataSet.GetSringValue

DicomDataSet.GetTimeValue

To set values stored in the Value Field of the Data Element use the following:

DicomDataSet.SetAgeValue

DicomDataSet.SetBinaryValue

DicomDataSet.SetByteValue

DicomDataSet.SetDateTimeValue

DicomDataSet.SetDateValue

DicomDataSet.SetDoubleValue

DicomDataSet.GetFloatValue

DicomDataSet.SetImage

DicomDataSet.SetImages

DicomDataSet.SetIntValue

DicomDataSet.SetShortValue

DicomDataSet.SetStringValue

DicomDataSet.SetTimeValue

To convert a value to or from a string, use DicomDataSet.GetConvertValue or DicomDataSet.SetConvertValue.

To determine whether you have a valid Data Element object, call DicomDataSet.ExistsElement.

When a method that gets an image from a Data Set is called, such as DicomDataSet.GetImage or DicomDataSet.GetImages, LEADTOOLS, by default will pre-process the data in the image for optimum display and image processing.

LEADTOOLS provides several methods and properties for retrieving information about the Data Set or the DICOM file. To determine the number of images in a specified Data Element or in the entire Data Set use DicomDataSet.GetImageCount. To determine the number of Modules present in the entire Data Set use DicomDataSet.ModuleCount. You can determine which level a specific element is on by calling DicomDataSet.GetElementLevel.

Transferring data between a server and a client requires that both entities use the same Transfer Syntax. The Transfer Syntax for a Data Set can be changed using the DicomDataSet.ChangeTransferSyntax method.

To determine whether an element is volatile, call DicomDataSet.IsVolatileElement.

To retrieve information about an image, call the DicomDataSet.GetImageInformation method.

Finally, for getting and setting the contents of the Preamble, LEADTOOLS provides DicomDataSet.GetPreamble and DicomDataSet.SetPreamble.

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