Write the graph, starting from a root Node, into a std::ostream. The format is the DOT language from Graphviz (https://graphviz.org/)
|
| | ExportDotVisitor (const sofa::core::ExecParams *params, std::ostream *out) |
| |
| | ~ExportDotVisitor () override |
| |
| void | processObject (Node *node, core::objectmodel::BaseObject *obj) |
| |
| Result | processNodeTopDown (Node *node) override |
| | Callback method called when descending to a new node. Recursion will stop if this method returns RESULT_PRUNE. More...
|
| |
| void | processNodeBottomUp (Node *node) override |
| | Callback method called after child node have been processed and before going back to the parent node. More...
|
| |
| const char * | getClassName () const override |
| |
| | Visitor (const sofa::core::ExecParams *params) |
| |
| virtual | ~Visitor () |
| |
| const sofa::core::ExecParams * | execParams () const |
| |
| virtual bool | childOrderReversed (simulation::Node *) |
| | Return true to reverse the order of traversal of child nodes. More...
|
| |
| virtual bool | treeTraversal (TreeTraversalRepetition &repeat) |
| |
| virtual const char * | getCategoryName () const |
| |
| virtual std::string | getInfos () const |
| |
| bool | testTags (sofa::core::objectmodel::BaseObject *obj) |
| |
| virtual void | execute (sofa::core::objectmodel::BaseContext *node, bool precomputedOrder=false) |
| | Alias for context->executeVisitor(this) More...
|
| |
| virtual ctime_t | begin (simulation::Node *node, sofa::core::objectmodel::BaseObject *obj, const std::string &typeInfo=std::string("type")) |
| |
| virtual void | end (simulation::Node *node, sofa::core::objectmodel::BaseObject *obj, ctime_t t0) |
| |
| virtual ctime_t | begin (simulation::Visitor::VisitorContext *node, sofa::core::objectmodel::BaseObject *obj, const std::string &typeInfo=std::string("type")) |
| |
| virtual void | end (simulation::Visitor::VisitorContext *node, sofa::core::objectmodel::BaseObject *obj, ctime_t t0) |
| |
| virtual bool | isThreadSafe () const |
| | Specify whether this visitor can be parallelized. More...
|
| |
| Visitor & | setTags (const TagSet &t) |
| |
| Visitor & | addTag (Tag t) |
| |
| Visitor & | removeTag (Tag t) |
| |
| template<class VisitorType , class VContext , class Container , typename PointedType > |
| void | for_each (VisitorType *visitor, VContext *ctx, const Container &list, void(VisitorType::*task)(VContext *, PointedType *), const std::string &typeInfo) |
| |
| template<class VisitorType , class VContext , class Container , typename PointedType > |
| Visitor::Result | for_each (VisitorType *visitor, VContext *ctx, const Container &list, Visitor::Result(VisitorType::*task)(VContext *, PointedType *), const std::string &typeInfo) |
| |
|
| bool | display (Node *node, const char **color=nullptr) |
| | Test if a node should be displayed. More...
|
| |
| bool | display (core::objectmodel::BaseObject *obj, const char **color=nullptr) |
| | Test if an object should be displayed. More...
|
| |
| std::string | getParentName (core::objectmodel::BaseObject *obj) |
| |
| std::string | getName (core::objectmodel::Base *o, std::string prefix) |
| | Compute the name of a given node or object. More...
|
| |
| std::string | getName (core::objectmodel::BaseNode *node) |
| | Compute the name of a given node. More...
|
| |
| std::string | getName (core::objectmodel::BaseObject *obj) |
| | Compute the name of a given object. More...
|
| |
| void | debug_write_state_before (sofa::core::objectmodel::BaseObject *obj) |
| |
| void | debug_write_state_after (sofa::core::objectmodel::BaseObject *obj) |
| |
| template<class VisitorType , class VContext , class ObjectType > |
| void | runVisitorTask (VisitorType *visitor, VContext *ctx, void(VisitorType::*task)(VContext *, ObjectType *), ObjectType *ptr, const std::string &typeInfo=std::string("type")) |
| |
| template<class VisitorType , class VContext , class ObjectType > |
| Result | runVisitorTask (VisitorType *visitor, VContext *ctx, Result(VisitorType::*task)(VContext *, ObjectType *), ObjectType *ptr, const std::string &typeInfo=std::string("type")) |
| |
| template<class Visit , class VContext , class Container , typename PointedType = typename Container::pointed_type> |
| void | for_each (Visit *visitor, VContext *ctx, const Container &list, void(Visit::*task)(VContext *, PointedType *), const std::string &typeInfo=std::string("type")) |
| |
| template<class Visit , class VContext , class Container , typename PointedType = typename Container::pointed_type> |
| Visitor::Result | for_each (Visit *visitor, VContext *ctx, const Container &list, Visitor::Result(Visit::*task)(VContext *, PointedType *), const std::string &typeInfo=std::string("type")) |
| |