SOFA API  ca665544
Open source framework for multi-physics simuation
sofa::simulation::xml::NodeElement Class Reference

#include <NodeElement.h>

Inheritance diagram for sofa::simulation::xml::NodeElement:

Public Member Functions

 NodeElement (const std::string &name, const std::string &type, BaseElement *parent=nullptr)
 
 ~NodeElement () override
 
bool setParent (BaseElement *newParent) override
 Change this node's parent. Note that this method is protected as it should be called by the parent's addChild/removeChild methods. More...
 
bool initNode () override
 
bool init () override
 
virtual const chargetClass () const override
 Get the node class (Scene, Mapping, ...) More...
 
- Public Member Functions inherited from sofa::simulation::xml::Element< sofa::core::objectmodel::BaseNode >
 Element (const std::string &name, const std::string &type, BaseElement *newParent=nullptr)
 
 ~Element () override
 
sofa::core::objectmodel::BaseNodegetTypedObject ()
 
virtual void setObject (typename Object::SPtr newObject)
 
sofa::core::objectmodel::BasegetObject () override
 Get the associated object. More...
 
- Public Member Functions inherited from sofa::simulation::xml::BaseElement
 BaseElement (const std::string &name, const std::string &type, BaseElement *newParent=nullptr)
 
 ~BaseElement () override
 
std::string getName () override
 Get the node instance name. More...
 
virtual void setName (const std::string &newName) override
 Set the object instance name. More...
 
std::string getType ()
 Get the node instance type (MassObject, IdentityMapping, ...) More...
 
virtual void setType (const std::string &newType)
 
sofa::core::objectmodel::BaseObjectDescriptiongetParent () const override
 Get the parent node. More...
 
BaseElementgetParentElement () const
 Get the parent node. More...
 
std::string getBaseFile () override
 Get the file where this description was read from. Useful to resolve relative file paths. More...
 
virtual void setBaseFile (const std::string &newBaseFile)
 
const std::string & getSrcFile () const
 
virtual void setSrcFile (const std::string &newSrcFile)
 
int getSrcLine () const
 
virtual void setSrcLine (const int l)
 
bool isFileRoot ()
 Return true if this element was the root of the file. More...
 
IncludeNodeType getIncludeNodeType () const
 Return if the current element ifsa special group node from an included file. More...
 
void setIncludeNodeType (IncludeNodeType t)
 Specify that the current element is a special group node from an included file. More...
 
virtual bool presenceAttribute (const std::string &s)
 Verify the presence of an attribute. More...
 
virtual bool removeAttribute (const std::string &attr) override
 Remove an attribute. Fails if this attribute is "name" or "type". More...
 
virtual void addReplaceAttribute (const std::string &attr, const char *val)
 List of parameters to be replaced. More...
 
virtual BaseElementfindNode (const char *nodeName, bool absolute=false)
 Find a node given its name. More...
 
BaseObjectDescriptionfind (const char *nodeName, bool absolute=false) override
 Find a node given its name. More...
 
template<class Sequence >
void pushObjects (Sequence &result)
 Get all objects of a given type. More...
 
template<class Map >
void pushNamedObjects (Map &result)
 Get all objects of a given type. More...
 
virtual bool addChild (BaseElement *child)
 
virtual bool removeChild (BaseElement *child)
 
template<class Node >
child_iterator< Nodebegin ()
 
child_iterator< BaseElementbegin ()
 
template<class Node >
child_iterator< Nodeend ()
 
child_iterator< BaseElementend ()
 
- Public Member Functions inherited from sofa::core::objectmodel::BaseObjectDescription
 BaseObjectDescription (const char *name=nullptr, const char *type=nullptr)
 
virtual ~BaseObjectDescription ()
 
virtual const AttributeMapgetAttributeMap () const
 
template<class T >
void getAttributeList (T &container) const
 
virtual BasefindObject (const char *nodeName)
 Find an object given its name (relative to this object) More...
 
virtual const chargetAttribute (const std::string &attr, const char *defaultVal=nullptr)
 Get an attribute given its name (return defaultVal if not present) More...
 
virtual float getAttributeAsFloat (const std::string &attr, const float defaultVal=0.0)
 Docs is in .h. More...
 
virtual int getAttributeAsInt (const std::string &attr, const int defaultVal=0.0)
 Docs is in .h. More...
 
virtual void setAttribute (const std::string &attr, const std::string &val)
 Set an attribute. Override any existing value. More...
 
virtual std::string getFullName ()
 Get the full name of this object (i.e. concatenation if all the names of its ancestors and itself) More...
 
virtual void logError (const std::string &s)
 
virtual void logErrors (const std::vector< std::string > &e)
 
std::vector< std::string > const & getErrors () const
 
virtual void clearErrors ()
 

Additional Inherited Members

- Protected Attributes inherited from sofa::simulation::xml::BaseElement
std::map< std::string, std::string > replaceAttribute
 
- Protected Attributes inherited from sofa::core::objectmodel::BaseObjectDescription
AttributeMap attributes
 
std::vector< std::string > errors
 
- Static Public Member Functions inherited from sofa::simulation::xml::BaseElement
static BaseElementCreate (const std::string &nodeClass, const std::string &name, const std::string &type)
 
template<class Node >
static Nodecreate (Node *, std::pair< std::string, std::string > arg)
 

Constructor details

◆ NodeElement()

sofa::simulation::xml::NodeElement::NodeElement ( const std::string &  name,
const std::string &  type,
BaseElement parent = nullptr 
)

◆ ~NodeElement()

sofa::simulation::xml::NodeElement::~NodeElement ( )
override

Function details

◆ getClass()

const char * sofa::simulation::xml::NodeElement::getClass ( ) const
overridevirtual

Get the node class (Scene, Mapping, ...)

Implements sofa::simulation::xml::BaseElement.

◆ init()

bool sofa::simulation::xml::NodeElement::init ( void  )
overridevirtual

◆ initNode()

bool sofa::simulation::xml::NodeElement::initNode ( )
overridevirtual

◆ setParent()

bool sofa::simulation::xml::NodeElement::setParent ( BaseElement newParent)
overridevirtual

Change this node's parent. Note that this method is protected as it should be called by the parent's addChild/removeChild methods.

Reimplemented from sofa::simulation::xml::BaseElement.