Package com.openinventor.inventor.fields
Class SoMFFieldContainer
java.lang.Object
com.openinventor.inventor.Inventor
com.openinventor.inventor.fields.SoField
com.openinventor.inventor.fields.SoMField
com.openinventor.inventor.fields.SoMFFieldContainer
Multiple-value field containing any number of pointers to fieldContainers.
This field maintains a set of pointers to
SoFieldContainer
instances, correctly maintaining their reference counts.
SoMFFieldContainers are written to file as one or more fieldContainers. When more than one value is present, all of the values are enclosed in square brackets and separated by commas;
-
Nested Class Summary
Nested classes/interfaces inherited from class com.openinventor.inventor.fields.SoField
SoField.FieldTypes
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
Field Summary
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
Constructor Summary
ConstructorsConstructorDescriptionSoMFFieldContainer
(SoFieldContainer fieldContainer, String fieldName, SoField.FieldTypes fieldType) Default constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addFieldContainer
(SoFieldContainer fieldContainer) Adds a fieldContainer as last one in group.void
Temporary disable value deleting.boolean
int
find
(SoFieldContainer targetValue) Calls find(targetValue, false).int
find
(SoFieldContainer targetValue, boolean addIfNotFound) Finds the given targetValue in the array and returns the index of that value.int
findFieldContainer
(SoFieldContainer fieldContainer) Finds index of given fieldContainer within group.getFieldContainer
(int index) Returns pointer to nth fieldContainer.int
Returns number of fieldContainers.getValueAt
(int i) void
insertFieldContainer
(SoFieldContainer fieldContainer, int newFieldContainerIndex) Adds a fieldContainer so that it becomes the one with the given index.void
Removes all fieldContainers from group.void
removeFieldContainer
(int index) Removes fieldContainer with given index from group.void
removeFieldContainer
(SoFieldContainer fieldContainer) Removes first instance of given fieldContainer from group.void
replaceFieldContainer
(int index, SoFieldContainer newFieldContainer) Replaces fieldContainer with given index with new fieldContainer.void
replaceFieldContainer
(SoFieldContainer oldFieldContainer, SoFieldContainer newFieldContainer) Replaces first instance of given fieldContainer with new fieldContainer.void
set1Value
(int index, SoFieldContainer newValue) Sets the index'th value in the array to newValue.void
setValue
(SoFieldContainer newValue) Sets the first value in the array to newValue, and deletes.void
setValues
(int start, SoFieldContainer[] newValues) Sets num values starting at index start to the values.Methods inherited from class com.openinventor.inventor.fields.SoMField
deleteValues, deleteValues, get1, getNum, insertSpace, set1, setNum
Methods inherited from class com.openinventor.inventor.fields.SoField
appendConnection, appendConnection, connectFrom, connectFrom, disconnect, disconnect, disconnect, enableConnection, get, getConnectedEngine, getConnectedField, getContainer, getNumConnections, getValueSize, isConnected, isConnectedFromEngine, isConnectedFromField, isConnectedFromVRMLInterp, isConnectionEnabled, isDefault, isIgnored, set, setIgnored, touch
Methods inherited from class com.openinventor.inventor.Inventor
dispose, getNativeResourceHandle
-
Constructor Details
-
SoMFFieldContainer
public SoMFFieldContainer(SoFieldContainer fieldContainer, String fieldName, SoField.FieldTypes fieldType) Default constructor.
-
-
Method Details
-
find
Calls find(targetValue, false). -
findFieldContainer
Finds index of given fieldContainer within group. -
getValueAt
-
setValues
Sets num values starting at index start to the values. in newValues. The array will automatically be made larger to accommodate the new values, if necessary. In that case, if field's values are stored in an user data array, this array is no more used. -
find
Finds the given targetValue in the array and returns the index of that value. in the array. If the value is not found, -1 is returned. If addIfNotFound is set, then targetValue is added to the end of the array (but -1 is still returned). -
getNumFieldContainers
public int getNumFieldContainers()Returns number of fieldContainers. -
disableDeleteValues
public void disableDeleteValues()Temporary disable value deleting. -
removeFieldContainer
public void removeFieldContainer(int index) Removes fieldContainer with given index from group. -
addFieldContainer
Adds a fieldContainer as last one in group. -
insertFieldContainer
Adds a fieldContainer so that it becomes the one with the given index. -
getFieldContainer
Returns pointer to nth fieldContainer. -
removeFieldContainer
Removes first instance of given fieldContainer from group. -
setValue
Sets the first value in the array to newValue, and deletes. the second and subsequent values. If field's values are stored in an user data array, this array is no more used. -
set1Value
Sets the index'th value in the array to newValue. The array will be automatically expanded, if necessary. In that case, if field's values are stored in an user data array, this array is no more used. -
replaceFieldContainer
public void replaceFieldContainer(SoFieldContainer oldFieldContainer, SoFieldContainer newFieldContainer) Replaces first instance of given fieldContainer with new fieldContainer. -
removeAllFieldContainers
public void removeAllFieldContainers()Removes all fieldContainers from group. -
equals
-
replaceFieldContainer
Replaces fieldContainer with given index with new fieldContainer.
-