#include <c4d_baselist.h>
A dynamic link to a BaseList2D object.
These links can easily be stored in containers and saved to disk, and are even preserved when duplicating hierarchies.
Private Member Functions | |
| BaseLink () | |
| ~BaseLink () | |
Alloc/Free | |
| using | IsAllocType = std::true_type |
| static BaseLink * | Alloc () |
| static BaseLink * | Alloc (const maxon::SourceLocation &) |
| static void | Free (BaseLink *&link) |
Get Link | |
| const BaseList2D * | GetLink (const BaseDocument *doc, Int32 instanceof=0) const |
| BaseList2D * | GetLink (BaseDocument *doc, Int32 instanceof=0) const |
| BaseList2D * | GetLink (std::nullptr_t doc, Int32 instanceof=0) const |
| const C4DAtomGoal * | GetLinkAtom (const BaseDocument *doc, Int32 instanceof=0) const |
| C4DAtomGoal * | GetLinkAtom (BaseDocument *doc, Int32 instanceof=0) const |
| C4DAtomGoal * | GetLinkAtom (std::nullptr_t doc, Int32 instanceof=0) const |
| BaseList2D * | ForceGetLink () const |
| C4DAtomGoal * | ForceGetLinkAtom () const |
Set Link | |
| void | SetLink (const C4DAtomGoal *list) |
Read/Write | |
| Bool | Read (HyperFile *hf) |
| Bool | Write (HyperFile *hf) const |
Copy | |
| BaseLink * | GetClone (COPYFLAGS flags, AliasTrans *trn) const |
| Bool | CopyTo (BaseLink *dst, COPYFLAGS flags, AliasTrans *trn) const |
Miscellaneous | |
| Bool | IsCacheLink () const |
| void | SetUpPointer (C4DAtom *t_up_pointer) |
| using IsAllocType = std::true_type |
|
private |
|
private |
|
static |
|
static |
|
static |
| const BaseList2D* GetLink | ( | const BaseDocument * | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
Evaluates the link in the specified document.
If instanceof is specified, nullptr is returned if the object is not of this type.
| [in] | doc | The document to evaluate the link in. The caller owns the pointed document. |
| [in] | instanceof | Set this to a node type ID to only return the link if it is of this type. |
| BaseList2D* GetLink | ( | BaseDocument * | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
Evaluates the link in the specified document.
If instanceof is specified, nullptr is returned if the object is not of this type.
| [in] | doc | The document to evaluate the link in. The caller owns the pointed document. |
| [in] | instanceof | Set this to a node type ID to only return the link if it is of this type. |
| BaseList2D* GetLink | ( | std::nullptr_t | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
| const C4DAtomGoal* GetLinkAtom | ( | const BaseDocument * | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
Evaluates the atom link in the specified document.
If instanceof is specified, nullptr is returned if the atom object is not of this type.
| [in] | doc | The document to evaluate the link in. The caller owns the pointed document. |
| [in] | instanceof | Set this to a type ID to only return the link if it is of this type. |
| C4DAtomGoal* GetLinkAtom | ( | BaseDocument * | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
Evaluates the atom link in the specified document.
If instanceof is specified, nullptr is returned if the atom object is not of this type.
| [in] | doc | The document to evaluate the link in. The caller owns the pointed document. |
| [in] | instanceof | Set this to a type ID to only return the link if it is of this type. |
| C4DAtomGoal* GetLinkAtom | ( | std::nullptr_t | doc, |
| Int32 | instanceof = 0 |
||
| ) | const |
| BaseList2D* ForceGetLink | ( | ) | const |
Retrieves the stored link independent of a document.
Can return nullptr if there is no object linked. For example:
| C4DAtomGoal* ForceGetLinkAtom | ( | ) | const |
Retrieves the stored atom link independent of a document.
Can return nullptr if there is no object linked. For example:
| void SetLink | ( | const C4DAtomGoal * | list | ) |
Sets the link to point to list.
| [in] | list | The new atom goal. The caller owns the pointed atom goal. |
Reads the link from a hyper file.
| [in] | hf | The hyper file to read from. The caller owns the pointed hyper file. |
Writes the link to a hyper file.
| [in] | hf | The hyper file to write to. The caller owns the pointed hyper file. |
| BaseLink* GetClone | ( | COPYFLAGS | flags, |
| AliasTrans * | trn | ||
| ) | const |
Gets a copy of the link.
| [in] | flags | Flags for the clone: COPYFLAGS |
| [in] | trn | An alias translator for the operation. Can be nullptr. The caller owns the pointed alias translator. |
| Bool CopyTo | ( | BaseLink * | dst, |
| COPYFLAGS | flags, | ||
| AliasTrans * | trn | ||
| ) | const |
Copies the link to dst.
| [in] | dst | The destination link. The caller owns the pointed link. |
| [in] | flags | Flags for the copy: COPYFLAGS |
| [in] | trn | An alias translator for the operation. Can be nullptr. The caller owns the pointed alias translator. |
| Bool IsCacheLink | ( | ) | const |
Checks if the link points to an object within the cache of another object.
| void SetUpPointer | ( | C4DAtom * | t_up_pointer | ) |
Private.