SYNOPSIS

#include <Inventor/fields/SoSField.h>

Inherits SoField.

Inherited by SoSFBool, SoSFBox2d, SoSFBox2f, SoSFBox2i32, SoSFBox2s, SoSFBox3d, SoSFBox3f, SoSFBox3i32, SoSFBox3s, SoSFColor, SoSFColorRGBA, SoSFDouble, SoSFEngine, SoSFEnum, SoSFFloat, SoSFImage, SoSFImage3, SoSFInt32, SoSFMatrix, SoSFName, SoSFNode, SoSFPath, SoSFPlane, SoSFRotation, SoSFShort, SoSFString, SoSFTime, SoSFTrigger, SoSFUInt32, SoSFUShort, SoSFVec2b, SoSFVec2d, SoSFVec2f, SoSFVec2i32, SoSFVec2s, SoSFVec3b, SoSFVec3d, SoSFVec3f, SoSFVec3i32, SoSFVec3s, SoSFVec4b, SoSFVec4d, SoSFVec4f, SoSFVec4i32, SoSFVec4s, SoSFVec4ub, SoSFVec4ui32, and SoSFVec4us.

Public Member Functions

virtual ~SoSField ()

Static Public Member Functions

static void initClass (void)

static SoType getClassTypeId (void)

static void atexit_cleanup (void)

Protected Member Functions

SoSField (void)

Additional Inherited Members

Detailed Description

The SoSField class is the base class for fields which contains only a single value.

All field types which should always contain only a single member value inherits this class. SoSField is an abstract class.

You use methods setValue() and getValue() to store or fetch the value of single-value fields. Example:

SoSpotLight * lightnode = new SoSpotLight;
lightnode->on.setValue(TRUE); // The "on" field of SoSpotLight is
                              // a single value field of type SoSFBool.
...
...
// Change lightswitch.
if (lightnode->on.getValue() == FALSE)
  lightnode->on = TRUE; // We can use operator = instead of setValue().
else
  lightnode->on = FALSE;
...

When nodes, engines or other types of field containers are written to file, their single-value fields are written to file in this format:

containerclass {
  fieldname value
  fieldname value
  ...
}

..like this, for instance, a SpotLight node from a scene graph which will be default off when read back from file:

SpotLight {
  on FALSE
}

See also:

SoMField

Constructor & Destructor Documentation

SoSField::~SoSField ()\fC [virtual]\fP

The SoSField destructor is empty, and is only defined so we could make it virtual.

SoSField::SoSField (void)\fC [protected]\fP

The SoSField constructor is protected, as this is an abstract class.

Author

Generated automatically by Doxygen for Coin from the source code.