SoBase man page on IRIX

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



								   SoBase(3IV)

NAME
     SoBase (SoBase) - base class for all nodes, paths, and engines

INHERITS FROM
     SoBase

SYNOPSIS
     #include <Inventor_c/misc/SoBase.h>

	  Functions from class SoBase:

     void		 SoBaseRef(SoBase *this)
     void		 SoBaseUnref(const SoBase *this)
     void		 SoBaseUnrefNoDelete(const SoBase *this)
     void		 SoBaseTouch(SoBase *this)
     SoType		 SoBaseGetClassTypeId()
     SoType		 SoBaseGetTypeId(const SoBase *this)
     SbBool		 SoBaseIsOfType(const SoBase *this, SoType type)
     void		 SoBaseSetName(SoBase *this, const char *name)
     SbName		 SoBaseGetName(const SoBase *this)

DESCRIPTION
     Abstract base class for Inventor node, path, and engine classes. This
     class handles reference counting, notification, and naming.

FUNCTIONS
     void		 SoBaseRef(SoBase *this)
     void		 SoBaseUnref(const SoBase *this)
     void		 SoBaseUnrefNoDelete(const SoBase *this)
	  Adds and removes a reference to an instance. Instances should be
	  referenced when they will be used outside of the routine in which
	  they were initialized. (A typical example of this is maintaining a
	  pointer to the root of a graph.) Whenever the reference count for an
	  instance is decremented to 0, the instance is automatically
	  destroyed by the database (unless  SoBaseUnrefNoDelete() is used to
	  unref it). The reference count of a node is automatically
	  incremented when the node is added as a child of another node or
	  when a path points to the node. Likewise, the reference count is
	  automatically decremented when the node is removed as a child or
	  when a path that points to the node is changed or destroyed.

	   SoBaseUnrefNoDelete() should be called when it is desired to
	  decrement the reference count, but not delete the instance if this
	  brings the reference count to zero. This is most useful in returning
	  an object to a zero-reference-count state, like it was when it was
	  created by  a Create() method.

     void		 SoBaseTouch(SoBase *this)
	  Marks an instance as modified, simulating a change to it. This will
	  notify auditors (parent nodes, connected engines, and so on) of a
	  change to this object and cause attached sensors to be triggered.

Page 1

SoBase(3IV)

     SoType		 SoBaseGetClassTypeId()
	  Returns type identifier for this class.

     SoType		 SoBaseGetTypeId(const SoBase *this)
	  Returns the type identifier for a specific instance.

     SbBool		 SoBaseIsOfType(const SoBase *this, SoType type)
	  Returns TRUE if this object is of the type specified in type or is
	  derived from that type. Otherwise, it returns FALSE. For example,

	       SoBaseIsOfType(nodePtr, SoGroupGetClassTypeId())

	  returns TRUE if nodePtr is an instance of SoGroup or one of its
	  subclasses.

     void		 SoBaseSetName(SoBase *this, const char *name)
	  Sets the name of an instance. Object names are preserved when
	  objects are written to or read from files. Object names must not
	  begin with a digit, and must not contain spaces or control
	  characters, single or double quote characters, backslashes, curly
	  braces or the plus character. The  IsBaseNameChar() and
	  IsBaseNameStartChar() functions of SbName can be used to validate
	  names input by users. This method will replace any bad charaters in
	  the name with underscore characters, and will print out an error
	  message if the application is using the Inventor debugging library.

     SbName		 SoBaseGetName(const SoBase *this)
	  Returns the name of an instance. If the instance has not been named,
	  an empty SbName is returned. Objects that are named can be looked up
	  using the  GetByName() functions of SoNode, SoEngine, or SoPath.

SEE ALSO
     SoFieldContainer, SoNode, SoPath, SoEngine, SoDB

Page 2

[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