SoWindowElement(3)
π SoWindowElement(3) π
okay bestie, so this one's from the Library Functions Manual and it's literally the page for SoWindowElement β the little element that keeps track of what your current window is up to. grab a boba, we're doing this π§β¨
πΈ NAME πΈ
SoWindowElement β the class that's used to store current window attributes. that's it, that's the whole vibe π
β¨ SYNOPSIS β¨
#include <Inventor/elements/SoWindowElement.h>
Inherits SoElement. yes she's a nepo baby, but like, a talented one π
π Public Member Functions π
virtual void init (SoState *state)virtual void push (SoState *state)virtual void pop (SoState *state, const SoElement *prevTopElement)virtual SbBool matches (const SoElement *element) constvirtual SoElement * copyMatchInfo (void) const
π« Public Member Functions inherited from SoElement π«
const SoType getTypeId (void) constint getStackIndex (void) constvoid setDepth (const int depth)int getDepth (void) constvirtual void print (FILE *file=stdout) constvirtual ~SoElement ()
β Static Public Member Functions β
static SoType getClassTypeId (void)static int getClassStackIndex (void)static void * createInstance (void)static void initClass (void)static void set (SoState *state, void *window, void *context, void *display, SoGLRenderAction *action)static void get (SoState *state, void *&window, void *&context, void *&display, SoGLRenderAction *&action)
π« 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 π¦
virtual ~SoWindowElement ()
π« Protected Member Functions inherited from SoElement π«
SoElement (void)void capture (SoState *const state) constvirtual void captureThis (SoState *state) constvoid setTypeId (const SoType typeId)void setStackIndex (const int index)SoElement * getNextInStack (void) constSoElement * getNextFree (void) const
π Protected Attributes π
void * windowvoid * contextvoid * displaySoGLRenderAction * glRenderAction
π« Protected Attributes inherited from SoElement π«
SoType typeIdint stackIndexint 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 classStackIndexstatic SoTypeList * stackToType
π Detailed Description π
The SoWindowElement class is used to store current window attributes. (yes, same sentence as the NAME section, she said it twice because it's important, periodt π
)
okay so this next bit is a real one, bestie. listen up.
In Coin, this element is not API-compatible with SGI Inventor, since it contains platform specific stuff, which we want to avoid. so like, if you're porting code over, vibe check first π
Instead of the platform specific types we use void pointers. We're sorry for any inconvenience this might cause people using this element. π«Ά (they literally apologized in the source, that's so real of them)
π οΈ Constructor & Destructor Documentation π οΈ
SoWindowElement::~SoWindowElement (void ) [protected], [virtual]
The destructor. she's leaving, say bye π¦
π₯ Member Function Documentation π₯
void * SoWindowElement::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. so like... not for you, bestie, but it's here, and we're listing it anyway π
void SoWindowElement::init (SoState * state) [virtual]
This function initializes the element type in the given SoState. It is called for the first element of each enabled element type in SoState objects.
Reimplemented from SoElement.
void SoWindowElement::push (SoState * state) [virtual]
This method is called every time a new element is required in one of the stacks. This happens when a writable element is requested, using SoState::getElement() or indirectly SoElement::getElement(), and the depth of the current element is less than the state depth.
Override this method if your element needs to copy data from the previous top of stack. The push() method is called on the new element, and the previous element can be found using SoElement::getNextInStack().
Reimplemented from SoElement.
void SoWindowElement::pop (SoState * state, const SoElement * prevTopElement) [virtual]
This method is callled when the state is popped, and the depth of the element is bigger than the current state depth. pop() is called on the new top of stack, and a pointer to the previous top of stack is passed in prevTopElement.
ngl the original spells it "callled" β three L's, iconic typo, we're keeping it exactly as it is π
Override this method if you need to copy some state information from the previous top of stack.
Reimplemented from SoElement.
SbBool SoWindowElement::matches (const SoElement * element) const [virtual]
This function returns TRUE is the element matches another element (of the same class), with respect to cache validity.
If the application programmer's extension element has a matches() function, it should also have a copyMatchInfo() function.
Implements SoElement.
SoElement * SoWindowElement::copyMatchInfo (void ) const [virtual]
This function creates a copy of the element that contains enough information to enable the matches() function to work.
Used to help with scenegraph traversal caching operations.
Implements SoElement.
void SoWindowElement::set (SoState * state, void * window, void * context, void * display, SoGLRenderAction * action) [static]
Sets data for this element. put the stuff in, slay β¨
void SoWindowElement::get (SoState * state, void *& window, void *& context, void *& display, SoGLRenderAction *& action) [static]
Returns data for this element. get the stuff out, also slay π
π Member Data Documentation π
void* SoWindowElement::window [protected]
The window id.
void* SoWindowElement::context [protected]
The current context.
void* SoWindowElement::display [protected]
The current display.
SoGLRenderAction* SoWindowElement::glRenderAction [protected]
The current render action.
π§ Author π§
Generated automatically by Doxygen for Coin from the source code. (not a human, just a robot doing its little robot thing, and honestly? it ate π€β¨)
and that's the whole page bestie, you're officially fluent in SoWindowElement now, main character energy only π
this lil tutorial was brought to you by Coin, Version 3.1.3 β mwah, ily, go render something gorgeous ππ
π¦ where this page comes from
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms