23#if !defined _SO_MULTIPLE_INSTANCE_ELEMENT_H_
24#define _SO_MULTIPLE_INSTANCE_ELEMENT_H_
26#include <Inventor/elements/SoReplacedElement.h>
27#include <Inventor/SbMatrix.h>
65 static void initClass();
68 static void exitClass();
71 inline const SbMatrix& getInstanceModelMatrix ()
const {
return m_oivInstanceModelMatrix; }
72 inline unsigned int getNumInstances()
const {
return m_numInstances; }
73 inline unsigned int getNumInstancedBatches()
const {
return m_numBatches; }
74 inline unsigned int getCurrentBatchNumber()
const {
return m_currentBatchNum; }
75 inline int32_t getNeedParamsBits()
const {
return m_needParamsBits; }
78 inline void setCurrentBatchNumber( uint32_t currentBatchNum ) { m_currentBatchNum = currentBatchNum; }
79 inline void setNeedParamsBits( int32_t needParamsBits ) { m_needParamsBits = needParamsBits; }
83 virtual void init(
SoState* state);
96 unsigned int m_numInstances;
97 unsigned int m_numBatches;
98 unsigned int m_currentBatchNum;
100 int32_t m_needParamsBits;
Abstract base class for all state elements.
Stores current MultiInstance info.
static SoMultipleInstance * get(SoState *state)
Returns the current element in the state.
static unsigned int getNumInstances(SoState *state)
Returns the number of shape instance requests in the state.
static unsigned int getNumBatches(SoState *state)
Return the number of batches.
static SoMultipleInstance * getDefault()
returns the default element value.
static void set(SoState *state, SoNode *node, SoMultipleInstance *instanceproperty)
Sets the current multiple instance node.
Group node that renders multiple instances of its children.
Abstract base class for all database nodes.
Abstract base class for each state element whose value is replaced whenever it is set.