SoFieldContainer man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



							 SoFieldContainer(3IV)

NAME
     SoFieldContainer (SoFldCont) - abstract base class for objects that
     contain fields

INHERITS FROM
     SoBase > SoFieldContainer

SYNOPSIS
     #include <Inventor_c/fields/SoFieldContainer.h>

     typedef SoFieldContainer  SoFldCont

	  Functions from class SoFieldContainer:

     SoType		 SoFldContGetClassTypeId()
     void		 SoFldContSetToDflts(SoFldCont *this)
     SbBool		 SoFldContHasDfltVals(const SoFldCont *this)
     SbBool		 SoFldContFldsAreEq(const SoFldCont *this, const
			      SoFieldContainer *fc)
     void		 SoFldContCopyFieldVals(SoFldCont *this, const
			      SoFieldContainer *fc, SbBool copyConnections =
			      FALSE)
     SbBool		 SoFldContSet(SoFldCont *this, const char
			      *fieldDataString)
     void		 SoFldContGet(SoFldCont *this, SbString
			      *fieldDataString)
     int		 SoFldContGetFields(const SoFldCont *this, SoFieldList
			      *resultList)
     SoField *		 SoFldContGetField(const SoFldCont *this, const char
			      *fieldName)
     SbBool		 SoFldContGetFieldName(const SoFldCont *this, const
			      SoField *field, SbName *fieldName)
     SbBool		 SoFldContIsNotifyEnabled(const SoFldCont *this)
     SbBool		 SoFldContEnableNotify(SoFldCont *this, SbBool flag)

	  Functions from class SoBase:

     void		 SoFldContRef(SoFldCont *this)
     void		 SoFldContUnref(const SoFldCont *this)
     void		 SoFldContUnrefNoDelete(const SoFldCont *this)
     void		 SoFldContTouch(SoFldCont *this)
     SoType		 SoFldContGetTypeId(const SoFldCont *this)
     SbBool		 SoFldContIsOfType(const SoFldCont *this, SoType type)
     void		 SoFldContSetName(SoFldCont *this, const char *name)
     SbName		 SoFldContGetName(const SoFldCont *this)

DESCRIPTION
     SoFieldContainer is the abstract base class for engines and nodes. It
     contains methods for finding out what fields an object has, controlling
     notification, and for dealing with all of the fields of an object at
     once.

Page 1

SoFieldContainer(3IV)

     The fields of an engine are its inputs. Note that even though an engine's
     output corresponds to a specific type of field, an engine output is not a
     field.

FUNCTIONS
     SoType		 SoFldContGetClassTypeId()
	  Returns the type of this class.

     void		 SoFldContSetToDflts(SoFldCont *this)
	  Sets all fields in this object to their default values.

     SbBool		 SoFldContHasDfltVals(const SoFldCont *this)
	  Returns TRUE if all of the object's fields have their default
	  values. This will return TRUE even if a field's isDefault() method
	  returns FALSE - for example, if a field's default value is 0.0 and
	  you SetValue(0.0) that field, the default flag will be set to FALSE
	  (because it would be too slow to compare the field against its
	  default value every time setValue is called). However, HasDfltVals()
	  would return TRUE in this case.

     SbBool		 SoFldContFldsAreEq(const SoFldCont *this, const
			      SoFieldContainer *fc)
	  Returns TRUE if this object's fields are exactly equal to fc's
	  fields. If fc is not exactly same type as this object, FALSE is
	  returned.

     void		 SoFldContCopyFieldVals(SoFldCont *this, const
			      SoFieldContainer *fc, SbBool copyConnections =
			      FALSE)
	  Copies the contents of fc's fields into this object's fields. fc
	  must be the same type as this object. If copyConnections is TRUE,
	  then if any of fc's fields are connected then this object's fields
	  will also be connected to the same source.

     SbBool		 SoFldContSet(SoFldCont *this, const char
			      *fieldDataString)
	  Sets one or more fields in this object to the values specified in
	  the given string, which should be a string in the Inventor file
	  format. TRUE is returned if the string was valid Inventor file
	  format. For example, you could set the fields of an SoCube by doing:

	       SoCube *cube = ....
	       cube->set("width 1.0 height 2.0 depth 3.2");

     void		 SoFldContGet(SoFldCont *this, SbString
			      *fieldDataString)
	  Returns the values of the fields of this object in the Inventor
	  ASCII file format in the given string. Fields whose IsDflt() bit is
	  set will not be part of the string. You can use the SoFieldGet()
	  method to get a field's value as a string even if has its default

Page 2

							 SoFieldContainer(3IV)

	  value.

     int		 SoFldContGetFields(const SoFldCont *this, SoFieldList
			      *resultList)
	  Appends pointers to all of this object's fields to resultList, and
	  returns the number of fields appended. The types of the fields can
	  be determined using SoFldIsOfType and SoFldGetTypeId(), and their
	  names can be determined by passing the field pointers to the
	  GetFieldName() method (see below).

     SoField *		 SoFldContGetField(const SoFldCont *this, const char
			      *fieldName)
	  Returns a pointer to the field of this object whose name is
	  fieldName. Returns NULL if there is no field with the given name.

     SbBool		 SoFldContGetFieldName(const SoFldCont *this, const
			      SoField *field, SbName *fieldName)
	  Returns the name of the given field in the fieldName argument.
	  Returns FALSE if field is not a member of this object.

     SbBool		 SoFldContIsNotifyEnabled(const SoFldCont *this)
	  Notification is the process of telling interested objects that this
	  object has changed. Notification is needed to make engines and
	  sensors function, is used to keep SoPaths up to date when the scene
	  graph's topology changes, and is also used to invalidate rendering
	  or bounding box caches.

	  Notification is normally enabled, but can be disabled on a node by
	  node (or engine by engine) basis. If you are making extensive
	  changes to a large part of the scene graph then disabling
	  notification can increase performance, at the expense of increased
	  responsibility for making sure that any interested engines, sensors
	  or paths are kept up to date.

	  For example, if you will be making a lot of changes to a small part
	  of your scene graph and you know that there are no engines or
	  sensors attached to nodes in that part of the scene graph, you might
	  disable notification on the nodes you are changing, modify them,
	  re-enable notification, and then touch() one of the nodes to cause a
	  redraw.

	  However, you should profile your application and make sure that
	  notification is taking a significant amount of time before going to
	  the trouble of manually controlling notification.

     SbBool		 SoFldContEnableNotify(SoFldCont *this, SbBool flag)
	  Notification at this Field Container is enabled (if flag == TRUE) or
	  disabled (if flag == FALSE). The returned boolean value indicates
	  whether notification was enabled immediately prior to applying this
	  method.

Page 3

SoFieldContainer(3IV)

SEE ALSO
     SoSField, SoMField, SoNode, SoDB

Page 4

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net