/Engine/Source/Runtime/GeometryCore/Public/Util/IndexPriorityQueue.h
This is a min-heap priority queue class that does not use an object for each queue node. Integer IDs must be provided by the user to identify unique nodes. Internally an array is used to keep track of the mapping from ids to internal indices, so the max ID must also be provided.
class FIndexPriorityQueue
bool
EnableDebugChecks
Set this to true during development to catch issues
TArray< int >
id_to_index
Mapping from external ids to internal node indices
TDynamicVector<...
nodes
Tree of allocated nodes, stored linearly. active up to num_nodes (allocated may be larger)
int
num_nodes
Count of active nodes