SoMFEnum Class Reference
Field Classes

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

`#include <Inventor/fields/SoMFEnum.h>`

Inheritance diagram for SoMFEnum:

## Public Member Functions

virtual SoType | getTypeId (void) const
virtual void | copyFrom (const SoField &field)
const SoMFEnum & | operator= (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=FALSE)
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
Public Member Functions inherited from SoMField
virtual | ~SoMField ()
int | getNum (void) const
void | setNum (const int num)
virtual void | deleteValues (int start, int num=-1)
virtual void | insertSpace (int start, int num)
SbBool | set1 (const int index, const char *const valuestring)
void | get1 (const int index, SbString &valuestring)
virtual void | enableDeleteValues (void)
virtual SbBool | isDeleteValuesEnabled (void) const
Public Member Functions inherited from SoField
virtual | ~SoField ()
void | setIgnored (SbBool ignore)
SbBool | isIgnored (void) const
void | setDefault (SbBool defaultVal)
SbBool | isDefault (void) const
SbBool | isOfType (const SoType type) const
void | enableConnection (SbBool flag)
SbBool | isConnectionEnabled (void) const
SbBool | connectFrom (SoEngineOutput *master, SbBool notnotify=FALSE, SbBool append=FALSE)
SbBool | appendConnection (SoEngineOutput *master, SbBool notnotify=FALSE)
void | disconnect (SoEngineOutput *engineoutput)
SbBool | isConnectedFromEngine (void) const
SbBool | getConnectedEngine (SoEngineOutput *&master) const
SbBool | connectFrom (SoField *master, SbBool notnotify=FALSE, SbBool append=FALSE)
SbBool | appendConnection (SoField *master, SbBool notnotify=FALSE)
void | disconnect (SoField *field)
SbBool | isConnectedFromField (void) const
SbBool | getConnectedField (SoField *&master) const
int | getNumConnections (void) const
int | getForwardConnections (SoFieldList &slavelist) const
int | getConnections (SoFieldList &masterlist) const
void | disconnect (void)
SbBool | isConnected (void) const
void | setContainer (SoFieldContainer *cont)
SoFieldContainer * | getContainer (void) const
SbBool | set (const char *valuestring)
void | get (SbString &valuestring)
SbBool | shouldWrite (void) const
virtual void | touch (void)
virtual void | startNotify (void)
virtual void | notify (SoNotList *nlist)
SbBool | enableNotify (SbBool on)
SbBool | isNotifyEnabled (void) const
void | addAuditor (void *f, SoNotRec::Type type)
void | removeAuditor (void *f, SoNotRec::Type type)
int | operator== (const SoField &f) const
int | operator!= (const SoField &f) const
virtual void | connectionStatusChanged (int numconnections)
SbBool | isReadOnly (void) const
virtual void | fixCopy (SbBool copyconnections)
virtual SbBool | referencesCopy (void) const
void | copyConnection (const SoField *fromfield)
virtual SbBool | read (SoInput *input, const SbName &name)
virtual void | write (SoOutput *out, const SbName &name) const
virtual void | countWriteRefs (SoOutput *out) const
void | setFieldType (int type)
int | getFieldType (void) const
SbBool | getDirty (void) const
void | setDirty (SbBool dirty)
void | evaluate (void) const

## Static Public Member Functions

static void * | createInstance (void)
static SoType | getClassTypeId (void)
static void | initClass (void)
Static Public Member Functions inherited from SoMField
static SoType | getClassTypeId (void)
static void | atexit_cleanup (void)
static void | initClass (void)
Static Public Member Functions inherited from SoField
static void | initClass (void)
static void | initClasses (void)
static void | cleanupClass (void)
static SoType | getClassTypeId (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 Member Functions inherited from SoMField
| SoMField (void)
virtual void | makeRoom (int newnum)
virtual SoNotRec | createNotRec (SoBase *container)
void | setChangedIndex (const int chgidx)
void | setChangedIndices (const int chgidx=-1, const int numchgind=0)
Protected Member Functions inherited from SoField
| SoField (void)
void | valueChanged (SbBool resetdefault=TRUE)
virtual void | evaluateConnection (void) const
virtual SbBool | readConnection (SoInput *in)
virtual void | writeConnection (SoOutput *out) const
SbBool | isDestructing (void) const

## Protected Attributes

int * | values
SbBool | legalValuesSet
int | numEnums
int * | enumValues
SbName * | enumNames
Protected Attributes inherited from SoMField
int | num
int | maxNum
SbBool | userDataIsUsed

## Additional Inherited Members

Public Types inherited from SoField
enum | FieldType { NORMAL_FIELD = 0 , EVENTIN_FIELD , EVENTOUT_FIELD , EXPOSED_FIELD }

## 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 need 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

## Member Function Documentation

## createInstance()

void * SoMFEnum::createInstance | ( | void |  | ) |

static

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.
Creates a new instance of the class type corresponding to the SoType object.

## getClassTypeId()

SoType SoMFEnum::getClassTypeId | ( | void |  | ) |

static

This static method returns the SoType object associated with objects of this class.

## getTypeId()

SoType SoMFEnum::getTypeId | ( | void |  | ) | const

virtual

Returns the type identification of an object derived from a class inheriting SoField. This is used for runtime type checking and "downward" casting.

Implements SoField.

Reimplemented in SoMFBitMask.

## copyFrom()

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.

## isSame()

SbBool SoMFEnum::isSame | ( | const SoField & | f | ) | const

virtual

Check for equal type and value(s).

Implements SoField.

Reimplemented in SoMFBitMask.

## deleteAllValues()

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.

## copyValue()

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 constructors where necessary.

Implements SoMField.

## getValues()

const int * SoMFEnum::getValues | ( | const int | start | ) | const

inline

Returns a pointer to the values array.

## initClass()

void SoMFEnum::initClass | ( | void |  | ) |

static

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

## setValue()

void SoMFEnum::setValue | ( | const SbName | name | ) |

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

## set1Value()

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

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

## setEnums()

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

Makes a set of num enumeration names map to vals.

## getNumEnums()

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

## getEnum()

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

## findEnumValue()

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`.

## findEnumName()

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

## legalValuesSet

SbBool SoMFEnum::legalValuesSet

protected

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

## numEnums

int SoMFEnum::numEnums

protected

Number of enumeration mappings.

## enumValues

int* SoMFEnum::enumValues

protected

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

## 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:

- SoMFEnum.h
- SoMFEnum.cpp