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:
For maneuvering through the Data Set use the following methods:
DicomDataSet.GetPreviousElement
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.GetElementValueCount
To set values stored in the Value Field of the Data Element use the following:
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. The DicomDataSet.GetImages method is overloaded. One method includes a callback for further 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.