1#ifndef LEGOPATHEDGECONTAINER_H
2#define LEGOPATHEDGECONTAINER_H
[AI] Represents a path segment or boundary in the navigation network for actors (vehicles,...
[AI] Represents a 3D point with floating-point precision, inheriting from Vector3.
multiset< LegoBEWithFloat *, LegoBEWithFloatComparator > LegoBEWithFloatSet
[AI] Multiset of LegoBEWithFloat pointers, ordered by their annotation float value....
#define NULL
[AI] Null pointer value (C/C++ semantics).
#define list
[AI] Macro alias for List<T>, replacing std::list<T>.
[AI] STL compatibility layer header to provide consistent STL (Standard Template Library) types and a...
[AI] Function object for comparing LegoBEWithFloat pointers by their floating-point annotation.
bool operator()(LegoBEWithFloat *const &p_a, LegoBEWithFloat *const &p_b) const
[AI] Return true if a's annotation is strictly less than b's.
[AI] Represents a path edge with extra float data and potential linkage (single-linked).
LegoBEWithFloat(LegoPathCtrlEdge *p_edge, LegoPathBoundary *p_boundary, MxFloat p_unk0x0c)
[AI] Construct with edge, boundary, and a float value.
int operator<(LegoBEWithFloat) const
[AI] Less-than operator, stub (always returns false). [AI]
LegoPathBoundary * m_boundary
[AI] Path boundary this edge belongs to. [AI]
int operator==(LegoBEWithFloat) const
[AI] Comparison operator, stub (always returns false). [AI]
LegoBEWithFloat(LegoPathCtrlEdge *p_edge, LegoPathBoundary *p_boundary, LegoBEWithFloat *p_next, MxFloat p_unk0x0c)
[AI] Construct with edge, boundary, pointer to next, and float value.
MxFloat m_unk0x0c
[AI] Annotation float; likely an edge priority, weight, parametric value, etc. [AI]
LegoPathCtrlEdge * m_edge
[AI] Pointer to the relevant path control edge. [AI]
LegoBEWithFloat * m_next
[AI] Next node in the edge chain, for linked structures (may be null). [AI]
[AI] Represents an edge within a path boundary, used for path following and geometric computations.
LegoBoundaryEdge(LegoPathCtrlEdge *p_edge, LegoPathBoundary *p_boundary)
[AI] Construct a LegoBoundaryEdge with given edge and boundary.
LegoPathBoundary * m_boundary
[AI] Pointer to the owning or containing path boundary. [AI]
LegoPathCtrlEdge * m_edge
[AI] Pointer to the path control edge. [AI]
int operator<(LegoBoundaryEdge) const
[AI] Less-than operator, currently a stub (always returns false). [AI]
int operator==(LegoBoundaryEdge) const
[AI] Comparison operator, currently a stub (always returns false). [AI]
[AI] Controller-specific edge used in path navigation.
[AI] Container for path boundary edges, also stores position, direction, and flags.
Mx3DPointFloat m_direction
[AI] 3D direction vector reference, e.g., average or intended facing. [AI]
LegoPathBoundary * m_boundary
[AI] Associated boundary for all contained edges; may be null if container is generic....
LegoPathEdgeContainer()
[AI] Default constructor. Initializes position and direction to default, clears boundary and flags....
Mx3DPointFloat m_position
[AI] 3D position reference for the edge group, e.g., start or mean location. [AI]
void SetBit1(MxU32 p_set)
[AI] Set or clear the c_bit1 flag in m_flags.
@ c_bit1
[AI] Flag value for the container; purpose depends on subsystems using this structure....
MxU8 m_flags
[AI] Flag bits for special edge container properties (e.g. active, reachable, etc....
MxU32 GetBit1()
[AI] Query if the c_bit1 flag is set.