CSOMerge¶
-
MLModule
¶ genre CSOModule
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLCSOModules
definition MLCSOModules.def see also CSOManager
keywords contour
,append
,add
Purpose¶
The module CSOMerge
merges two input CSOLists by some criteria and generates a copy as an output list.
Usage¶
Adjust the merge criteria to your needs and either perform the merging manually or let the merging be performed at certain notifications.
Details¶
The module can be used in two ways:
- Simply merge two lists and generate a new one,
- Expand or update the ouput CSOList by the second CSOList.
When two lists are merged the ids of the CSOs and groups must be changed obviously. To keep track of the correspondence, the module provides a couple of fields which contain a comma separated list of id mappings. These mappings exist for CSOs and CSOGroups for the first and the second input CSOLists. Each entry specifies two ids, separated by a colon, whereas the first id is the source id, i.e. the id from the input list.
Merging two lists¶
To merge two lists just connect them and press update if the Mode
is not set to Auto Update. If auto update is enabled one can specify the notifications on which an update is triggered.
Expanding/Updating one list by another¶
If one list should be updated or expanded by another, the output of the CSOMerge module has to be connected to this module’s first input using a CSOManager which does not directly work on the input CSOList. Then the output CSOList gets expanded by the second one on each update.
If certain output CSO should be updated, i.e. CSOs from the first input, the field Update first list by second list
needs to be set to true. Additionally, a mapping of CSO ids (CSO Id Mapping
) has to be specified. For each source CSO that should update a destination CSO, the respective ids have to be entered, separated by a colon. Multiple id pairs are separated by commas.
Input Fields¶
inCSOList¶
-
name:
inCSOList
, type:
CSOList(MLBase)
, deprecated name:
inputCSOList0
¶ One of the CSOLists that should be merged.
For accessing this object via scripting see the Scripting Reference:MLCSOListWrapper
.
inputCSOList1¶
-
name:
inputCSOList1
, type:
CSOList(MLBase)
¶ The second CSOLists that should be merged.
For accessing this object via scripting see the Scripting Reference:MLCSOListWrapper
.
Output Fields¶
outCSOList¶
-
name:
outCSOList
, type:
CSOList(MLBase)
, deprecated name:
outputCSOList
¶ A merged copy of the input CSOLists.
For accessing this object via scripting see the Scripting Reference:MLCSOListWrapper
.
Parameter Fields¶
Field Index¶
Visible Fields¶
Mode¶
-
name:
updateMode
, type:
Enum
, default:
AutoClear
¶ Defines the update mode of this module. This is how it reacts to changes of the input CSOLists and to notification of those CSOLists.
Values:
Title | Name | Description |
---|---|---|
Off | Off | Do not react on changes or notifications. |
Auto Update | AutoUpdate | Merge anew if any input CSOList (field) changes. |
Auto Clear | AutoClear |
Auto apply¶
-
name:
autoApply
, type:
Bool
, default:
FALSE
¶ If checked, the module computes anew if any field on the module’s GUI is changed.
Work directly on (first) input CSOList¶
-
name:
workDirectlyOnInputList
, type:
Bool
, default:
FALSE
¶ If checked, the module merges the second input CSOList into the first input CSOList which is the original input CSOList, not a copy.
Enable Undo/Redo¶
-
name:
useUndoRedo
, type:
Bool
, default:
TRUE
, deprecated name:
enableUndoRedo
¶ If checked, the performed merge operations can be undone/redone using the CSO undo/redo mechanism.
Clone first CSO list¶
-
name:
cloneFirstCSOList
, type:
Bool
, default:
FALSE
¶ If checked, the first CSO list gets cloned before being merged with the second one. This is helpful if you need to preserve the CSO ids of the first list.
First CSO Ids¶
-
name:
mapFirstCSOIdsToThisCSOIds
, type:
String
, persistent:
no
¶ Shows the mapping information about the CSOs of the first input list. I.e. which output CSO corresponds to which input CSO.
First Group Ids¶
-
name:
mapFirstGroupIdsToThisGroupIds
, type:
String
, persistent:
no
¶ Shows the mapping information about the CSOGroups of the first input list.
Second CSO Ids¶
-
name:
mapSecondCSOIdsToThisCSOIds
, type:
String
, persistent:
no
¶ Shows the mapping information about the CSOs of the second input list. I.e. which output CSO corresponds to which input CSO.
Second Group Ids¶
-
name:
mapSecondGroupIdsToThisGroupIds
, type:
String
, persistent:
no
¶ Shows the mapping information about the CSOGroups of the second input list.
Group Merge Mode¶
-
name:
mergeMode
, type:
Enum
, default:
BY_LABEL
, deprecated name:
mergeGroupsWithSameLabel
¶ Defines the mode for group merging.
Values:
Title | Name | Deprecated Name | Description |
---|---|---|---|
None | None | FALSE | No groups are merged. |
BY_ID | BY_ID | Groups with the same ID are merged. | |
BY_LABEL | BY_LABEL | TRUE | Groups with the same label are merged. |
Update first list by second list¶
-
name:
updateCSOsBySecondList
, type:
Bool
, default:
FALSE
¶ If checked, the mapping specified in CSO Id Mapping is used to update CSOs from the first input list by CSOs from the second input list.
CSO Id Mapping¶
-
name:
updateCSOsBySecondListMap
, type:
String
¶ Sets a comma separated list of id mappings. One specifies the id of a CSO from the second list and then, separated by a colon, the id of a CSO from the first list. The later one will be replaced by the former.
Listen to finishing (listenToFinishingCSONotifications)¶
-
name:
listenToFinishingCSONotifications
, type:
Bool
, default:
TRUE
¶ If checked, the modules updates when input CSOs send the finish notification.
Listen to finishing (listenToFinishingGroupNotifications)¶
-
name:
listenToFinishingGroupNotifications
, type:
Bool
, default:
TRUE
¶ If checked, the module updates when input CSOGroups send the finish notification.
Listen to selection changes (listenToSelectionCSOChangedNotifications)¶
-
name:
listenToSelectionCSOChangedNotifications
, type:
Bool
, default:
TRUE
¶ If checked, the module updates when input CSOs send the selection changed notification.