SoConcatenate — joins separate fields into a single multiple-value field
Contents
Description
This engine joins up to 10 separate fields of a type into a single multiple-valued field of the same
type. The type of the input fields can be any subclass of SoMField The type is specified when an instance
of the class is created. For example, SoConcatenate(SoMFFloat::getClassTypeId()) creates an engine that
concatenates floating-point values.
The input field is a 10-element array, where each element can be connected to single- or multiple-valued
fields. All the values in the input are concatenated together to form one multiple-value field. For
example, if input[0] contains 10 values and input[1] contains 3 values, the output will contain 13
values.
Note that, unlike the output of most engines, output is a pointer. Note also that by default input does
not contain any values, and no value is output from the engine.
File Format/Defaults
Concatenate{type<inputType>input0[]input1[]input2[]input3[]input4[]input5[]input6[]input7[]input8[]input9[]}Inherits From
SoBase > SoFieldContainer > SoEngine > SoConcatenate
Inputs
<inputType>input[10]
Methods
SoConcatenate(SoTypeinputType)
Constructor. The argument specifies the type of values to concatenate.
Name
SoConcatenate — joins separate fields into a single multiple-value field
Outputs
(<outputType>)output
See Also
SoEngineOutput,SoGate,SoSelectOneSoConcatenate(3IV)()
Synopsis
#include<Inventor/engines/SoConcatenate.h>
Inputs from class SoConcatenate:
<inputType>input[10]
Outputs from class SoConcatenate:
(<outputType>)output
Methods from class SoConcatenate:
SoConcatenate(SoTypeinputType)
Methods from class SoEngine:
staticSoTypegetClassTypeId()virtualintgetOutputs(SoEngineOutputList&list)constSoEngineOutput*getOutput(constSbName&outputName)constSbBoolgetOutputName(constSoEngineOutput*output,SbName&outputName)constSoEngine*copy()conststaticSoEngine*getByName(constSbName&name)staticintgetByName(constSbName&name,SoEngineList&list)
Methods from class SoFieldContainer:
voidsetToDefaults()SbBoolhasDefaultValues()constSbBoolfieldsAreEqual(constSoFieldContainer*fc)constvoidcopyFieldValues(constSoFieldContainer*fc,SbBoolcopyConnections=FALSE)SbBoolset(constchar*fieldDataString)voidget(SbString&fieldDataString)virtualintgetFields(SoFieldList&resultList)constvirtualSoField*getField(constSbName&fieldName)constSbBoolgetFieldName(constSoField*field,SbName&fieldName)constSbBoolisNotifyEnabled()constSbBoolenableNotify(SbBoolflag)
Methods from class SoBase:
voidref()voidunref()constvoidunrefNoDelete()constvoidtouch()virtualSoTypegetTypeId()constSbBoolisOfType(SoTypetype)constvirtualvoidsetName(constSbName&name)virtualSbNamegetName()const