Class SoMFFieldContainer


  • public class SoMFFieldContainer
    extends SoMField
    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;

    • Constructor Detail

    • Method Detail

      • find

        public int find​(SoFieldContainer targetValue)
        Calls find(targetValue, false).
      • findFieldContainer

        public int findFieldContainer​(SoFieldContainer fieldContainer)
        Finds index of given fieldContainer within group.
      • setValues

        public void setValues​(int start,
                              SoFieldContainer[] newValues)
        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

        public int find​(SoFieldContainer targetValue,
                        boolean addIfNotFound)
        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

        public void addFieldContainer​(SoFieldContainer fieldContainer)
        Adds a fieldContainer as last one in group.
      • insertFieldContainer

        public void insertFieldContainer​(SoFieldContainer fieldContainer,
                                         int newFieldContainerIndex)
        Adds a fieldContainer so that it becomes the one with the given index.
      • getFieldContainer

        public SoFieldContainer getFieldContainer​(int index)
        Returns pointer to nth fieldContainer.
      • removeFieldContainer

        public void removeFieldContainer​(SoFieldContainer fieldContainer)
        Removes first instance of given fieldContainer from group.
      • setValue

        public void setValue​(SoFieldContainer newValue)
        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

        public void set1Value​(int index,
                              SoFieldContainer newValue)
        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

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class SoField
      • replaceFieldContainer

        public void replaceFieldContainer​(int index,
                                          SoFieldContainer newFieldContainer)
        Replaces fieldContainer with given index with new fieldContainer.