Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://coin3d.github.io
https://www.kongsberg.com/en/kogt/
ScXMLDataElt Class Reference

the <data> SCXML element. More...

#include <Inventor/scxml/ScXMLDataElt.h>

Inheritance diagram for ScXMLDataElt:
ScXMLElt ScXMLObject

Public Member Functions

virtual SoType getTypeId (void) const
 Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting. More...
 
virtual void setIDAttribute (const char *ID)
 
virtual const char * getIDAttribute (void) const
 
virtual void setSrcAttribute (const char *src)
 
virtual const char * getSrcAttribute (void) const
 
virtual void setExprAttribute (const char *expr)
 
virtual const char * getExprAttribute (void) const
 
virtual SbBool handleXMLAttributes (void)
 
virtual void copyContents (const ScXMLElt *rhs)
 
virtual const ScXMLEltsearch (const char *attrname, const char *attrvalue) const
 
virtual void setValueObj (ScXMLDataObj *value)
 
virtual ScXMLDataObjgetValueObj (void) const
 
- Public Member Functions inherited from ScXMLElt
void setXMLAttribute (const char *attribute, const char *value)
 
const char * getXMLAttribute (const char *attribute) const
 
ScXMLEltclone (void) const
 
virtual void setContainer (ScXMLElt *container)
 
ScXMLEltgetContainer (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. More...
 

Static Public Member Functions

static ScXMLEltReadergetElementReader (void)
 
static SoType getClassTypeId (void)
 
static void * createInstance (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. More...
 
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. More...
 
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.
 

Protected Attributes

char * ID
 
char * src
 
char * expr
 
ScXMLDataObjvalue
 

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

the <data> SCXML element.

The <data> SCXML element is for storing variables. They need to be contained within a <datamodel> element. <data> elements are only functional in state machines with a profile that has an implementation of the Data Module. The "minimum" profile does not, but the "x-coin" profile does.

The following attributes are accepted:

  • ID
  • src - not supported
  • expr

The ID attribute is required and specifies the variable name. The variable name must be unique for the whole SCXML state machine specification.

The src attribute is not supported.

The expr attribute specifies the value of the variable. The attribute is evaluated based on which profile the state machine is using.

The value of the <data> variable can be changed through the use of <assign> elements, and their values can be passed on to other systems through the use of the <send> element in the External Communications Module.

Since
Coin 4.0
See also
ScXMLDataModelElt, ScXMLAssignElt, ScXMLSendElt

Member Function Documentation

◆ getTypeId()

SoType ScXMLDataElt::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.

See also
SoBase::getTypeId() const

Implements ScXMLElt.

◆ handleXMLAttributes()

SbBool ScXMLDataElt::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.

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

This base class implementation does nothing and just returns TRUE.

Reimplemented from ScXMLElt.

◆ search()

const ScXMLElt * ScXMLDataElt::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.

Returns NULL if nothing was found.

This function needs to be reimplemented to traverse child elements.

Reimplemented from ScXMLElt.


The documentation for this class was generated from the following files: