ScXMLInvokeElt(3)

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

✨ NAME ✨

ScXMLInvokeElt β€” the class that implements the <invoke> SCXML element, bestie πŸ’–


🌸 SYNOPSIS 🌸

#include <Inventor/scxml/ScXMLInvokeElt.h>

Inherits ScXMLExecutableElt.

πŸ‘‘ Public Member Functions

  • virtual SoType getTypeId (void) const β€” hands you the type identification of an object derived from a class inheriting SoBase. it's the thing that makes runtime type checking and "downward" casting work πŸ¦‹
  • virtual void setTargetTypeAttribute (const char *id)
  • const char * getTargetTypeAttribute (void) const
  • virtual void setSrcAttribute (const char *id)
  • const char * getSrcAttribute (void) const
  • virtual void setSrcExprAttribute (const char *id)
  • const char * getSrcExprAttribute (void) const
  • virtual SbBool handleXMLAttributes (void)
  • virtual void copyContents (const ScXMLElt *rhs)
  • virtual const ScXMLElt * search (const char *attrname, const char *attrvalue) const
  • virtual int getNumParams (void) const
  • virtual ScXMLParamElt * getParam (int idx) const
  • virtual void addParam (ScXMLParamElt *param)
  • virtual void removeParam (ScXMLParamElt *param)
  • virtual void clearAllParams (void)
  • virtual void setFinalize (ScXMLFinalizeElt *finalize)
  • virtual ScXMLFinalizeElt * getFinalize (void) const
  • virtual void setContent (ScXMLContentElt *content)
  • virtual ScXMLContentElt * getContent (void) const

🫢 Public Member Functions inherited from ScXMLExecutableElt

  • virtual void execute (ScXMLStateMachine *statemachine) const

πŸ’œ Public Member Functions inherited from ScXMLElt

  • void setXMLAttribute (const char *attribute, const char *value)
  • const char * getXMLAttribute (const char *attribute) const
  • ScXMLElt * clone (void) const
  • virtual void setContainer (ScXMLElt *container)
  • ScXMLElt * getContainer (void) const
  • SbBool isContainedIn (const ScXMLElt *object) const

🌈 Public Member Functions inherited from ScXMLObject

  • SbBool isOfType (SoType type) const β€” returns TRUE if the type of this object is either of the same type or inherited from type. like, is it that girl or descended from that girl πŸ’…

⭐ Static Public Member Functions

  • static ScXMLEltReader * getElementReader (void)
  • static SoType getClassTypeId (void)
  • static void * createInstance (void)
  • static void initClass (void)
  • static void cleanClass (void)

⭐ Static Public Member Functions inherited from ScXMLExecutableElt

  • static SoType getClassTypeId (void)
  • static void initClass (void)
  • static void cleanClass (void)

⭐ Static Public Member Functions inherited from ScXMLElt

  • static SoType getClassTypeId (void)
  • static void initClass (void)
  • static void cleanClass (void)

⭐ Static Public Member Functions inherited from ScXMLObject

  • static SoType getClassTypeId (void) β€” this static method returns the SoType object associated with objects of this class.
  • 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 cleanClass (void) β€” does the opposite of initClass, deallocates any class specific resources and resets the class to an uninitialized state with respect to the Coin type system. it's giving "un-birth" energy 😭

πŸŽ€ Protected Attributes

  • char * targettype
  • char * src
  • char * srcexpr

🧚 Additional Inherited Members

🌸 Static Protected Member Functions inherited from ScXMLElt

  • static void registerClassType (const char *xmlns, const char *classname, SoType type)
  • static void registerInvokeClassType (const char *xmlns, const char *targettype, const char *source, SoType type)

🌸 Static Protected Member Functions inherited from ScXMLObject

  • static void registerClassType (const char *xmlns, const char *classname, SoType type)
  • static void registerInvokeClassType (const char *xmlns, const char *targettype, const char *source, SoType type)

πŸ’« Detailed Description πŸ’«

implements the <invoke> SCXML element. periodt.

Important note for SCXML-users on the Coin 3.0 implementation of the <invoke> element: the first SCXML-implementation of Coin was based on a draft from February 2007, and the interpretation done of the <invoke> element was wrong in certain aspects that has become clear in later revisions of the standards draft. the SCXML-implementation was, for various reasons, rushed β€” with a timeframe where no scripting capabilities would be possible to get ready, and the navigation system code (the primary purpose of implementing the SCXML system) had to be plugged in somewhere. and this was, at that time, done on the <invoke> element. πŸ™ˆ

for the current implementation, the navigation code has been moved away from being <invoke>-based to being a service communicated to through the <send> element, to be more standards-conformant. and to make the situation even more ridiculous, that approach will likely be deprecated in the not-too-distant future, to be replaced by a pure, inlined, scripting-based approach. those two approaches should however be fully possible to keep alive side-by-side for a while, so following the current lead in implementing your own custom navigation systems should be a lot safer than doing it over the misguided <invoke>-approach. no cap. 🫢

Since

Coin 3.0


πŸ“– Member Function Documentation πŸ“–

πŸ’… SoType ScXMLInvokeElt::getTypeId (void ) const [virtual]

returns the type identification of an object derived from a class inheriting SoBase. this is used for runtime type checking and "downward" casting. it's literally the vibe check of the type system ✨

See also

SoBase::getTypeId() const

Implements ScXMLExecutableElt.

πŸ’… SbBool ScXMLInvokeElt::handleXMLAttributes (void ) [virtual]

this method is called when the file reader has set all the XML attributes on the object, and wants the object to handle them and report if the values were OK or if a read error should be produced. so it's the "bestie, do these attributes look right to you?" moment πŸŽ€

Returns

TRUE if the attributes are OK, and FALSE on error.

this base class implementation does nothing and just returns TRUE. iconic lazy-girl behavior, honestly πŸ’€

Reimplemented from ScXMLElt.

πŸ’… void ScXMLInvokeElt::copyContents (const ScXMLElt * rhs) [virtual]

Reimplemented from ScXMLExecutableElt.

πŸ’… const ScXMLElt * ScXMLInvokeElt::search (const char * attrname, const char * attrvalue) const [virtual]

this method searches the SCXML structure for an element with the given attribute value for the given attribute. detective mode fr fr πŸ”

Returns NULL if nothing was found.

this function needs to be reimplemented to traverse child elements.

Reimplemented from ScXMLElt.


🌟 Author 🌟

Generated automatically by Doxygen for Coin from the source code. it's not a person, it's a whole robot doing the most πŸ€–πŸ’–


Version 4.0.10 Β· Thu Jun 25 2026 00:00:00 Β· ScXMLInvokeElt(3)

and that's the whole page bestie, slay, go build something iconic with it πŸ‘‘βœ¨πŸ¦‹

πŸ“¦ where this page comes from