Workspace 6.21.5
Understanding Compose Group

Basic Usage

A compose group operation allows you to build up a particular ObjectGroup subtype based on its immediate child objects. The output is composed of the data supplied at the inputs, essentially pulling the input data together under a single data object. Right-click on a ComposeGroup operation to change its data type and optionally change the name of the data (which changes the name of the output). When changing the data type for a ComposeGroup operation, the set of inputs will be re-created to reflect the structure of the new data type and any connections to the old inputs will be deleted. It is normal practice to create a ComposeGroup operation, set its data type (and optionally its name) and then leave it like that.

When writing their own workspace plugins, developers may prefer to create new data types as ObjectGroup subclasses because they get a lot of functionality for free (composing, decomposing, serializing, etc.). As a result, users may initially find that there seems to be no way to create a particular data type in the workspace. When faced with this situation, it is often useful to create a ComposeGroup operation and see if that data type is listed as one of the data types that can be composed. Workspace plugin authors frequently do not supply a builder operation for a data type that ComposeGroup already supports because ComposeGroup is already sufficient.

ComposeGroup operations are meant to be used for data types that are ObjectGroup subclasses. You should avoid using them for any data types that dynamically change their own grouping structure. At time of writing, no such dynamically changing ObjectGroup subclasses exist in the workspace, but it is possible this may change in the future. If in doubt, consult the documentation for the data type of interest. If nothing is mentioned there, it should be safe to use it with ComposeGroup.

See also
Polymorphic Operations, DecomposeGroup