Class TX3DNodeNames
Unit
Declaration
type TX3DNodeNames = class(specialize TStructList<TX3DNodeNameRec>)
Description
List to track node names while parsing VRML/X3D file.
Hierarchy
- TObject
- TList
- TStructList
- TX3DNodeNames
Overview
Methods
constructor Create(const AAutoRemove: boolean); |
|
destructor Destroy; override; |
|
procedure Bind(const Node: TX3DNode; const NodeFinished: boolean); overload; |
|
procedure Bind(const Node: TX3DNode; const NodeFinished: boolean; const BindToName: string); overload; |
|
function Bound(const Name: string; out NodeFinished: boolean): TX3DNode; overload; |
|
function NodeDuringReading(const Node: TX3DNode): Boolean; |
|
function Bound(const Node: TX3DNode): boolean; overload; |
|
function DeepCopy(const CopyState: TX3DNodeDeepCopyState): TX3DNodeNames; |
Properties
property AutoRemove: boolean read FAutoRemove; |
Description
Methods
constructor Create(const AAutoRemove: boolean); |
|
This item has no description. |
destructor Destroy; override; |
|
This item has no description. |
procedure Bind(const Node: TX3DNode; const NodeFinished: boolean); overload; |
|
Associate given node with it's own name. If not NodeFinished, then we understand that we're parsing / saving the node's contents now. If NodeFinished, then we know the node contents are fully parsed / saved now. This information helps us to detect cycles in X3D DEF/USE graph. For now, we just disallow such cycles. Still, we allow ROUTEs from inside the node, so calling with NodeFinished = false is still useful for parsing. |
procedure Bind(const Node: TX3DNode; const NodeFinished: boolean; const BindToName: string); overload; |
|
This item has no description. |
function Bound(const Name: string; out NodeFinished: boolean): TX3DNode; overload; |
|
Find node bound to given name. |
function NodeDuringReading(const Node: TX3DNode): Boolean; |
|
Node is during reading, judging from Bind calls with NodeFinished= |
function Bound(const Node: TX3DNode): boolean; overload; |
|
Check is Node bound in the current namespace. Doesn't check is Node bound to it's name (Node.Name) or something else. So this assumes that node can only be bound (if at all) only to it's own name, which is true during parsing (when nothing can change in the middle of parsing). |
function DeepCopy(const CopyState: TX3DNodeDeepCopyState): TX3DNodeNames; |
|
This item has no description. |
Properties
property AutoRemove: boolean read FAutoRemove; |
|
If Internally, this is done by registering itself for AnyNodeDestructionNotifications. |
Generated by PasDoc 0.16.0-snapshot.