55#ifndef _SO_GL_LIGHT_ID_ELEMENT
56#define _SO_GL_LIGHT_ID_ELEMENT
95 {
return increment(state); }
126 static int maxGLSources;
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
#define SO_ELEMENT_HEADER(className)
This one is for non-abstract element classes.
This is the abstract base class for all state elements.
Element that stores the id of the current light.
virtual void push(SoState *state)
Overrides push() method to copy values from next instance in the stack.
static int get(SoState *state)
Returns current light id from the state.
static int increment(SoState *state, SoNode *)
virtual void print(FILE *fp) const
Prints element (for debugging)
static int increment(SoState *state)
Increments the current light id.
virtual ~SoGLLightIdElement()
virtual void init(SoState *state)
Initializes element.
static int getMaxGLSources()
Returns the maximum number of concurrent light sources supported by GL implementation.
static int getDefault()
Returns the default light id.
virtual void pop(SoState *state, const SoElement *prevTopElement)
Override pop() method so side effects can occur in GL.
static void initClass()
Initializes the SoGLLightIdElement class.
Subclasses store a single int32_t, int, or enum value.
static int32_t get(int stackIndex, SoState *state)
Get value.
Abstract base class for all database nodes.
An SoState collects and holds state while traversing a scene graph.