Open Inventor Reference
|
Element that stores the id of the current light. More...
#include <Inventor/elements/SoGLLightIdElement.h>
Public Member Functions | |
virtual void | init (SoState *state) |
Initializes element. More... | |
virtual void | push (SoState *state) |
Overrides push() method to copy values from next instance in the stack. More... | |
virtual void | pop (SoState *state, const SoElement *prevTopElement) |
Override pop() method so side effects can occur in GL. More... | |
virtual void | print (FILE *fp) const |
Prints element (for debugging) More... | |
![]() | |
virtual bool | matches (const SoElement *elt) const |
Comparison based on value of int32_ts. More... | |
virtual SoElement * | copyMatchInfo () const |
Copy method, takes care copying the data. More... | |
virtual void | setElt (int32_t value) |
Virtual set that subclasses can override to implement side-effect behaviors. More... | |
![]() | |
SoType | getTypeId () const |
Returns type identifier for element instance. More... | |
int | getStackIndex () const |
Returns the stack index for an element instance. More... | |
void | setDepth (int dpth) |
Sets stuff in an element instance. More... | |
void | setNext (SoElement *nxt) |
void | setNextInStack (SoElement *nxt) |
void | setNextFree (SoElement *nxt) |
int | getDepth () const |
Returns stuff from element instance. More... | |
SoElement * | getNext () const |
virtual | ~SoElement () |
Destructor. More... | |
Static Public Member Functions | |
static int | increment (SoState *state) |
Increments the current light id. More... | |
static int | increment (SoState *state, SoNode *) |
static int | get (SoState *state) |
Returns current light id from the state. More... | |
static int | getDefault () |
Returns the default light id. More... | |
static int | getMaxGLSources () |
Returns the maximum number of concurrent light sources supported by GL implementation. More... | |
static void | initClass () |
Initializes the SoGLLightIdElement class. More... | |
![]() | |
static void | initClass () |
Initializes the SoInt32Element class. More... | |
static void | set (int stackIndex, SoState *state, int32_t value) |
Set value. More... | |
static void | set (int stackIndex, SoState *state, SoNode *, int32_t value) |
static void | set (int stackIndex, SoState *state, SoNode *, long value) |
static int32_t | get (int stackIndex, SoState *state) |
Get value. More... | |
![]() | |
static SoType | getClassTypeId () |
Returns type identifier for SoElement class. More... | |
static void | initElements () |
Initialize ALL Inventor element classes. More... | |
static void | initClass () |
Initializes the SoElement class. More... | |
static int | getNumStackIndices () |
Returns the number of stack indices allocated. More... | |
static SoType | getIdFromStackIndex (int stackIndex) |
Returns the id for the element with the given stack index. More... | |
Protected Member Functions | |
virtual | ~SoGLLightIdElement () |
![]() | |
virtual | ~SoInt32Element () |
![]() | |
SoElement () | |
Constructor; use typeId.createInstance to create elements. More... | |
void | capture (SoState *state) const |
Does whatever is necessary in state to capture this element for caching purposes. More... | |
virtual void | captureThis (SoState *state) const |
Really captures this element, once it has been determined that a cache is open to capture it. More... | |
void | setTypeId (SoType id) |
Sets typeId in instance. More... | |
void | setStackIndex (int index) |
Sets stackIndex in instance. More... | |
SoElement * | getNextInStack () const |
Returns next instance in specific element stack. More... | |
SoElement * | getNextFree () const |
Returns next free element in a specific element stack. More... | |
Additional Inherited Members | |
![]() | |
static SoElement * | getElement (SoState *state, int stackIndex) |
Returns an instance of an element from the stack with the given index in the given state. More... | |
static const SoElement * | getConstElement (SoState *state, int stackIndex) |
Returns a read-only pointer to the top instance in the given element stack. More... | |
static int | createStackIndex (SoType id) |
Creates and returns a new stack index. More... | |
![]() | |
int32_t | data |
Storage for data. More... | |
![]() | |
static int | classStackIndex |
Stack index for SoElement class. More... | |
The first light active in a scene has id 0, the next has 1, and so on. This element can be used to determine how many lights are currently active. The initial value of this element is -1 to indicate that there are no lights active.
Note that even though the effects of this element accumulate (each light source increments the id), it is derived from SoInt32Element. This is because each call to increment() effectively does a "get" of the current top instance, so caching knows about the dependency of each instance on the previous one.
Definition at line 79 of file SoGLLightIdElement.h.
|
protectedvirtual |
|
inlinestatic |
Definition at line 99 of file SoGLLightIdElement.h.
References SoInt32Element::get().
|
inlinestatic |
Definition at line 103 of file SoGLLightIdElement.h.
|
static |
|
static |
This should be called when a light source becomes active. This returns the new id, or -1 if the maximum number of GL light sources has been exceeded. Otherwise, enables light source.
Definition at line 94 of file SoGLLightIdElement.h.
|
static |
Reimplemented from SoElement.
|
virtual |
Reimplemented from SoInt32Element.