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

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 () [virtual]

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

SoSField::SoSField (void) [protected]

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

Member Function Documentation

void SoSField::initClass (void) [static]

Internal method called upon initialization of the library (from SoDB::init()) to set up the type system.

Reimplemented from SoField.

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

SoType SoSField::getClassTypeId (void) [static]

Returns a unique type identifier for this field class.

See also:

getTypeId(), SoType

Reimplemented from SoField.

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

Author

Generated automatically by Doxygen for Coin from the source code.