Class Module | Description |
Constants | In order to improve code reliability, and as a service to programmers, DicomObjects includes constants for some of the commonly used DICOM well-known UIDs, which are listed here, by category. Note that the import procedures for some languages (including Microsoft Visual C++) do not include string constants. If you wish to use these constants in such environments, then you are advised to copy this list from the help file into a header file, and edit to suit the requirements of your language. |
DicomAttribute | Each DicomAttribute corresponds to one data element within a DICOM Data Set or Image |
DicomAttributes | This is a collection of DicomAttribute objects, including that represented by a DicomImage’s or DicomDataSet’s Attributes Property. |
DicomConnection | A DicomConnection Object represents the current state of an association, and may either be created automatically in response to an incoming query request, or explicitly by the client program. Methods of this object are used to send data, images, and verification requests. There is not a one-to-one correspondence between DicomConnections and associations, as one incoming association may cause several DicomConnection objects to be produced, one in response to each incoming command, and likewise, an outgoing DicomConnection object may (if synchronous) during its life serve more than one association, but at a given time, each association is represented by one, and only one DicomConnection.
As most clients in which DicomObjects will be used are single-threaded, the DicomConnection object is structured so as to allow asynchronous operation, permitting multiple operations to be performed simultaneously. For incoming C-FIND, C-GET or C-MOVE requests, details of the request are found in the Operation, Root and Request properties. The client then finds the data and/or images required, and returns them through one or more SetDestination, SendData and SendImages methods. The SendStatus method is used both to return pending status messages for C-GET and C-MOVE operations, and the final status for all operations.
For incoming Normalised operations, details of the request are less “interpreted”, as handling such commands as an SCP is an advanced technique for knowledgeable users only. The main incoming command is found, as a DicomDataSet, in the Command property, and the associated identifier is, as for the composite operations, in Request.
DicomConnection objects may be created under user control either directly (e.g. using Visual Basic’s ‘new’ command, or using the OLE name DicomObjects.DicomConnection) or via the New method of DicomViewer or DicomServer objects. The method used for creation controls the allowable values for the Mode property. When created directly, the Mode is always doSync, and cannot be modified, as there would be no mechanism for ActionComplete events to be fired in these circumstances. When created via the DicomViewer or DicomServer objects, then Mode is initially doAsync, but this may be modified before the first operation is initiated. In this case, if Mode is left as doSync, or changed to doAsync, then the object through which the DicomConnection is created receives the ActionComplete events. The Close method should be applied to such all user created DicomConnection objects before allowing them to be destroyed.
See the Mode property for details of synchronising options. |
DicomConnections | This is a true OLE collection, a consisting of DicomConnection objects. |
DicomContext | A DicomContext represents a DICOM presentation context, and is used in association negotiation, and in the selection of transmission formats (transfer syntaxes). DicomContext items only exist within a DicomContexts collection, and more information on the use of DicomContext items may be found in the DicomContexts entry. |
DicomContexts | A DicomContexts collection consists of DicomContext objects, and represents the set of DICOM presentation contexts offered or accepted for an association negotiation.
Most applications will not need to use this collection, as appropriate defaults are provided in most circumstances, and even these may be modified via registry entries, but this collection may prove useful where it is necessary to use different presentation contexts (giving different transfer syntaxes) for different remote entities, such as in teleradiology. When used on incoming connections, it can also be very useful for debugging purposes. |
DicomDataSet | A DicomDataSet represents a series of Data Elements, and some associated properties. |
DicomDataSets | This is a true OLE collection, a collection of DicomDataSet objects, such as that returned by a DicomQuery Object’s DoQuery method.
This data type is also used to represent data elements of the sequence (SQ) type. |
DicomGlobal | This object supports various operations which are not related to other specific objects |
DicomImage | In general, a DicomImage is a superset of the DicomDataSet type, which also contains a collection of attributes, the distinction being that a DicomImage contains pixel data, and is therefore displayable within a DicomViewer control, whereas a DicomDataSet does not contain pixel data, and is not displayable. The different properties and methods reflect this difference. |
DicomImages | This is a true OLE collection, comprising DicomImage objects, including that represented by the DICOM viewer control’s Images Property. |
DicomLabel | A DicomLabel item represents a label, or annotation, to be displayed over an image in a DicomViewer control, or in derived copies of the image. Labels may be ellipses (or circles), rectangles (or squares), lines, text or bitmaps, or other shapes (see LabelType for a full list), and the properties control not only the type and size of the object, but many other properties such as colour and line thickness.
Labels may be tied to the viewer control, to the display area in which an image is displayed, or to the image itself, this latter distinction being controlled by the RotateModeWithImage property. All properties have default values, which are suitable for many uses, and each is documented with the appropriate property. The same label may be added into several DicomLabels collections if necessary, but where this is done, subsequent labels will be “cloned” when added, so that they may later be manipulated independently. Also, unambiguous association of each DicomLabel with one image is necessary for the ROI functions. |
DicomLabels | This is a true OLE collection, a consisting of DicomLabel objects.
Although it may be instantiated independently, the most common examples of such collections are the Labels properties of DicomViewer and DicomImage objects, representing the labels to be drawn over that viewer or image respectively.
|
DicomLicense | An object which represents a single license allowing specific use of DicomObjects on this machine. |
DicomLicenseGlobal | This object supports various operations related to the licensing of DicomObjects. |
DicomPrint | Object to simplify printing to DICOM printers |
DicomProjection | This class provides a "view" of an image, including both 3D images and Fusion image. |
DicomQuery | A DicomQuery Object is an externally creatable OLE automation object that facilitates the querying of information and retrieval of images from DICOM servers that support the Query/Retrieve protocols as a Service Class Provider (SCP)
A useful feature of this object is that is re-usable, so as the user descends though a hierarchical search, new constraints may be added, and the search repeated, with having to re-set those already used. |
DicomServer | Automation object providing SCP functionality |
DicomViewer | The primary purpose of this control is the display of DICOM images, and extensive facilities are available to allow images to be obtained from a variety of sources, including files and network operations. There is extensive control over how the images are displayed, including not only the normal width/level controls, but also use of DICOM greyscale presentation states, a wide range of annotations, flipping, zooming etc. |
DicomVolume | An object holding a set of slices which can be used as the basis for 3D reconstructions. |
PropertiesFor3D | As the IDispatch interface does not support true inheritance, the PropertiesFor3D object provides access to properties of a DicomImage object which is in fact a 3D Image |
PropertiesForFusion | As the IDispatch interface does not support true inheritance, the PropertiesForFusion object provides access to properties of a DicomImage object which is in fact a Fusion Image |