Purpose

The DicomModifySubTreeSelectorPlugin selects DCMTree subtrees from a currently processed DCMTree which then are modified by appended DicomModify instances. It is especially useful to build networks of DicomModifyPlugin modules which also change tags in sequences or the Structrured Multiframe DICOM trees information built for higher dimensional ML images.

Usage

Append a DicomModifyTagsPlugin, a DicomModifyImageTagsPlugin, or another DicomModifySubTreeSelectorPlugin to the input and configure the subtree to be modified.

Windows

Default Panel

../../../Projects/DICOM/MLDicomModify/Modules/mhelp/Images/Screenshots/DicomModifySubTreeSelectorPlugin._default.png

Input Fields

inputModifierList

name: inputModifierList, type: MLBase

Here other DicomModifyTagsPlugin modules can be connected to apply tag manipulations to sequence entries. In contrast to other DicomModifyTagsPlugin’s they are called only on the sequence entries selected by fields of this module. Use preInputModifierList to apply modifications to the normal DICOM tree before sequence entries are modified.

preInputModifierList

name: preInputModifierList, type: MLBase

Here other DicomModifyTagsPlugin modules can be connected to apply tag manipulations to the normal DICOM tree before any modifications are applied any sequence tags; this, for example, can be used to create a sequence tag before manipulating its entries. Take care that the plugins connected to inputModifierList are applied to the entries of the sequence.

Output Fields

outputModifierList

name: outputModifierList, type: MLBase

The outputModifierList fields provides a reference-counted Base object to be connected to modules which then can use DicomModifySubTreeSelectorPlugin to apply modifications to DICOM trees. Typically this are modules handling DCMTrees or other DicomModifyTagsPlugin (or derived) modules. Then append the module itself to other modules such as DicomModifyMultiFileVolumeExport, ModifyDicomTreeAndImage, or ModifyDicomTree which make use of it to modify their processed DICOM trees.

Parameter Fields

Field Index

Is Valid ID: Bool Ztu Frames: String
Sequence Entries: String  
Sequence Tag Id: String  
Sub Tree Selection Mode: Enum  
TSlices Entries: String  
USlices Entries: String  
ZSlices Entries: String  
Ztu Frame Value List: String  

Visible Fields

Sub Tree Selection Mode

name: subTreeSelectorModificationMode, type: Enum, default: DoNotModify

The way how the DICOM tag with the given id is modified with value.

Values:

Title Name Description
Do Not Modify DoNotModify No changes are applied to subtrees.
Modify ZTU SMF Frame Slices ModifyZTU_SMF_Frame_Slices In the MeVis Structured Multiframe sequence the positions described by ZSlices Entries, TSlices Entries, and USlices Entries are modified.
Modify ZTU SMF Frames ModifyZTU_SMF_Frames The frames of the MeVis Structured Multiframe sequence which are described in Ztu Frames are modified.
Modify Sequence With Id ModifySequenceWithId The entries described in Sequence Entries of the sequence tag with ID Sequence Tag Id are modified.

ZSlices Entries

name: zSlicesEntries, type: String, default: 0-

List of z-coordinates of SMF-Tree-Frames which shall be modified. For examples see the Sequence Entries documentation.

TSlices Entries

name: tSlicesEntries, type: String, default: 0-

List of t-coordinates of SMF-Tree-Frames which shall be modified. For examples see the Sequence Entries documentation.

USlices Entries

name: uSlicesEntries, type: String, default: 0-

List of u-coordinates of SMF-Tree-Frames which shall be modified. For examples see the Sequence Entries documentation.

Ztu Frames

name: ztuFrames, type: String

List of explicit ztu-coordinate triples of SMF-Tree-Frames which shall be modified.

Ztu Frame Value List

name: ztuFrameValueList, type: String

This field allows the specification of a list of ZTUIndexes where each index must have the following format

Z T U:Value

Z - The Z coordinate of a subtree in a MeVis Structured Multiframe (SMF) tag in one of the modes ModifyZTU_SMF_Frames or ModifyZTU_SMF_FrameSlices or the index of a subtree of the sequence with Sequence Tag Id in ModifySequnceWithId.

T - The T coordinate of a subtree in a MeVis Structured Multiframe (SMF) tag in one of the modes ModifyZTU_SMF_Frames or ModifyZTU_SMF_FrameSlices

U - The U coordinate of a subtree in a MeVis Structured Multiframe (SMF) tag in one of the modes ModifyZTU_SMF_Frames or ModifyZTU_SMF_FrameSlices

Value - The value to be used instead of a given modification value of an appended modification plugin. This usually will be used for ALL modifiers of the plugin (for example DicomModifyTagsPlugin provides multiple modifiers which all will be affected). Value may contain backslashes for modes where the value is split (some modification plugins support that; see for example DicomModifyTagsPlugin.Split0). It also may contain one replacement of the tag id on which the plugin operation shall be performed. The ID must be of the format $$TAG_ID=IdValue$$ where IdValue can either be the space-less name of the tag or the ID in the format (ABCD,EFGH) where ABCD and EFGH are four-digit hexadecimal values. Examples: 0 0 0:$$TAG_ID=Modality$$CT or 0 0 0:$$TAG_ID=(0008,0060)$$MR.

Notes:

  • Dependent on the implemented modification performed by appended plugins the specified values might or might not use be used. It is up to the user of this module to make use of appropriate modes.
  • (Z T U) coordinates out of valid range or malformatted ones are silently ignored.

Sequence Tag Id

name: subTreeSelectorTagId, type: String

Sequence Tag Id is the ID of the sequence tag whose entries (denoted by Sequence Entries) shall be modified. An incorrect id or a non sequence tag will be ignored.

Sequence Entries

name: sequenceEntries, type: String, default: 0-

List of sequence tag entries which shall be modified. Indexes out of range are handled as error and no modification will be applied to any subtree in that case. The allowed index range is [0, N-1] where N is the number of entries in the sequence tag. On empty sequences tags no modification is applied.

Separators between numbers can be spaces, commas, or semicolons, recommended are only spaces.

Examples:

  • 1-3 traverses indexes 1, 2, and 3.
  • 3-1 traverses indexes 3, 2, and 1.
  • 1- traverses indexes all available indexes starting with 1.
  • -3 traverses indexes 0, 1, 2, and 3.
  • 1 7 2 4 9- traverses indexes 1, 7, 2, 4, and all indexes starting with 9 and higher.

Is Valid ID

name: subTreeSelectorIsValidId, type: Bool, default: FALSE

Shows whether the tag id could be parsed successfully.