Purpose

Note: MultiFileVolumeListPROutput ** is work in progress!**

MultiFileVolumeListPROutput is dedicated to render Presentation State and Graphic Annotation Module information according to the DICOM standard, C.10.5 Graphic Annotation Module. It must be available in network with a connected input MultiFileVolumesList and can be displayed as View2DExtension in a View2D if DICOM UIDs define such a mapping.

If a specific volume is selected then possibly available presentation state information and referenced volumes in the MultiFileVolumeList are shown.

It provides configurable input settings and connectors to get access to MultiFileVolumes from different sources; the typical way is to use the inputAccessConnector with enabled Use Base Input as source where a DirectDicomImport module is connected which has imported a list of volumes.

MultiFileVolumeListPROutput currently supports the most commonly used subset of DICOM Presentation States:

  • Display Shutter module C.7.6.11.

  • Graphic Annotation Sequence (0070,0001):

    • Rendered are: Circles, Ellipses, Lines, Points, Unformatted Text, and Anchor points.
    • Limitations:
      • Anchor point rendering is sometimes inappropriate.
      • INTERPOLATED mode is still incomplete, interpolation is still sub-optimally implemented.
      • Text Style Sequence (0070,0231) in items of the Text Object Sequence (0070,0008) is ignored.
      • Line Style Sequence (0070,0232) in items of the Graphic Object Sequence (0070,0009) is ignored.
      • Fill Style Sequence (0070,0233) in items of the Graphic Object Sequence (0070,0009) is ignored.
      • Compound Graphic Sequence (0070,0209) is ignored.
  • Window Center(0028,1050) + Window Width(0028,1051) + VOI LUT Function (0028,1056)= “LINEAR”, empty, or not set of Softcopy VOI LUT Sequence (0028,3110) entries (default is off).

Windows

Default Panel

../../../Projects/MultiFileVolume/MLMultiFileVolumeListPROutput/Modules/mhelp/Images/Screenshots/MultiFileVolumeListPROutput._default.png

Input Fields

inputAccessConnector

name: inputAccessConnector, type: MLBase

see MultiFileVolumeListImageOutput.inputAccessConnector

inputMessageFilterPlugin

name: inputMessageFilterPlugin, type: MLBase

see MultiFileVolumeListImageOutput.inputMessageFilterPlugin

Output Fields

outputAccessConnector

name: outputAccessConnector, type: MLBase

see MultiFileVolumeListBaseOutput.outputAccessConnector

outputSoView2DPresentationStates

name: outputSoView2DPresentationStates, type: SoNode

The connector typically to be connected to a View2D in whose display the presentation state information shall be rendered.

Parameter Fields

Visible Fields

Use Base Input

name: useBaseInput, type: Bool, default: TRUE

see MultiFileVolumeListImageOutput.useBaseInput

Load Result Cache

name: loadResultCache, type: Trigger

Loads a volume list from cached result volume.

see also MultiFileVolumeListImageOutput.loadResultCache

Auto Load Result Cache

name: autoLoadResultCache, type: Bool, default: FALSE

If enabled then the cache file is loaded automatically from file.

see also MultiFileVolumeListImageOutput.autoLoadResultCache

Cache File Path

name: cacheFilePath, type: String

File containing a list of cached image volumes.

see also MultiFileVolumeListImageOutput.cacheFilePath

Volume Index

name: outVolIdx, type: Integer, default: 0, minimum: -1

Sets the index of the volume currently selected in the volume list, -1 invalidates the selected volume.

see also MultiFileVolumeListImageOutput.outVolIdx

Number of volumes

name: numVolumes, type: Integer, default: 0

This read-only field shows number of available volumes.

see also MultiFileVolumeListImageOutput.numVolumes

Volume Info Dump

name: volumeInfoDump, type: String, persistent: no

Shows a collection of available information about the currently selected volume.

see also MultiFileVolumeListImageOutput.volumeInfoDump

Tag Dump Size

name: tagDumpSize, type: Integer, default: 10000

Maximum number of characters shown in the Tag Dump field. Too large values can degrade performance when viewing the DICOM tag list, too short values clamp the tag dump at the specified number of tags; this is typically indicated with “… tag list shortened and not shown completely” at the end of the dump.

see also MultiFileVolumeListImageOutput.tagDumpSize

Dump Private Tag Values

name: dumpPrivateTagValues, type: Bool, default: FALSE

If enabled then values of private tags are decoded if decoders are available.

see also MultiFileVolumeListImageOutput.dumpPrivateTagValues

Num shown binary bytes

name: numShownBinaryEntries, type: Integer, default: 8

Number of shown entries of binary tags.

see also MultiFileVolumeListImageOutput.numShownBinaryEntries

Annotate

name: annotate, type: Bool, default: FALSE

If enabled then tags are annotated with further descriptive information such as possible types (1=Mandatory, 1C=Conditionally Mandatory, 2=Mandatory, may have zero or one item, 2C=Conditionally Mandatory, but may be empty, 3=Optional) and possible meanings of the tag. Note that no context analysis is performed for that information and therefore all possible and perhaps redundant meanings are shown.

see also MultiFileVolumeListImageOutput.annotate

Filter

name: regExLineFilter, type: String

See MultiFileVolumeListImageOutput.regExLineFilter for details.

see also MultiFileVolumeListBaseOutput.regExLineFilter

Tag Dump

name: tagDump, type: String, persistent: no

Shows the DICOM tag list of currently selected volume (the dump will be clamped if the tag list is too large).

see also MultiFileVolumeListImageOutput.tagDump

First Volume Index Derived From

name: firstVolumeIndexDerivedFrom, type: Integer, persistent: no

The module tries to determine the volume(s) (or to be more precise: the frames) from which the image has been derived. If this or these volumes are also part of the volume list connected to the input of this module, then First Volume Index Derived From shows the volume index of the first of these volumes. Note that no, one or multiple of such volumes can exist. The default is -1 if no volume has been found. See also Volume Indexes Derived From.

see also MultiFileVolumeListImageOutput.firstVolumeIndexDerivedFrom

Volume Indexes Derived From

name: volumeIndexesDerivedFrom, type: String, persistent: no

As described for First Volume Index Derived From the module tries to determine the volume(s) (or to be more precise: the frames) from which the image has been derived. If this or these volumes are also part of the volume list connected to the input of this module, then Volume Indexes Derived From shows a space separated list of all these volumes. The default is empty if no volume has been found. See also First Volume Index Derived From.

see also MultiFileVolumeListImageOutput.volumeIndexesDerivedFrom

First Shared Frame Of Reference Volume Index

name: firstSharedFrameOfReferenceVolumeIndex, type: Integer, persistent: no

The module tries to determine the volume(s) (or to be more precise: the frames) which share the same FrameOfReferenceUID. If this or these volumes are also part of the volume list connected to the input of this module, then First Shared Frame Of Reference Volume Index shows the volume index of the first of these volumes. Note that no, one or multiple of such volumes can exist. The default is -1 if no volume has been found. See also Shared Frame Of Reference Volume Indexes.

see also MultiFileVolumeListImageOutput.firstSharedFrameOfReferenceVolumeIndex

Shared Frame Of Reference Volume Indexes

name: sharedFrameOfReferenceVolumeIndexes, type: String, persistent: no

As described for First Shared Frame Of Reference Volume Index the module tries to determine the volume(s) (or to be more precise: the frames) which share the same FrameOfReferenceUID. If this or these volumes are also part of the volume list connected to the input of this module, then Shared Frame Of Reference Volume Indexes shows a space separated list of all these volumes. The default is empty if no volume has been found. See also First Shared Frame Of Reference Volume Index.

see also MultiFileVolumeListImageOutput.sharedFrameOfReferenceVolumeIndexes

Enable Rendering

name: enableRendering, type: Bool, default: TRUE

Render annotations if enabled, otherwise do not render anything.

Enable softcopy VOI LUT display

name: enableSoftcopyVOILUTDisplay, type: Bool, default: FALSE

If enabled then Softcopy VOI LUTs are set on affected frames, otherwise not. Note: If a Softcopy VOI LUT of appropriate type (see “Purpose” for limitations) can be set for a displayed frame then this overwrites any windowing in View2D. Frame windowing therefore will not be editable as long as a Softcopy VOI LUT is active on that frame.

Alpha

name: alpha, type: Double, default: 1, minimum: 0, maximum: 1

The transparency used for drawn annotations, 0 = fully transparent, 1 = opaque.

Note

  • The currently drawn Presentation States as they are defined in DICOM tags do not specify a transparency; according to the DICOM tags they should be rendered opaque. Therefore this value is only for experimental usage and may be removed in future versions.
  • Objects of Graphic type (0070,0023) POLYLINE or INTERPOLATED are allowed to be concave and the used algorithm to render them in OpenGL may draw some polygons multiple which may display transparencies inhomogeneous.
  • Unformatted text currently does not make use of the selected transparency value.

Font Size

name: fontSize, type: Double, default: 12

The font size (in pixels) to be used for unformatted text.

Font Name

name: fontName, type: String

Font to be used for unformatted text, empty or unknown name uses a default font; Arial, Courier, or CourierNew might be available fonts.

Render Text Bounding Boxes

name: renderTextBoundingBoxes, type: Bool, default: TRUE

Render bounding boxes around unformatted texts (if available), otherwise do not render them.

Render Interpolation Points

name: renderInterpolationPoints, type: Bool, default: FALSE

If enabled then render small circles around points of interpolated line, otherwise do not render them.

Intermediate Line Segments

name: intermediateLineSegments, type: Integer, default: 10

The number of line segments to used between interpolated points.

Interpolation Point Circle Radius

name: interpolationPointCircleRadius, type: Double, default: 2

If drawn: the radius of circles drawn around points of interpolated lines.

Render Anchor Points

name: renderAnchorPoints, type: Bool, default: TRUE

If enabled then anchor points are drawn, otherwise not.

Anchor Point Size

name: anchorPointSize, type: Double, default: 3

If drawn: the diameter of drawn anchor points.

Show volume index infos in Overview tab

name: showVolumeIndexInfos, type: Bool, default: FALSE

Display additional index information in Overview tab, however, may degrade performance.

Info

name: info, type: String, default: Successfully checked input volumes for Presentation State information., Found no volumes with Presentation State information., , No volume available.

Shows a collection of important overview information about the currently selected SEG volume.

Content Label

name: contentLabel, type: String, persistent: no

Output field to provide the value of Content Label tag (0070,0080) of currently selected volume or empty if invalid or empty.

Content Description

name: contentDescription, type: String, persistent: no

Output field to provide the value of Content Description tag (0070,0081) of currently selected volume or empty if invalid or empty.

Content Creators Name

name: contentCreatorsName, type: String, persistent: no

Output field to provide the value of Content Creators’s Name tag (0070,0084) of currently selected volume or empty if invalid or empty.

Derivation Description

name: derivationDescription, type: String, persistent: no

Output field to provide the value of Derivation Description tag (0008,2111) of currently selected volume or empty if invalid or empty.

Hidden Fields

updateBaseOutputInformationDone

name: updateBaseOutputInformationDone, type: Trigger

Field which is touched after the completion of updates of all fields belonging to the same class type this field belongs to. Note that derived classes may update their fields later.

see also MultiFileVolumeListImageOutput.updateBaseOutputInformationDone

updateImageOutputInformationDone

name: updateImageOutputInformationDone, type: Trigger

Field which is touched after the completion of updates of all fields belonging to the same class type this field belongs to. Note that derived classes may update their fields later.

see also MultiFileVolumeListImageOutput.updateImageOutputInformationDone

updatePROutputInformationDone

name: updatePROutputInformationDone, type: Trigger

Field which is touched after the completion of updates of all fields belonging to the same class type this field belongs to. Note that derived classes may update their fields later.