Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SoMFEnum(3IV)()						       SoMFEnum(3IV)()

NAME
       SoMFEnum	 --  multiple-value  field containing any number of enumerated
       type values

INHERITS FROM
       SoField > SoMField > SoMFEnum

SYNOPSIS
	  Methods from class SoMFEnum:

     void		 setValue(const	SbName &name)
     void		 set1Value(int index, const SbName &name)
     static SoType	 getClassTypeId()
     virtual void	 getTypeId() const
     int		 operator [](int i) const
     const int *	 getValues(int start) const
     int		 find(int targetValue, SbBool addIfNotFound = FALSE)
     void		 setValues(int start, int num, const int *newValues)
     void		 set1Value(int index, int newValue)
     int		 operator =(int	newValue)
     void		 setValue(int newValue)
     int		 operator ==(const SoMFEnum &f)	const
     int		 operator !=(const SoMFEnum &f)	const
     int *		 startEditing()
     void		 finishEditing()

	  Methods from class SoMField:

     int		 getNum() const
     void		 setNum(int num)
     virtual void	 deleteValues(int start, int num = -1)
     virtual void	 insertSpace(int start,	int num)
     SbBool		 set1(int index, const char *valueString)
     void		 get1(int index, SbString &valueString)

	  Methods from class SoField:

     void		 setIgnored(SbBool ignore)
     SbBool		 isIgnored() const
     SbBool		 isDefault() const
     virtual SbBool	 isOfType(SoType type) const
     SbBool		 set(const char	*valueString)
     void		 get(SbString &valueString)
     void		 touch()
     SbBool		 connectFrom(SoField *fromField)
     SbBool		 connectFrom(SoEngineOutput *fromEngine)
     void		 disconnect()
     SbBool		 isConnected() const
     SbBool		 isConnectedFromField()	const
     SbBool		 getConnectedField(SoField *&writingField) const
     SbBool		 isConnectedFromEngine() const
     SbBool		 getConnectedEngine(SoEngineOutput     *&engineOutput)
			      const
     void		 enableConnection(SbBool flag)
     SbBool		 isConnectionEnabled() const
     int		 getForwardConnections(SoFieldList &list) const
     SoFieldContainer *	 getContainer()	const

DESCRIPTION
       A multiple-value	field that contains any	number of enumerated type val-
       ues, stored as ints. Nodes that use this	field  class  define  mnemonic
       names  for  values.  These names	should be used when setting or testing
       the values of the field,	even though the	values are treated as integers
       in the methods.

       SoMFEnums  are  written	to  file  as a set of mnemonic enumerated type
       names. These names differ among uses of	this  field  in	 various  node
       classes.	See the	reference pages	for specific nodes for the names.

       When  more than one value is present, all of the	values are enclosed in
       square brackets and separated by	commas.

METHODS
     void		 setValue(const	SbName &name)
	  Sets this field to contain one and only one value, which is the mne-
	  monic	name as	a string.

     void		 set1Value(int index, const SbName &name)
	  Sets	the index'th value to be the integer corresponding to the mne-
	  monic	name in	the given string.

     static SoType	 getClassTypeId()
     virtual void	 getTypeId() const
	  Returns the type for this class  or  a  particular  object  of  this
	  class.

     int		 operator [](int i) const
	  Returns  the	i'th  value of the field. Indexing past	the end	of the
	  field	(passing in i greater than getNum()) will return garbage.

     const int *	 getValues(int start) const
	  Returns a pointer into the array of values in	the field, starting at
	  index	 start.	 The values are	read-only; see the startEditing()/fin-
	  ishEditing() methods for a way of modifying values in	place.

     int		 find(int targetValue, SbBool addIfNotFound = FALSE)
	  Finds	the given value	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).

     void		 setValues(int start, int num, const int *newValues)
	  Sets	num values starting at index start to the values in newValues.
	  The array will be automatically be made larger to accomodate the new
	  values, if necessary.

     void		 set1Value(int index, int newValue)
	  Sets	the index'th value in the array	to newValue. The array will be
	  automatically	expanded, if necessary.

     int		 operator =(int	newValue)
     void		 setValue(int newValue)
	  Sets the first value in the array to newValue, and deletes the  sec-
	  ond and subsequent values.

     int		 operator ==(const SoMFEnum &f)	const
     int		 operator !=(const SoMFEnum &f)	const
	  Returns TRUE if all of the values of this field equal	(do not	equal)
	  those	of the given field. If the fields are  different  types	 FALSE
	  will	always be returned (even if one	field is an SoMFFloat with one
	  value	of 1.0 and the other is	an SoMFInt with	a value	of 1, for  ex-
	  ample).

     int *		 startEditing()
     void		 finishEditing()
	  startEditing()  returns a pointer to the internally-maintained array
	  that can be modified.	The values in the array	may  be	 changed,  but
	  values  cannot  be added or removed. It is illegal to	call any other
	  editing methods between  startEditing()  and	finishEditing()	 (e.g.
	  set1Value(), setValue(), etc).

	  Fields,  engines  or sensors connected to this field and sensors are
	  not notified that this field has changed  until  finishEditing()  is
	  called.  Calling finishEditing() always sets the isDefault() flag to
	  FALSE	and informs engines and	sensors	that the field	changed,  even
	  if none of the values	actually were changed.

							       SoMFEnum(3IV)()

NAME | INHERITS FROM | SYNOPSIS | DESCRIPTION | METHODS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SoMFEnum&sektion=3iv&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help