SoShaderParameterMatrixArray(3)

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

πŸ’– SoShaderParameterMatrixArray (3) πŸ’–

Coin manual, section 3 β€” yes bestie, we're in the library-functions corner of the Coin docs, pull up a chair 🫢


✨ NAME ✨

SoShaderParameterMatrixArray β€” the class that exists for exactly one iconic job: defining a matrix array as a shader parameter πŸ’…

That's it, that's the whole name section. She's a specialist, she's not trying to do everything, and honestly? Obsessed with the focus. 🌸

Lowkey important: this is a matrix array, not a single matrix. If you came here looking for one lonely matrix, this is not her, bestie. πŸ¦‹

More coming, don't go anywhere β€” part 2 is on the way βœ¨πŸŽ€

✨ SYNOPSIS ✨

#include <Inventor/nodes/SoShaderParameter.h>

Inherits SoUniformShaderParameter. periodt πŸ’…


πŸ’– Public Member Functions πŸ’–

  • virtual SoType getTypeId (void) const β€” the classic type-ID getter, bestie πŸͺͺ
  • virtual void updateParameter (SoGLShaderObject *shaderObject) β€” Updates the shader parameter in the OpenGL state with the content of the value field. ✨

πŸ¦‹ Public Member Functions inherited from SoNode πŸ¦‹

  • void setOverride (const SbBool state)
  • SbBool isOverride (void) const
  • void setNodeType (const NodeType type)
  • NodeType getNodeType (void) const
  • virtual SoNode * copy (SbBool copyconnections=FALSE) const
  • virtual SbBool affectsState (void) const
  • virtual void doAction (SoAction *action)
  • virtual void GLRender (SoGLRenderAction *action)
  • virtual void GLRenderBelowPath (SoGLRenderAction *action)
  • virtual void GLRenderInPath (SoGLRenderAction *action)
  • virtual void GLRenderOffPath (SoGLRenderAction *action)
  • virtual void callback (SoCallbackAction *action)
  • virtual void getBoundingBox (SoGetBoundingBoxAction *action)
  • virtual void getMatrix (SoGetMatrixAction *action)
  • virtual void handleEvent (SoHandleEventAction *action)
  • virtual void pick (SoPickAction *action)
  • virtual void rayPick (SoRayPickAction *action)
  • virtual void search (SoSearchAction *action)
  • virtual void write (SoWriteAction *action)
  • virtual void audioRender (SoAudioRenderAction *action)
  • virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action)
  • virtual void grabEventsSetup (void)
  • virtual void grabEventsCleanup (void)
  • virtual void startNotify (void)
  • virtual void notify (SoNotList *l)
  • SbUniqueId getNodeId (void) const
  • virtual SoChildList * getChildren (void) const
  • virtual void writeInstance (SoOutput *out)
  • virtual SoNode * addToCopyDict (void) const
  • virtual void copyContents (const SoFieldContainer *from, SbBool copyconnections)
  • virtual SoFieldContainer * copyThroughConnection (void) const

πŸ¦‹ Public Member Functions inherited from SoFieldContainer πŸ¦‹

  • void setToDefaults (void)
  • SbBool hasDefaultValues (void) const
  • SbBool fieldsAreEqual (const SoFieldContainer *container) const
  • void copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE)
  • SbBool set (const char *const fielddata)
  • void get (SbString &fielddata)
  • virtual int getFields (SoFieldList &l) const
  • virtual int getAllFields (SoFieldList &l) const
  • virtual SoField * getField (const SbName &name) const
  • virtual SoField * getEventIn (const SbName &name) const
  • virtual SoField * getEventOut (const SbName &name) const
  • SbBool getFieldName (const SoField *const field, SbName &name) const
  • SbBool enableNotify (const SbBool flag)
  • SbBool isNotifyEnabled (void) const
  • SbBool set (const char *fielddata, SoInput *input)
  • void get (SbString &fielddata, SoOutput *out)
  • virtual SbBool validateNewFieldValue (SoField *field, void *newval)
  • virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE)
  • SbBool getIsBuiltIn (void) const
  • virtual void getFieldsMemorySize (size_t &managed, size_t &unmanaged) const
  • void setUserData (void *userdata) const
  • void * getUserData (void) const

πŸ¦‹ Public Member Functions inherited from SoBase πŸ¦‹

  • void ref (void) const
  • void unref (void) const
  • void unrefNoDelete (void) const
  • int32_t getRefCount (void) const
  • void touch (void)
  • SbBool isOfType (SoType type) const β€” Returns TRUE if the type of this object is either of the same type or inherited from type.
  • virtual SbName getName (void) const
  • virtual void setName (const SbName &newname)
  • void addAuditor (void *const auditor, const SoNotRec::Type type)
  • void removeAuditor (void *const auditor, const SoNotRec::Type type)
  • const SoAuditorList & getAuditors (void) const
  • SbBool shouldWrite (void)
  • void assertAlive (void) const

🌟 Static Public Member Functions 🌟

  • static SoType getClassTypeId (void)
  • static void initClass () β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system. πŸͺ„

πŸ¦‹ Static Public Member Functions inherited from SoUniformShaderParameter πŸ¦‹

  • static SoType getClassTypeId (void)
  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.

πŸ¦‹ Static Public Member Functions inherited from SoShaderParameter πŸ¦‹

  • static SoType getClassTypeId (void)
  • static void initClass () β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.

πŸ¦‹ Static Public Member Functions inherited from SoNode πŸ¦‹

  • static uint32_t getCompatibilityTypes (const SoType &nodetype)
  • static SoType getClassTypeId (void)
  • static SoNode * getByName (const SbName &name)
  • static int getByName (const SbName &name, SoNodeList &l)
  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static void initClasses (void)
  • static SbUniqueId getNextNodeId (void)
  • static int getActionMethodIndex (const SoType type)
  • static void getBoundingBoxS (SoAction *action, SoNode *node)
  • static void GLRenderS (SoAction *action, SoNode *node)
  • static void callbackS (SoAction *action, SoNode *node)
  • static void getMatrixS (SoAction *action, SoNode *node)
  • static void handleEventS (SoAction *action, SoNode *node)
  • static void pickS (SoAction *action, SoNode *node)
  • static void rayPickS (SoAction *action, SoNode *node)
  • static void searchS (SoAction *action, SoNode *node)
  • static void writeS (SoAction *action, SoNode *node)
  • static void audioRenderS (SoAction *action, SoNode *node)
  • static void getPrimitiveCountS (SoAction *action, SoNode *node)

πŸ¦‹ Static Public Member Functions inherited from SoFieldContainer πŸ¦‹

  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static SoType getClassTypeId (void) β€” This static method returns the SoType object associated with objects of this class.
  • static void cleanupClass (void)
  • static void initCopyDict (void)
  • static void addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy)
  • static SoFieldContainer * checkCopy (const SoFieldContainer *orig)
  • static SoFieldContainer * findCopy (const SoFieldContainer *orig, const SbBool copyconnections)
  • static void copyDone (void)

πŸ¦‹ Static Public Member Functions inherited from SoBase πŸ¦‹

  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static SoType getClassTypeId (void) β€” This static method returns the SoType object associated with objects of this class.
  • static void addName (SoBase *const base, const char *const name)
  • static void removeName (SoBase *const base, const char *const name)
  • static void incrementCurrentWriteCounter (void)
  • static void decrementCurrentWriteCounter (void)
  • static SoBase * getNamedBase (const SbName &name, SoType type)
  • static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type)
  • static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype)
  • static void setInstancePrefix (const SbString &c)
  • static void setTraceRefs (SbBool trace)
  • static SbBool getTraceRefs (void)
  • static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname)
  • static SbBool readRoute (SoInput *input)

πŸ’Ž Public Attributes πŸ’Ž

  • SoMFMatrix value β€” the actual matrix array, bestie! πŸ“Š

πŸ¦‹ Public Attributes inherited from SoShaderParameter πŸ¦‹

  • SoSFString name
  • SoSFInt32 identifier

πŸ”’ Protected Member Functions πŸ”’

  • virtual const SoFieldData * getFieldData (void) const β€” field-data getter, lowkey important

πŸ¦‹ Protected Member Functions inherited from SoUniformShaderParameter πŸ¦‹

  • SoGLShaderParameter * getGLShaderParameter (const uint32_t cachecontext)
  • void ensureParameter (SoGLShaderObject *shader)

πŸ¦‹ Protected Member Functions inherited from SoShaderParameter πŸ¦‹

  • SoShaderParameter ()
  • virtual ~SoShaderParameter ()

πŸ¦‹ Protected Member Functions inherited from SoNode πŸ¦‹

  • SoNode (void)
  • virtual ~SoNode ()
  • virtual SbBool readInstance (SoInput *in, unsigned short flags)

πŸ¦‹ Protected Member Functions inherited from SoFieldContainer πŸ¦‹

  • SoFieldContainer (void)
  • virtual ~SoFieldContainer ()

πŸ¦‹ Protected Member Functions inherited from SoBase πŸ¦‹

  • SoBase (void)
  • virtual ~SoBase ()
  • virtual void destroy (void)
  • SbBool hasMultipleWriteRefs (void) const
  • SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const
  • void writeFooter (SoOutput *out) const
  • virtual const char * getFileFormatName (void) const
  • virtual SoNotRec createNotRec (void)

πŸ›‘οΈ Static Protected Member Functions πŸ›‘οΈ

  • static const SoFieldData ** getFieldDataPtr (void)

πŸ¦‹ Static Protected Member Functions inherited from SoUniformShaderParameter πŸ¦‹

  • static const SoFieldData ** getFieldDataPtr (void)

πŸ¦‹ Static Protected Member Functions inherited from SoShaderParameter πŸ¦‹

  • static const SoFieldData ** getFieldDataPtr (void)

πŸ¦‹ Static Protected Member Functions inherited from SoNode πŸ¦‹

  • static const SoFieldData ** getFieldDataPtr (void)
  • static void setNextActionMethodIndex (int index)
  • static int getNextActionMethodIndex (void)
  • static void incNextActionMethodIndex (void)
  • static void setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask)

πŸ¦‹ Static Protected Member Functions inherited from SoBase πŸ¦‹

  • static uint32_t getCurrentWriteCounter (void)
  • static void staticDataLock (void)
  • static void staticDataUnlock (void)

🌈 Additional Inherited Members 🌈

πŸ¦‹ Public Types inherited from SoNode πŸ¦‹

  • enum NodeType { INVENTOR = 0x0000, VRML1 = 0x0001, VRML2 = 0x0002, INVENTOR_1 = 0x0004, INVENTOR_2_0 = 0x0008, INVENTOR_2_1 = 0x0010, INVENTOR_2_5 = 0x0020, INVENTOR_2_6 = 0x0040, COIN_1_0 = 0x0080, COIN_2_0 = 0x0100, EXTENSION = 0x0200, COIN_2_2 = 0x0400, COIN_2_3 = 0x0800, COIN_2_4 = 0x1000, INVENTOR_5_0 = 0x2000, COIN_2_5 = 0x4000, COIN_3_0 = 0x8000, INVENTOR_6_0 = 0x10000, COIN_4_0 = 0x20000 }

πŸ¦‹ Protected Types inherited from SoBase πŸ¦‹

  • enum BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 }

πŸ¦‹ Protected Attributes inherited from SoNode πŸ¦‹

  • SbUniqueId uniqueId

πŸ¦‹ Protected Attributes inherited from SoFieldContainer πŸ¦‹

  • SbBool isBuiltIn

πŸ¦‹ Static Protected Attributes inherited from SoNode πŸ¦‹

  • static SbUniqueId nextUniqueId = 1
  • static int nextActionMethodIndex = 0

🌸 Detailed Description 🌸

The SoShaderParameterMatrixArray class is used to define a matrix array as shader parameter. That's the whole vibe, bestie. πŸ’–

πŸ’– Member Function Documentation πŸ’–

✨ SoType SoShaderParameterMatrixArray::getClassTypeId (void ) [static] ✨

Okay so this static cutie returns the SoType object that's linked to objects of this class. That's it, that's the whole job. Type-id business, handled. πŸ’…


πŸ¦‹ SoType SoShaderParameterMatrixArray::getTypeId (void ) const [virtual] πŸ¦‹

Bestie, this one hands you the type identification of any object derived from a class that inherits SoBase. What's it for? Runtime type checking and "downward" casting, periodt. It's giving very much "who dis" but for C++ objects. πŸ‘‘

Reimplemented from SoUniformShaderParameter.


πŸ”’ const SoFieldData ** SoShaderParameterMatrixArray::getFieldDataPtr (void ) [static], [protected] πŸ”’

Lowkey this API member is considered internal to the library, so it's probably not gonna be of interest to the application programmer. It's a behind-the-scenes thing, iykyk.

It returns the SoFieldData class which holds information about fields in this node. 🌸


πŸŽ€ const SoFieldData * SoShaderParameterMatrixArray::getFieldData (void ) const [protected], [virtual] πŸŽ€

Returns a pointer to the class-wide field data storage object for this instance. And if there are no fields present? It returns NULL. Simple as that. πŸ’–

Reimplemented from SoUniformShaderParameter.


πŸ”₯ void SoShaderParameterMatrixArray::updateParameter (SoGLShaderObject * shaderObject) [virtual] πŸ”₯

This is the main character move right here β€” it updates the shader parameter in the OpenGL state using the content of the value field. Go off, shader param. 🌈

Implements SoUniformShaderParameter.


πŸ’œ Member Data Documentation πŸ’œ

⭐ SoMFMatrix SoShaderParameterMatrixArray::value ⭐

The shader parameter value. That's the whole vibe. Literally the value. πŸ’…


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for Coin from the source code.


And that's a wrap on part 3, bestie!! 🫢 This little icon of a page is from Coin version 4.0.10, dated Thu Jun 25 2026 β€” shoutout to the source code for birthing it and Doxygen for the auto-glow-up. No cap, she ate. βœ¨πŸ’–πŸŽ€

πŸ“¦ where this page comes from