---
name: "SoInt32Element"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SoInt32Element"
---

# SoInt32Element(3)

The SoInt32Element class is the base class for elements that simply store a 32-bit integer.

## NAME

SoInt32Element - The **SoInt32Element** class is the base class for elements that simply store a 32-bit integer.

## SYNOPSIS

\#include \<Inventor/elements/SoInt32Element.h\>

Inherits **SoElement**.

Inherited by **SoAnnoText3CharOrientElement**, **SoAnnoText3FontSizeHintElement**, **SoAnnoText3RenderPrintElement**, **SoComplexityTypeElement**, **SoDecimationTypeElement**, **SoDrawStyleElement**, **SoGLLightIdElement**, **SoGLShadowCullingElement**, **SoLightModelElement**, **SoLinePatternElement**, **SoMaterialBindingElement**, **SoNormalBindingElement**, **SoPickStyleElement**, **SoShadowStyleElement**, **SoSwitchElement**, **SoTextOutlineEnabledElement**, **SoTextureCoordinateBindingElement**, **SoTextureUnitElement**, **SoUnitsElement**, and **SoVertexAttributeBindingElement**.

### Public Member Functions

virtual void **init** (**SoState** \*state)\
 virtual SbBool **matches** (const **SoElement** \*element) const\
 virtual **SoElement** \* **copyMatchInfo** (void) const\
 virtual void **print** (FILE \*file) const\
 virtual void **setElt** (int32\_t value)\

Public Member Functions inherited from **SoElement** const **SoType** **getTypeId** (void) const\
 int **getStackIndex** (void) const\
 virtual void **push** (**SoState** \*state)\
 virtual void **pop** (**SoState** \*state, const **SoElement** \*prevTopElement)\
 void **setDepth** (const int **depth**)\
 int **getDepth** (void) const\
 virtual **~SoElement** ()\

### Static Public Member Functions

static **SoType** **getClassTypeId** (void)\
 static int **getClassStackIndex** (void)\
 static void **initClass** (void)\
 static void **set** (const int index, **SoState** \*const state, **SoNode** \*const node, const int32\_t value)\
 static void **set** (const int index, **SoState** \*const state, const int32\_t value)\
 static int32\_t **get** (const int index, **SoState** \*const 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

virtual **~SoInt32Element** ()\

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

int32\_t **data**\

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

The **SoInt32Element** class is the base class for elements that simply store a 32-bit integer.

This is the superclass of elements where the new element data *replaces* the old data, and where the data the element stores is a simple 32-bit integer value.

This element is like a convenient light-weight version of the **SoReplacedElement**. It differs from the **SoReplacedElement** in that the **set()** and **get()** methods are already implemented, since it is known that subclasses will still contain just a single 32-bit integer value.

**See also**

**SoReplacedElement**, **SoFloatElement**, **SoAccumulatedElement**

## Constructor & Destructor Documentation

### SoInt32Element::~SoInt32Element (void ) \[protected\], \[virtual\]

Destructor.

## Member Function Documentation

### SoType SoInt32Element::getClassTypeId (void ) \[static\]

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

### int SoInt32Element::getClassStackIndex (void ) \[static\]

This static method returns the state stack index for the class.

### void SoInt32Element::initClass (void ) \[static\]

Initialize relevant common data for all instances, like the type system.

### void SoInt32Element::init (SoState \* state) \[virtual\]

Initializes the element to its default value. The default value for the int32 value is 0.

Reimplemented from **SoElement**.

Reimplemented in **SoAnnoText3CharOrientElement**, **SoAnnoText3FontSizeHintElement**, **SoAnnoText3RenderPrintElement**, **SoComplexityTypeElement**, **SoDecimationTypeElement**, **SoDrawStyleElement**, **SoGLDrawStyleElement**, **SoGLLightIdElement**, **SoGLLinePatternElement**, **SoGLShadowCullingElement**, **SoLightModelElement**, **SoLinePatternElement**, **SoMaterialBindingElement**, **SoNormalBindingElement**, **SoPickStyleElement**, **SoShadowStyleElement**, **SoSwitchElement**, **SoTextOutlineEnabledElement**, **SoTextureCoordinateBindingElement**, **SoTextureUnitElement**, **SoUnitsElement**, and **SoVertexAttributeBindingElement**.

### SbBool SoInt32Element::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 \* SoInt32Element::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 scene graph traversal caching operations.

Implements **SoElement**.

### void SoInt32Element::print (FILE \* file) const \[virtual\]

This function is for printing element information, and is used mostly for debugging purposes.

Reimplemented from **SoElement**.

### void SoInt32Element::set (const int index, SoState \*const state, SoNode \*const node, const int32\_t value) \[static\]

Static method for setting the *value* of an element in the given *state* at the given stack *index*.

### void SoInt32Element::set (const int index, SoState \*const state, const int32\_t value) \[static\]

Static method for setting the *value* of an element in the given *state* at the given *stackIndex*.

### int32\_t SoInt32Element::get (const int index, SoState \*const state) \[static\]

Static method to fetch the value of the element of this type from the given *state* at the given stack *index*.

### void SoInt32Element::setElt (int32\_t value) \[virtual\]

Set element value.

Reimplemented in **SoGLDrawStyleElement**, **SoGLLinePatternElement**, and **SoGLShadowCullingElement**.

## Member Data Documentation

### int32\_t SoInt32Element::data \[protected\]

The 32-bit integer value of the element.

## Author

Generated automatically by Doxygen for Coin from the source code.
