oracular (3) SoType.3iv.gz

Provided by: inventor-doc_2.1.6+ds-2_all bug

NAME

       SoType — stores runtime type information

INHERITS FROM

       SoType

SYNOPSIS

       #include <Inventor/SoType.h>

          Methods from class SoType:

     static SoType       fromName(SbName name)
     SbName              getName() const
     SoType              getParent() const
     static SoType       badType()
     SbBool              isBad() const
     SbBool              isDerivedFrom(SoType t) const
     static int          getAllDerivedFrom(SoType type, SoTypeList &list)
     SbBool              canCreateInstance() const
     void *              createInstance() const
     int                 operator ==(const SoType t) const
     int                 operator !=(const SoType t) const
     int                 operator <(const SoType t) const

DESCRIPTION

       The  SoType  class  keeps  track  of runtime type information in Inventor. Each type is associated with a
       given name, so lookup is possible in either direction.

       Many Inventor classes request a unique SoType when they are initialized. This type can then  be  used  to
       find out the actual class of an instance when only its base class is known, or to obtain an instance of a
       particular class given its type or name.

       Note that the names associated with types of Inventor classes do not contain the "So" prefix.

METHODS

     static SoType       fromName(SbName name)
          Returns the type associated with the given name.

     SbName              getName() const
          Returns the name associated with a type.

     SoType              getParent() const
          Returns the type of the parent class.

     static SoType       badType()
          Returns an always-illegal type. Useful for returning errors.

     SbBool              isBad() const
          Returns TRUE if the type is a bad type.

     SbBool              isDerivedFrom(SoType t) const
          Returns TRUE if the type is derived from type t.

     static int          getAllDerivedFrom(SoType type, SoTypeList &list)
          Adds all types derived from the given type to the given type list. Returns the number of types added.

     SbBool              canCreateInstance() const
          Some types are able to create instances; for example, most nodes and  engines  (those  which  are  not
          abstract  classes)  can  be  created  this  way.  This  method  returns TRUE if the type supports such
          creation.

     void *              createInstance() const
          Creates and returns a pointer to an instance of the type. Returns NULL if an  instance  could  not  be
          created  for  some  reason.  The  pointer  is  returned  as  a generic pointer, but can be cast to the
          appropriate type. For example:
               SoCube *c = (SoCube *) SoCube::getClassTypeId().createInstance();
            is a convoluted way of creating a new instance of an SoCube.

     int                 operator ==(const SoType t) const
     int                 operator !=(const SoType t) const
          Returns TRUE if this type is the same as or not the same as the given type.

     int                 operator <(const SoType t) const
          Less-than comparison operator that can be used to sort types. This is pretty useless otherwise.

SEE ALSO

       SoAction, SoBase, SoDetail, SoError, SoEvent, SoField

                                                                                                   SoType(3IV)()