-
首页
-
C4D R23.110 C++ SDK
GeListNode Class Reference
#include <c4d_baselist.h>
详细描述
Represents a
C4DAtom
that resides in a 4D list.
Additional Inherited Members
|
Int32
|
GetType
() const
|
Int32
|
GetRealType
() const
|
Int32
|
GetDiskType
() const
|
Bool
|
IsInstanceOf
(
Int32
id) const
|
Int32
|
GetClassification
() const
|
Bool
|
消息
(
Int32
type, void *data=nullptr)
|
Bool
|
MultiMessage
(
MULTIMSG_ROUTE
flags,
Int32
type, void *data)
|
C4DAtom
*
|
GetClone
(
COPYFLAGS
flags,
AliasTrans
*trn)
|
Bool
|
CopyTo
(
C4DAtom
*dst,
COPYFLAGS
flags,
AliasTrans
*trn)
|
Bool
|
读取
(
HyperFile
*hf,
Int32
id,
Int32
level)
|
Bool
|
Write
(
HyperFile
*hf)
|
Bool
|
ReadObject
(
HyperFile
*hf,
Bool
readheader)
|
Bool
|
WriteObject
(
HyperFile
*hf)
|
Bool
|
GetDescription
(
描述
*description,
DESCFLAGS_DESC
flags)
|
Bool
|
GetParameter
(const
DescID
&id,
GeData
&t_data,
DESCFLAGS_GET
flags)
|
Bool
|
SetParameter
(const
DescID
&id, const
GeData
&t_data,
DESCFLAGS_SET
flags)
|
DynamicDescription
*
|
GetDynamicDescription
()
|
Bool
|
GetEnabling
(const
DescID
&id, const
GeData
&t_data,
DESCFLAGS_ENABLE
flags, const
BaseContainer
*itemdesc)
|
Bool
|
TranslateDescID
(const
DescID
&id,
DescID
&res_id,
C4DAtom
*&res_at)
|
UInt32
|
GetDirty
(
DIRTYFLAGS
flags) const
|
void
|
SetDirty
(
DIRTYFLAGS
flags)
|
UInt32
|
GetHDirty
(
HDIRTYFLAGS
mask) const
|
void
|
SetHDirty
(
HDIRTYFLAGS
mask)
|
构造函数 & 析构函数文档编制
◆
GeListNode()
◆
~GeListNode()
成员函数文档编制
◆
GetNext()
Gets the next node in the list.
-
返回
-
The next node, or
nullptr
if there is none.
Cinema 4D
owns the pointed node.
◆
GetPred()
Gets the previous node in the list.
-
返回
-
The previous node, or
nullptr
if there is none.
Cinema 4D
owns the pointed node.
◆
GetDown()
Gets the first child node.
-
返回
-
The first child node, or
nullptr
if there is none.
Cinema 4D
owns the pointed node.
◆
GetUp()
Gets the parent node.
-
返回
-
The parent node, or
nullptr
if there is none.
Cinema 4D
owns the pointed node.
◆
GetDownLast()
Gets the last child node.
-
返回
-
The last child node, or
nullptr
if there is none.
Cinema 4D
owns the pointed node.
◆
InsertBefore()
Inserts the node before
bl
.
-
警告
-
You must make sure that
bl
has a parent and that the insertion is sane, for example it is forbidden to insert a key.
It is also necessary to use
Remove()
first if the object is already inserted into another list.
-
参数
-
[in]
|
bl
|
The node to insert before. The caller owns the pointed node.
|
◆
InsertAfter()
Inserts the node after
bl
.
-
警告
-
You must make sure that
bl
has a parent and that the insertion is sane, for example it is forbidden to insert a key.
It is also necessary to use
Remove()
first if the object is already inserted into another list.
-
参数
-
[in]
|
bl
|
The node to insert after. The caller owns the pointed node.
|
◆
InsertUnder()
Inserts the node under
bl
as the first child.
-
警告
-
You must make sure that the insertion is sane, for example it is forbidden to insert a key.
It is also necessary to use
Remove()
first if the object is already inserted into another list.
-
参数
-
[in]
|
bl
|
The node to insert under. The caller owns the pointed node.
|
◆
InsertUnderLast()
Inserts the node as the last child of
bl
.
-
警告
-
You must make sure that the insertion is sane, for example it is forbidden to insert a key.
It is also necessary to use
Remove()
first if the object is already inserted into another list.
-
参数
-
[in]
|
bl
|
The node to insert under as last child. The caller owns the pointed node.
|
◆
Remove()
Removal Removes the node from its list.
-
警告
-
When a node is removed you become responsible for freeing it or passing its ownership to another list.
◆
GetListHead()
Retrieves the list head for the node.
-
返回
-
The list head or
nullptr
if the node is not attached to one. The pointed list head owns the node.
◆
GetNodeID()
Gets the ID of the node optionally for the given level
index
.
-
参数
-
[in]
|
index
|
For multi-nodes (two or more nodes virtually linked together) retrieve the ID for every level
index
.
For example
GvNode
is a level
2
multi-nodes. They consist of one list element (
GeListNode
or
BaseList2D
) and two virtual
NodeData
derivate: one is private and one is used by the operator.
|
-
返回
-
The node's ID.
◆
GetNodeData()
[1/2]
const CAST* GetNodeData
|
(
|
Int32
|
index
=
0
|
)
|
const
|
Retrieves the data for the node.
-
注意
-
Changed in R17. Changed returned object type from
NodeData
* to
template <typename CAST> CAST*
.
-
警告
-
Only use the virtual functions of the object if
GetNodeData()
is called in the same module that registered the node.
-
参数
-
[in]
|
index
|
For multi-nodes (two or more nodes virtually linked together) retrieve the ID for every level
index
.
For example
GvNode
objects are level
2
multi-nodes. They consist of one list element (
GeListNode
or
BaseList2D
) and two virtual
NodeData
derivate: one is private and one is used by the operator.
|
-
返回
-
The node data, or
nullptr
. The node owns the pointed
NodeData
.
◆
GetNodeData()
[2/2]
CAST* GetNodeData
|
(
|
Int32
|
index
=
0
|
)
|
|
Retrieves the data for the node.
-
注意
-
Changed in R17. Changed returned object type from
NodeData
* to
template <typename CAST> CAST*
.
-
警告
-
Only use the virtual functions of the object if
GetNodeData()
is called in the same module that registered the node.
-
参数
-
[in]
|
index
|
For multi-nodes (two or more nodes virtually linked together) retrieve the ID for every level
index
.
For example
GvNode
objects are level
2
multi-nodes. They consist of one list element (
GeListNode
or
BaseList2D
) and two virtual
NodeData
derivate: one is private and one is used by the operator.
|
-
返回
-
The node data, or
nullptr
. The node owns the pointed
NodeData
.
◆
SetCustomData()
Sets the custom data for the node.
-
注意
-
The custom data is private data that can be attached to an object.
Only the owner of an object type (not an object instance) is allowed to attach custom data to that object.
-
参数
-
[in]
|
node
|
The new custom data.
|
◆
GetCustomData()
Gets the custom data for the node.
-
另请参阅
-
SetCustomData()
-
返回
-
The custom data.
◆
GetDocument()
Retrieves the document for the node.
-
返回
-
The document, or
nullptr
if the node is not in a document. The pointed document owns the list head that possesses the node.
◆
GetBranchInfo()
Gets information about which other node types the node contains.
For example objects contain tags.
范例:
Pass an array of
BranchInfo
objects and its size, the function returns the number of filled elements:
BranchInfo
branch[
MAX
];
Int32
count = node->
GetBranchInfo
(branch,
MAX
,
GETBRANCHINFO::NONE
);
-
参数
-
[in,out]
|
info
|
An array of
max
BranchInfo
structures. The caller owns the pointed array.
|
[in]
|
max
|
The number of elements in
info
.
|
[in]
|
flags
|
Flags:
GETBRANCHINFO
|
-
返回
-
The number of
BranchInfo
elements filled in.
◆
IsDocumentRelated()
Bool
IsDocumentRelated
|
(
|
|
)
|
|
Checks if the node is of a type that can be inserted into a
document
.
-
返回
-
true
if the node is document related, otherwise
false
.
◆
GetNBit()
Raw access to the node state.
-
参数
-
[in]
|
bit
|
The bit index:
NBIT
|
-
返回
-
The bit state.
◆
GetNBitMask()
Private
.
◆
ChangeNBit()
Sets bits in the node state.
-
参数
-
-
返回
-
true
if the bit was successfully changed, otherwise
false
.
◆
GetInfo()
Private
.
Int32 GetBranchInfo(BranchInfo *info, Int32 max, GETBRANCHINFO flags)
定义:
c4d_baselist.h:1930
maxon::Int32 Int32
定义:
ge_sys_math.h:58