#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