SoDepthBufferElement(3)

πŸ“¦
version 4.0.10 Β· 4 versions
, in fedora 43, fedora 44

✨ SoDepthBufferElement ✨

okay so bestie, gather round, because today we're reading SoDepthBufferElement(3) from the Coin fam, and honestly? she's giving depth-buffer-boss-energy πŸ’…


πŸŽ€ NAME πŸŽ€

SoDepthBufferElement β€” the element that controls all the depth buffer settings. that's it, that's the whole job, and she does it flawlessly 🫢


🌸 SYNOPSIS 🌸

first things first, you gotta pull her in:

#include <Inventor/elements/SoDepthBufferElement.h>

she Inherits SoElement.

and she's Inherited by SoGLDepthBufferElement. iconic lineage, no cap πŸ‘‘

πŸ’– Public Types πŸ’–

the one and only enum, and she has range:

enum DepthWriteFunction { NEVER, ALWAYS, LESS, LEQUAL, EQUAL, GEQUAL,
    GREATER, NOTEQUAL }

πŸ¦‹ Public Member Functions πŸ¦‹

her own methods, all up in here:

virtual void init (SoState *state)
virtual void push (SoState *state)
virtual void pop (SoState *state, const SoElement *prevTopElement)
virtual SbBool matches (const SoElement *element) const
virtual SoElement * copyMatchInfo (void) const

✨ Public Member Functions inherited from SoElement ✨

the family hand-me-downs, and they ate:

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 Public Member Functions 🌈

the static girlies, doing their thing without needing an instance:

static SoType getClassTypeId (void)
static int getClassStackIndex (void)
static void * createInstance (void)
static void initClass (void)
static void set (SoState *state, SbBool test, SbBool write,
    DepthWriteFunction function, SbVec2f range)
static void get (SoState *state, SbBool &test_out, SbBool &write_out,
    DepthWriteFunction &function_out, SbVec2f &range_out)
static SbBool getTestEnable (SoState *state)
static SbBool getWriteEnable (SoState *state)
static DepthWriteFunction getFunction (SoState *state)
static SbVec2f getRange (SoState *state)

⭐ Static Public Member Functions inherited from SoElement ⭐

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)

πŸ’œ Protected Member Functions πŸ’œ

the ~for the class's eyes only~ section, iykyk:

virtual ~SoDepthBufferElement ()
virtual void setElt (SbBool test, SbBool write, DepthWriteFunction
    function, SbVec2f range)

🧚 Protected Member Functions inherited from SoElement 🧚

SoElement (void)
void capture (SoState *const state) const
virtual void captureThis (SoState *state) const
void setTypeId (const SoType typeId)
void setStackIndex (const int index)
SoElement * getNextInStack (void) const
SoElement * getNextFree (void) const

πŸ“ Protected Attributes πŸ“

the state she's holding onto, lowkey:

  • SbBool test
  • SbBool write
  • DepthWriteFunction function
  • SbVec2f range

πŸ’– Protected Attributes inherited from SoElement πŸ’–

  • SoType typeId
  • int stackIndex
  • int depth

🫢 Additional Inherited Members 🫢

✨ Static Protected Member Functions inherited from SoElement ✨

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)

🌸 Static Protected Attributes inherited from SoElement 🌸

  • static int classStackIndex
  • static SoTypeList * stackToType

πŸ‘‘ Detailed Description πŸ‘‘

SoDepthBufferElement controls the depth buffer settings. she's the one holding the vibes of your depth test and write state, fr fr.

⚠️ heads up bestie: be aware that this class is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API. so if you go looking for her in the O.G. API, she will not be there. πŸ’€

Since

  • Coin 3.0 🌈

πŸŽ€ Constructor & Destructor Documentation πŸŽ€

SoDepthBufferElement::~SoDepthBufferElement (void ) [protected], [virtual]

Destructor. say bye bestie, she's cleaning up πŸ’…


πŸ¦‹ Member Function Documentation πŸ¦‹

SoType SoDepthBufferElement::getClassTypeId (void ) [static]

This static method returns the SoType object associated with objects of this class.

also: this static method returns the class type. ✨

int SoDepthBufferElement::getClassStackIndex (void ) [static]

This static method returns the state stack index for the class. yes queen, tell us where you sit in the stack πŸ‘‘

void * SoDepthBufferElement::createInstance (void ) [static]

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Creates a new instance of the class type corresponding to the SoType object. ✨

void SoDepthBufferElement::initClass (void ) [static]

Initialize relevant common data for all instances, like the type system. the whole squad gets set up at once 🫢

void SoDepthBufferElement::set (SoState * state, SbBool test, SbBool write, DepthWriteFunction function, SbVec2f range) [static]

Set this element's values. that's the whole vibe: you hand over test, write, function, and range, and she holds them πŸ’–

void SoDepthBufferElement::get (SoState * state, SbBool & test_out, SbBool & write_out, DepthWriteFunction & function_out, SbVec2f & range_out) [static]

Fetches this element's values. she gives them right back through test_out, write_out, function_out, and range_out β€” no gatekeeping 🌸

SbBool SoDepthBufferElement::getTestEnable (SoState * state) [static]

Returns the depth test enabled state. is the test on or not, bestie? πŸ¦‹

SbBool SoDepthBufferElement::getWriteEnable (SoState * state) [static]

Returns the depth buffer write enabled state. can we write to it or nah? ✨

SoDepthBufferElement::DepthWriteFunction SoDepthBufferElement::getFunction (SoState * state) [static]

Returns the set depth buffer write function. which of the enum girlies is on duty πŸ’…

SbVec2f SoDepthBufferElement::getRange (SoState * state) [static]

Returns the depth buffer value range used. the SbVec2f range, as promised 🌈

void SoDepthBufferElement::init (SoState * state) [virtual]

Internal Coin method.

Reimplemented from SoElement.

Reimplemented in SoGLDepthBufferElement.

void SoDepthBufferElement::push (SoState * state) [virtual]

Internal Coin method.

Reimplemented from SoElement.

Reimplemented in SoGLDepthBufferElement.

void SoDepthBufferElement::pop (SoState * state, const SoElement * prevTopElement) [virtual]

Internal Coin method.

Reimplemented from SoElement.

Reimplemented in SoGLDepthBufferElement.

SbBool SoDepthBufferElement::matches (const SoElement * element) const [virtual]

Internal Coin method.

Implements SoElement.

SoElement * SoDepthBufferElement::copyMatchInfo (void ) const [virtual]

Internal Coin method.

Implements SoElement.

void SoDepthBufferElement::setElt (SbBool test, SbBool write, DepthWriteFunction function, SbVec2f range) [protected], [virtual]

Virtual method to set the state to get derived elements updated.

Reimplemented in SoGLDepthBufferElement.


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for Coin from the source code. (not me, a robot wrote the skeleton, i just gave her a personality 🫢)


and that's the whole page bestie!! she's Version 4.0.10, born Thu Jun 25 2026 00:00:00, and she's out here slaying depth buffers for the SoDepthBufferElement(3) corner of the Coin universe. go forth and render responsibly πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from