23#ifndef _SO_INTERACTIVE_COMPLEXITY_ELEMENT
24#define _SO_INTERACTIVE_COMPLEXITY_ELEMENT
26#include <Inventor/elements/SoAccumulatedElement.h>
27#include <Inventor/STL/vector>
31#pragma warning(disable:4251)
81 virtual void init(
SoState *state);
85 static void initClass();
86 static void exitClass();
89 static double getCurrentScalarFieldValue(
const SoSField* field);
98 typedef std::vector<SoInteractiveComplexity*> ComplexityVector;
99 typedef ComplexityVector::const_reverse_iterator ComplexityVectorConstRevIt;
105 double getScalarFieldValueInternal(
SoState* state,
const SoSField* field)
const;
107 int getEnumFieldValueInternal(
SoState* state,
const SoSFEnum* field)
const;
114 ComplexityVector m_nodeList;
Abstract base class for each state element whose value may be accumulated when it is set.
Abstract base class for all state elements.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Stores the curre...
static int getEnumFieldValue(SoState *state, const SoSFEnum *field)
Return value of a SoSFEnum.
static SbBool getBooleanFieldValue(SoState *state, const SoSFBool *field)
Return value of a SoSFBool.
static void set(SoState *state, SoInteractiveComplexity *node)
Set the current SoInteractiveComplexity node.
static double getScalarFieldValue(SoState *state, const SoSField *field)
Return value of scalar field as a double.
virtual void pop(SoState *, const SoElement *prevTopElement)
Pop method.
virtual void push(SoState *state)
Overrides push() method to copy values from next instance in the stack.
Field interactive complexity node.
Field containing a single Boolean value.
Field containing an enumerated value.
Abstract base class for all single-value fields.