Coin Logo http://www.sim.no
http://www.coin3d.org

SoMFEnum Class Reference
[Field classes]

#include <Inventor/fields/SoMFEnum.h>

Inheritance diagram for SoMFEnum:

SoMField SoField SoMFBitMask List of all members.

Detailed Description

The SoMFEnum class is a container for a set of enumerated values.

This field is used where nodes, engines or other field containers needs to store values constrained to be from an enumerated set.

A field of this type stores its values to file as the symbolic names, rather than the actual integer values.

See also:
SoSFEnum, SoMFBitMask


Public Member Functions

virtual SoType getTypeId (void) const
virtual void copyFrom (const SoField &field)
const SoMFEnumoperator= (const SoMFEnum &field)
virtual SbBool isSame (const SoField &field) const
int operator[] (const int idx) const
const int * getValues (const int start) const
int find (int value, SbBool addifnotfound=0)
void setValues (const int start, const int num, const int *newvals)
void set1Value (const int idx, int value)
void setValue (int value)
int operator= (int val)
SbBool operator== (const SoMFEnum &field) const
SbBool operator!= (const SoMFEnum &field) const
int * startEditing (void)
void finishEditing (void)
void setValue (const SbName name)
void set1Value (const int idx, const SbName name)
void setEnums (const int num, const int *const values, const SbName *const names)
int getNumEnums (void) const
int getEnum (const int idx, SbName &name) const

Static Public Member Functions

static void * createInstance (void)
static SoType getClassTypeId (void)
static void initClass (void)

Protected Member Functions

virtual void deleteAllValues (void)
virtual void copyValue (int to, int from)
virtual int fieldSizeof (void) const
virtual void * valuesPtr (void)
virtual void setValuesPtr (void *ptr)
virtual void allocValues (int num)
virtual SbBool findEnumValue (const SbName &name, int &value)
virtual SbBool findEnumName (int value, const SbName *&name) const

Protected Attributes

int * values
SbBool legalValuesSet
int numEnums
int * enumValues
SbNameenumNames


Member Function Documentation

SoType SoMFEnum::getClassTypeId ( void   )  [static]

Returns a unique type identifier for this field class.

See also:
getTypeId(), SoType

Reimplemented from SoMField.

Reimplemented in SoMFBitMask.

SoType SoMFEnum::getTypeId ( void   )  const [virtual]

Returns the type identification instance which uniquely identifies the Coin field class the object belongs to.

See also:
getClassTypeId(), SoType

Implements SoField.

Reimplemented in SoMFBitMask.

void SoMFEnum::copyFrom ( const SoField f  )  [virtual]

Copy value(s) from f into this field. f must be of the same type as this field.

Implements SoField.

Reimplemented in SoMFBitMask.

SbBool SoMFEnum::isSame ( const SoField f  )  const [virtual]

Check for equal type and value(s).

Implements SoField.

Reimplemented in SoMFBitMask.

void SoMFEnum::deleteAllValues ( void   )  [protected, virtual]

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Implements SoMField.

void SoMFEnum::copyValue ( int  to,
int  from 
) [protected, virtual]

This method is used for moving values around internally within a multivalue field. It needs to be overridden in each field so it automatically takes care of running copy contructors where necessary.

Implements SoMField.

const int* SoMFEnum::getValues ( const int  start  )  const [inline]

\ Returns a pointer to the values array. \

void SoMFEnum::initClass ( void   )  [static]

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

Reimplemented from SoMField.

Reimplemented in SoMFBitMask.

void SoMFEnum::setValue ( const SbName  name  ) 

Set this field to contain a single value by specifying an enumeration string.

void SoMFEnum::set1Value ( const int  idx,
const SbName  name 
)

Set the value at idx to the enumeration value represented by name.

void SoMFEnum::setEnums ( const int  numarg,
const int *const  vals,
const SbName *const  names 
)

Makes a set of num enumeration names map to vals.

int SoMFEnum::getNumEnums ( void   )  const

Returns the number of enum names the SoSFEnum object understands.

This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.

Since:
Coin 2.0

int SoMFEnum::getEnum ( const int  idx,
SbName name 
) const

Returns the value of the Nth enum this SoSFEnum object understands, and mutates name to contain the Nth enum's name.

This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.

Since:
Coin 2.0

SbBool SoMFEnum::findEnumValue ( const SbName name,
int &  val 
) [protected, virtual]

Return in val the enumeration value which matches the given enumeration name.

Returns TRUE if name is a valid enumeration string, otherwise FALSE.

SbBool SoMFEnum::findEnumName ( int  value,
const SbName *&  name 
) const [protected, virtual]

Set the enumeration name which matches the given enumeration value.

Returns TRUE if value is a valid enumeration value, otherwise FALSE.


Member Data Documentation

SbBool SoMFEnum::legalValuesSet [protected]

Is TRUE if a set of enum name-to-value mappings has been set.

int SoMFEnum::numEnums [protected]

Number of enumeration mappings.

int * SoMFEnum::enumValues [protected]

Array of enumeration values. Maps 1-to-1 with the enumNames.

SbName * SoMFEnum::enumNames [protected]

Array of enumeration names. Maps 1-to-1 with the enumValues.


The documentation for this class was generated from the following files:

Copyright © 1998-2005 by Systems in Motion AS. All rights reserved.

Generated on Thu May 3 15:16:58 2007 for Coin by Doxygen. 1.5.2