|
virtual void | init (SoState *state) |
virtual void | push (SoState *state) |
virtual void | pop (SoState *state, const SoElement *prevtopelement) |
void | sendDiffuseByIndex (const int index) const |
| FIXME: write doc.
|
void | send (const SoState *state, uint32_t mask) const |
| FIXME: write doc.
|
void | sendVPPacked (SoState *state, const unsigned char *pcolor) |
| FIXME: write doc.
|
void | reset (SoState *state, uint32_t bitmask) const |
virtual void | setDiffuseElt (SoNode *, int32_t numcolors, const SbColor *colors, SoColorPacker *packer) |
virtual void | setPackedElt (SoNode *node, int32_t numcolors, const uint32_t *colors, const SbBool packedtransparency) |
virtual void | setColorIndexElt (SoNode *node, int32_t numindices, const int32_t *indices) |
virtual void | setTranspElt (SoNode *node, int32_t numtransp, const float *transp, SoColorPacker *packer) |
virtual void | setTranspTypeElt (int32_t type) |
virtual void | setAmbientElt (const SbColor *color) |
virtual void | setEmissiveElt (const SbColor *color) |
virtual void | setSpecularElt (const SbColor *color) |
virtual void | setShininessElt (float value) |
virtual void | setColorMaterialElt (SbBool value) |
virtual void | enableBlendingElt (int sfactor, int dfactor, int alpha_sfactor, int alpha_dfactor) |
virtual void | disableBlendingElt (void) |
virtual void | setLightModelElt (SoState *state, int32_t model) |
virtual void | setMaterialElt (SoNode *node, uint32_t bitmask, SoColorPacker *packer, const SbColor *diffuse, const int numdiffuse, const float *transp, const int numtransp, const SbColor &ambient, const SbColor &emissive, const SbColor &specular, const float shininess, const SbBool istransparent) |
virtual void | setVertexOrderingElt (VertexOrdering ordering) |
virtual void | setBackfaceCullingElt (SbBool onoff) |
virtual void | setTwosideLightingElt (SbBool onoff) |
virtual void | setShadeModelElt (SbBool flatshading) |
virtual void | setAlphaTestElt (int func, float value) |
void | updateColorVBO (SoVBO *vbo) |
virtual SbBool | matches (const SoElement *) const |
virtual SoElement * | copyMatchInfo (void) const |
int32_t | getNumDiffuse (void) const |
int32_t | getNumTransparencies (void) const |
int32_t | getNumColorIndices (void) const |
SbBool | isPacked (void) const |
SbBool | isTransparent (void) const |
const uint32_t * | getPackedPointer (void) const |
const SbColor * | getDiffusePointer (void) const |
const int32_t * | getColorIndexPointer (void) const |
const float * | getTransparencyPointer (void) const |
const SoType | getTypeId (void) const |
int | getStackIndex (void) const |
void | setDepth (const int depth) |
int | getDepth (void) const |
virtual void | print (FILE *file=stdout) const |
virtual | ~SoElement () |
|
static SoType | getClassTypeId (void) |
static int | getClassStackIndex (void) |
static void * | createInstance (void) |
static void | initClass () |
static void | sendAllMaterial (SoState *state) |
| FIXME: write doc.
|
static void | sendNoMaterial (SoState *state) |
| FIXME: write doc.
|
static void | sendOnlyDiffuseColor (SoState *state) |
| FIXME: write doc.
|
static void | sendLightModel (SoState *state, const int32_t model) |
static void | sendPackedDiffuse (SoState *state, const uint32_t diffuse) |
static void | sendFlatshading (SoState *state, const SbBool onoff) |
static void | sendVertexOrdering (SoState *state, const VertexOrdering ordering) |
static void | sendTwosideLighting (SoState *state, const SbBool onoff) |
static void | sendBackfaceCulling (SoState *state, const SbBool onoff) |
static SbBool | isColorIndex (SoState *state) |
| FIXME: write doc.
|
static SoGLLazyElement * | getInstance (const SoState *state) |
| FIXME: write doc.
|
static void | beginCaching (SoState *state, SoGLLazyElement::GLState *prestate, SoGLLazyElement::GLState *poststate) |
static void | endCaching (SoState *state) |
static SbBool | preCacheCall (const SoState *state, const SoGLLazyElement::GLState *prestate) |
static void | postCacheCall (const SoState *state, const SoGLLazyElement::GLState *poststate) |
static void | mergeCacheInfo (SoState *state, SoGLLazyElement::GLState *childprestate, SoGLLazyElement::GLState *childpoststate) |
static SoType | getClassTypeId (void) |
static int | getClassStackIndex (void) |
static void * | createInstance (void) |
static void | initClass () |
static void | setToDefault (SoState *state) |
static void | setDiffuse (SoState *state, SoNode *node, int32_t numcolors, const SbColor *colors, SoColorPacker *packer) |
static void | setTransparency (SoState *state, SoNode *node, int32_t numvalues, const float *transparency, SoColorPacker *packer) |
static void | setPacked (SoState *state, SoNode *node, int32_t numcolors, const uint32_t *colors, const SbBool packedtransparency=FALSE) |
static void | setColorIndices (SoState *state, SoNode *node, int32_t numindices, const int32_t *indices) |
static void | setAmbient (SoState *state, const SbColor *color) |
static void | setEmissive (SoState *state, const SbColor *color) |
static void | setSpecular (SoState *state, const SbColor *color) |
static void | setShininess (SoState *state, float value) |
static void | setColorMaterial (SoState *state, SbBool value) |
static void | enableBlending (SoState *state, int sfactor, int dfactor) |
static void | enableSeparateBlending (SoState *state, int sfactor, int dfactor, int alpha_sfactor, int alpha_dfactor) |
static void | disableBlending (SoState *state) |
static void | setLightModel (SoState *state, const int32_t model) |
static void | setVertexOrdering (SoState *state, VertexOrdering ordering) |
static void | setBackfaceCulling (SoState *state, SbBool onoff) |
static void | setTwosideLighting (SoState *state, SbBool onoff) |
static void | setShadeModel (SoState *state, SbBool flatshading) |
static void | setAlphaTest (SoState *state, int func, float value) |
static const SbColor & | getDiffuse (SoState *state, int index) |
static float | getTransparency (SoState *, int index) |
static const uint32_t * | getPackedColors (SoState *) |
static const int32_t * | getColorIndices (SoState *) |
static int32_t | getColorIndex (SoState *, int num) |
static const SbColor & | getAmbient (SoState *) |
static const SbColor & | getEmissive (SoState *) |
static const SbColor & | getSpecular (SoState *) |
static float | getShininess (SoState *) |
static SbBool | getColorMaterial (SoState *) |
static SbBool | getBlending (SoState *, int &sfactor, int &dfactor) |
static SbBool | getAlphaBlending (SoState *, int &sfactor, int &dfactor) |
static int32_t | getLightModel (SoState *) |
static int | getAlphaTest (SoState *state, float &value) |
static SbBool | getTwoSidedLighting (SoState *state) |
static SoLazyElement * | getInstance (SoState *state) |
static float | getDefaultAmbientIntensity (void) |
static SbColor | getDefaultDiffuse (void) |
static SbColor | getDefaultAmbient (void) |
static SbColor | getDefaultSpecular (void) |
static SbColor | getDefaultEmissive (void) |
static float | getDefaultShininess (void) |
static uint32_t | getDefaultPacked (void) |
static float | getDefaultTransparency (void) |
static int32_t | getDefaultLightModel (void) |
static int32_t | getDefaultColorIndex (void) |
static void | setMaterials (SoState *state, SoNode *node, uint32_t bitmask, SoColorPacker *cPacker, const SbColor *diffuse, const int numdiffuse, const float *transp, const int numtransp, const SbColor &ambient, const SbColor &emissive, const SbColor &specular, const float shininess, const SbBool istransparent) |
static SoLazyElement * | getWInstance (SoState *state) |
static void | setTransparencyType (SoState *state, int32_t type) |
static void | initClass (void) |
static SoType | getClassTypeId (void) |
static int | getClassStackIndex (void) |
static void | initElements (void) |
static int | getNumStackIndices (void) |
static SoType | getIdFromStackIndex (const int stackIndex) |
|
enum | cases {
LIGHT_MODEL_CASE = 0
, COLOR_MATERIAL_CASE
, DIFFUSE_CASE
, AMBIENT_CASE
,
EMISSIVE_CASE
, SPECULAR_CASE
, SHININESS_CASE
, BLENDING_CASE
,
TRANSPARENCY_CASE
, VERTEXORDERING_CASE
, TWOSIDE_CASE
, CULLING_CASE
,
SHADE_MODEL_CASE
, ALPHATEST_CASE
, GLIMAGE_CASE
, LAZYCASES_LAST
} |
enum | masks {
LIGHT_MODEL_MASK = 1 << LIGHT_MODEL_CASE
, COLOR_MATERIAL_MASK = 1 << COLOR_MATERIAL_CASE
, DIFFUSE_MASK = 1 << DIFFUSE_CASE
, AMBIENT_MASK = 1 << AMBIENT_CASE
,
EMISSIVE_MASK = 1<<EMISSIVE_CASE
, SPECULAR_MASK = 1 << SPECULAR_CASE
, SHININESS_MASK = 1 << SHININESS_CASE
, TRANSPARENCY_MASK = 1 << TRANSPARENCY_CASE
,
BLENDING_MASK = 1 << BLENDING_CASE
, VERTEXORDERING_MASK = 1 << VERTEXORDERING_CASE
, TWOSIDE_MASK = 1 << TWOSIDE_CASE
, CULLING_MASK = 1 << CULLING_CASE
,
SHADE_MODEL_MASK = 1 << SHADE_MODEL_CASE
, ALPHATEST_MASK = 1 << ALPHATEST_CASE
, GLIMAGE_MASK = 1 << GLIMAGE_CASE
, ALL_MASK = (1 << LAZYCASES_LAST)-1
} |
enum | internalMasks {
OTHER_COLOR_MASK = AMBIENT_MASK|EMISSIVE_MASK|SPECULAR_MASK|SHININESS_MASK
, ALL_COLOR_MASK = OTHER_COLOR_MASK|DIFFUSE_MASK
, NO_COLOR_MASK = ALL_MASK & (~ALL_COLOR_MASK)
, ALL_BUT_DIFFUSE_MASK = ALL_MASK &(~ DIFFUSE_MASK)
,
DIFFUSE_ONLY_MASK = ALL_MASK &(~ OTHER_COLOR_MASK)
} |
enum | LightModel { BASE_COLOR
, PHONG
} |
enum | VertexOrdering { CW
, CCW
} |
static SoElement * | getElement (SoState *const state, const int stackIndex) |
static const SoElement * | getConstElement (SoState *const state, const int stackIndex) |
static int | createStackIndex (const SoType id) |
struct SoLazyElement::CoinState | coinstate |
SoType | typeId |
int | stackIndex |
int | depth |
static int | classStackIndex |
static SoTypeList * | stackToType |
The SoGLLazyElement class is meant to optimize GL rendering.
This is just a wrap-around implementation for compatibility. It should (hopefully) work in the same way as the Inventor class though.