ComposeBaseList

MLModule
genre Fields
author Jan-Martin Kuhnigk
package MeVisLab/Standard
dll MLBase
definition MLBase.def
see also DecomposeBaseList, ExtractObjectFromList, SaveBase, LoadBase
keywords object, merge, add, combine, append

Purpose

The module ComposeBaseList composes two or more ml.Base
objects in a single structure, allowing to export/import them to/from a single file.

Because ml.BaseList are also ml::Base objects, complex object trees can be built. However, this module also allows to simply join two BaseLists by creating a new one uniting both lists' elements.

Usage

Attach a base connection to the left and to the right input field. Decide whether an input BaseList shall be treated as a solitary object and connect the BaseList at the output to, e.g., a SaveBase operator.

Details

You can also specify names and IDs for the input objects that will be stored in the base list for later decomposition. By default, the type names will be used as names. Uncheck the checkboxes Use type and Use type to provide your own names for the object.

Windows

Default Panel

../../../Modules/ML/MLBase/mhelp/Images/Screenshots/ComposeBaseList._default.png

Input Fields

The module has two Base inputs that can be connected to any Base (-derived) object.

inObject1

name: inObject1, type: MLBase, deprecated name: inputBase0

inObject2

name: inObject2, type: MLBase, deprecated name: inputBase1

Output Fields

The module has one base output that is always of type BaseList.

outList

name: outList, type: MLBase, deprecated name: outputBaseList

Parameter Fields

Visible Fields

Cascade input lists

name: cascadeMode, type: Bool, default: FALSE

If checked, an input BaseList is stored as a single item of the resulting output BaseList. Otherwise, each input BaseList will be decomposed first, and all their items will be taken over as items of the resulting output BaseList.

Note that, when joining two BaseLists with this parameter disabled, you will not be able to decompose the resulting list later into just the same lists as they were before (or at least not with a single usage of a DecomposeBaseList module). However, there is most likely a workaround, using multiple decomposition/composition modules.

Output List Size

name: outputSize, type: Integer, persistent: no

Sets a maximum amount of items for the output list. A value of 0 means no limit.

ID (objectId1)

name: objectId1, type: Integer, default: 0

Sets IDs to the input objects and stores them within the resulting lists (not within the objects themselves though).

This does not work for an input BaseList that is decomposed into its elements (treat BaseLists like regular objects disabled). When the ID 0 is selected, no ID will be assigned to the object at all.

ID (objectId2)

name: objectId2, type: Integer, default: 0

Sets assigned IDs to the input objects and stores them within the resulting lists (not within the objects themselves though).

This does not work for an input BaseList that is decomposed into its elements (treat BaseLists like regular objects disabled). When the ID 0 is selected, no ID will be assigned to the object at all.

Name (objectName1)

name: objectName1, type: String, deprecated name: leftObjectName

Sets names to the input objects and stores the names within the resulting lists (not within the objects themselves though).

This does not work for an input base list that is decomposed into its elements (treat BaseLists like regular objects disabled). When connecting an input field to a base output field, the type of the object contained will be taken as default name.

Use type (useObjectType1)

name: useObjectType1, type: Bool, default: TRUE, deprecated name: useLeftObjectType

If unchecked, the Name is set as the object's name, otherwise the object's type is used.

Name (objectName2)

name: objectName2, type: String, deprecated name: rightObjectName

Sets names to the input objects and stores the names within the resulting lists (not within the objects themselves though).

This does not work for an input base list that is decomposed into its elements (treat BaseLists like regular objects disabled). When connecting an input field to a base output field, the type of the object contained will be taken as default name.

Use type (useObjectType2)

name: useObjectType2, type: Bool, default: TRUE, deprecated name: useRightObjectType

If unchecked, the Name is set as the object's name, otherwise the object's type is used.