#include <BaseLink.h>
Abstract base class for all links in the scene grapn, independently of their type. More...

Abstract base class for all links in the scene grapn, independently of their type.
| Classes | |
| class | BaseInitLink | 
| This internal class is used by the initLink() methods to store initialization parameters of a Data.  More... | |
| class | InitLink | 
| This internal class is used by the initLink() methods to store initialization parameters of a Data.  More... | |
| Public Member Functions | |
| BaseLink (LinkFlags flags) | |
| BaseLink (const BaseInitLink &init, LinkFlags flags) | |
| virtual | ~BaseLink () | 
| const std::string & | getName () const | 
| void | setName (const std::string &name) | 
| const std::string & | getHelp () const | 
| Get help message.  More... | |
| void | setHelp (const std::string &val) | 
| Set help message.  More... | |
| virtual Base * | getOwnerBase () const =0 | 
| void | setFlag (LinkFlagsEnum flag, bool b) | 
| Set one of the flags.  More... | |
| bool | getFlag (LinkFlagsEnum flag) const | 
| Get one flag.  More... | |
| bool | isMultiLink () const | 
| bool | isStrongLink () const | 
| bool | isDoubleLink () const | 
| bool | isDuplicate () const | 
| bool | storePath () const | 
| void | setPersistent (bool b) | 
| Alias to match BaseData API.  More... | |
| bool | isPersistent () const | 
| bool | isReadOnly () const | 
| Alias to match BaseData API.  More... | |
| virtual const BaseClass * | getDestClass () const =0 | 
| virtual const BaseClass * | getOwnerClass () const =0 | 
| int | getCounter () const | 
| void | setLinkedBase (Base *link) | 
| virtual size_t | getSize () const =0 | 
| Base * | getLinkedBase (std::size_t index=0) const | 
| void | clear () | 
| std::string | getLinkedPath (const std::size_t index=0) const | 
| std::string | getPath (std::size_t index=0) const | 
| Serialization API | |
| bool | read (const std::string &str) | 
| Read the command line.  More... | |
| bool | updateLinks () | 
| virtual void | printValue (std::ostream &) const | 
| Print the value of the associated variable.  More... | |
| virtual std::string | getValueString () const | 
| Print the value of the associated variable.  More... | |
| virtual std::string | getValueTypeString () const | 
| Print the value type of the associated variable.  More... | |
| Serialization Helper API | |
| unsigned int | m_flags | 
| std::string | m_name | 
| std::string | m_help | 
| int | m_counter | 
| Number of changes since creation.  More... | |
| bool | parseString (const std::string &text, std::string *path, std::string *data=nullptr) const | 
| Base * | getOwner () const | 
| void | setOwner (Base *owner) | 
| bool | add (Base *baseptr, const std::string &path) | 
| Add a new target to the link.  More... | |
| bool | set (Base *baseptr, size_t index=0) | 
| Change the link's target at the provided index.  More... | |
| static bool | ParseString (const std::string &text, std::string *path, std::string *data=nullptr, Base *start=nullptr) | 
| static std::string | CreateString (const std::string &path, const std::string &data="") | 
| static std::string | CreateStringPath (Base *object, Base *from) | 
| static std::string | CreateStringData (BaseData *data) | 
| static std::string | CreateString (Base *object, Base *from) | 
| static std::string | CreateString (BaseData *data, Base *from) | 
| static std::string | CreateString (Base *object, BaseData *data, Base *from) | 
| void | updateCounter () | 
| 
 | protected | 
Number of changes since creation.
| 
 | protected | 
| 
 | protected | 
| sofa::core::objectmodel::BaseLink::BaseLink | ( | LinkFlags | flags | ) | 
| sofa::core::objectmodel::BaseLink::BaseLink | ( | const BaseInitLink & | init, | 
| LinkFlags | flags | ||
| ) | 
| 
 | virtual | 
Add a new target to the link.
| 
 | inline | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | inline | 
Return the number of changes since creation This can be used to efficiently detect changes
| 
 | pure virtual | 
| 
 | inline | 
Get one flag.
| 
 | inline | 
Get help message.
| 
 | inline | 
| std::string sofa::core::objectmodel::BaseLink::getLinkedPath | ( | const std::size_t | index = 0 | ) | const | 
| 
 | inline | 
| 
 | inline | 
| 
 | pure virtual | 
| 
 | pure virtual | 
| 
 | inline | 
| 
 | pure virtual | 
| 
 | virtual | 
Print the value of the associated variable.
| 
 | virtual | 
Print the value type of the associated variable.
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | static | 
| 
 | virtual | 
Print the value of the associated variable.
| bool sofa::core::objectmodel::BaseLink::read | ( | const std::string & | str | ) | 
Read the command line.
Returns false if:
Change the link's target at the provided index.
| 
 | inline | 
Set one of the flags.
| 
 | inline | 
Set help message.
| void sofa::core::objectmodel::BaseLink::setLinkedBase | ( | Base * | link | ) | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineprotected | 
| bool sofa::core::objectmodel::BaseLink::updateLinks | ( | ) | 
Update pointers in case the pointed-to objects have appeared