Open Inventor Reference
SoCacheElement Class Reference

Element that stores the most recently opened cache. More...

#include <Inventor/elements/SoCacheElement.h>

Inheritance diagram for SoCacheElement:
SoElement

Public Member Functions

virtual void init (SoState *state)
 Initializes element.
 
SoCachegetCache () const
 Returns the cache stored in an instance. This may be NULL.
 
virtual void pop (SoState *state, const SoElement *prevTopElement)
 Overrides this method to unref cache.
 
virtual bool matches (const SoElement *elt) const
 Overrides this method to print an error message and return FALSE.
 
virtual SoElementcopyMatchInfo () const
 Copy method prints error and returns NULL; see comment above.
 
SoCacheElementgetNextCacheElement () const
 Returns the next cache element in the stack.
 
virtual ~SoCacheElement ()
 
- Public Member Functions inherited from SoElement
virtual void init (SoState *state)
 Initializes element.
 
virtual void push (SoState *state)
 Pushes/pops element.
 
virtual void pop (SoState *state, const SoElement *prevTopElement)
 
virtual void print (FILE *fp) const
 Prints element (for debugging)
 
virtual bool matches (const SoElement *elt) const =0
 Returns TRUE if the element matches another element (of the same class, presumably) with respect to cache validity.
 
virtual SoElementcopyMatchInfo () const =0
 Create a copy that we can put in a cache used list and call matches() on later.
 
SoType getTypeId () const
 Returns type identifier for element instance.
 
int getStackIndex () const
 Returns the stack index for an element instance.
 
void setDepth (int dpth)
 Sets stuff in an element instance.
 
void setNext (SoElement *nxt)
 
void setNextInStack (SoElement *nxt)
 
void setNextFree (SoElement *nxt)
 
int getDepth () const
 Returns stuff from element instance.
 
SoElementgetNext () const
 
virtual ~SoElement ()
 Destructor.
 

Static Public Member Functions

static void set (SoState *state, SoCache *cache)
 Sets cache in element accessed from state.
 
static bool anyOpen (SoState *state)
 Returns TRUE if any cache is currently open in the state.
 
static void invalidate (SoState *state)
 Invalidate any open caches.
 
static void initClass ()
 Initializes the SoCacheElement class.
 
static void addElement (SoState *state, const SoElement *elt)
 Adds the given element to the elements used lists of all currently open caches in the state.
 
static void addCacheDependency (SoState *state, SoCache *cache)
 Adds a dependency on the given cache to all currently open caches in the state.
 
static bool setInvalid (bool newValue)
 Sets invalidated bit, and returns its old value.
 
static SoCachegetCurrentCache (SoState *state)
 returns the current cache, from the top of the stack.
 
- Static Public Member Functions inherited from SoElement
static SoType getClassTypeId ()
 Returns type identifier for SoElement class.
 
static void initElements ()
 Initialize ALL Inventor element classes.
 
static void initClass ()
 Initializes the SoElement class.
 
static int getNumStackIndices ()
 Returns the number of stack indices allocated.
 
static SoType getIdFromStackIndex (int stackIndex)
 Returns the id for the element with the given stack index.
 

Friends

class SoElement
 

Additional Inherited Members

- Protected Member Functions inherited from SoElement
 SoElement ()
 Constructor; use typeId.createInstance to create elements.
 
void capture (SoState *state) const
 Does whatever is necessary in state to capture this element for caching purposes.
 
virtual void captureThis (SoState *state) const
 Really captures this element, once it has been determined that a cache is open to capture it.
 
void setTypeId (SoType id)
 Sets typeId in instance.
 
void setStackIndex (int index)
 Sets stackIndex in instance.
 
SoElementgetNextInStack () const
 Returns next instance in specific element stack.
 
SoElementgetNextFree () const
 Returns next free element in a specific element stack.
 
- Static Protected Member Functions inherited from SoElement
static SoElementgetElement (SoState *state, int stackIndex)
 Returns an instance of an element from the stack with the given index in the given state.
 
static const SoElementgetConstElement (SoState *state, int stackIndex)
 Returns a read-only pointer to the top instance in the given element stack.
 
static int createStackIndex (SoType id)
 Creates and returns a new stack index.
 
- Static Protected Attributes inherited from SoElement
static int classStackIndex
 Stack index for SoElement class.
 

Detailed Description

Definition at line 71 of file SoCacheElement.h.

Constructor & Destructor Documentation

◆ ~SoCacheElement()

virtual SoCacheElement::~SoCacheElement ( )
virtual

Member Function Documentation

◆ addCacheDependency()

static void SoCacheElement::addCacheDependency ( SoState state,
SoCache cache 
)
static

◆ addElement()

static void SoCacheElement::addElement ( SoState state,
const SoElement elt 
)
static

◆ anyOpen()

static bool SoCacheElement::anyOpen ( SoState state)
static

◆ copyMatchInfo()

virtual SoElement * SoCacheElement::copyMatchInfo ( ) const
virtual

Implements SoElement.

◆ getCache()

SoCache * SoCacheElement::getCache ( ) const
inline

Definition at line 83 of file SoCacheElement.h.

◆ getCurrentCache()

static SoCache * SoCacheElement::getCurrentCache ( SoState state)
inlinestatic

Does not cause a cache dependence like getConstElement().

Definition at line 125 of file SoCacheElement.h.

References SoState::getElementNoPush().

◆ getNextCacheElement()

SoCacheElement * SoCacheElement::getNextCacheElement ( ) const
inline

Definition at line 104 of file SoCacheElement.h.

References SoElement::getNextInStack().

◆ init()

virtual void SoCacheElement::init ( SoState state)
virtual

Reimplemented from SoElement.

◆ initClass()

static void SoCacheElement::initClass ( )
static

◆ invalidate()

static void SoCacheElement::invalidate ( SoState state)
static

This is called by nodes that should not be cached.

◆ matches()

virtual bool SoCacheElement::matches ( const SoElement elt) const
virtual

Cache elements should never be compared, since they never appear in the elements-used list of caches!

Implements SoElement.

◆ pop()

virtual void SoCacheElement::pop ( SoState state,
const SoElement prevTopElement 
)
virtual

Reimplemented from SoElement.

◆ set()

static void SoCacheElement::set ( SoState state,
SoCache cache 
)
static

◆ setInvalid()

static bool SoCacheElement::setInvalid ( bool  newValue)
static

Used by SoGLCacheList so auto-caching doesn't cache too much.

Friends And Related Symbol Documentation

◆ SoElement

friend class SoElement
friend

Definition at line 135 of file SoCacheElement.h.


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