Show / Hide Table of Contents

Namespace Towel.DataStructures

Classes

Array<T>

Contiguous fixed-sized data structure.

AvlTree

Static helpers for IAvlTree<T> and IAvlTree<T, TCompare>.

AvlTreeLinked

Static helpers for AvlTreeLinked<T, TCompare>.

AvlTreeLinked<T, TCompare>

A self-sorting binary tree based on the heights of each node.

Bag

Static Extension class for bag interface implementers.

BagMap

Static helpers.

BagMap<T, TMap>

An unsorted structure of unique items.

BTreeLinked

Static helpers for BTreeLinked<T, TCompare>.

BTreeLinked<T, TCompare>

B-Tree Data structure.

DataStructure

Contains static members for IDataStructure<T>.

Graph

Static helpers for IGraph<T>.

GraphMap

Static helpers for GraphMap<T, TEquate, THash>.

GraphMap<T, TEquate, THash>

Stores a graph as a map and nested map (adjacency matrix).

GraphSetOmnitree

Static helpers for GraphSetOmnitree<T, TEquate, THash>.

GraphSetOmnitree<T, TEquate, THash>

Stores the graph as a set-hash of nodes and quadtree of edges.

GraphWeighted

Static helpers for IGraphWeighted<T, TWeight>.

GraphWeightedMap

Static helpers for GraphWeightedMap<T, TWeight, TEquate, THash>.

GraphWeightedMap<T, TWeight, TEquate, THash>

Implements a weighted graph. Implements a Dictionary of Nodes and edges.

Heap

Static helpers for IAvlTree<T, TCompare>.

HeapArray

Static helpers for HeapArray<T, TCompare>.

HeapArray<T, TCompare>

A heap with static priorities implemented as a array.

Link<T1>

Represents a link between objects.

Link<T1, T2>

Represents a link between objects.

Link<T1, T2, T3>

Represents a link between objects.

Link<T1, T2, T3, T4>

Represents a link between objects.

Link<T1, T2, T3, T4, T5>

Represents a link between objects.

Link<T1, T2, T3, T4, T5, T6>

Represents a link between objects.

Link<T1, T2, T3, T4, T5, T6, T7>

Represents a link between objects.

List

Contains static extension methods for IList types.

ListArray<T>

A list implemented as a growing array.

ListLinked<T>

Implements a growing, singularly-linked list data structure that inherits InterfaceTraversable.

Map

Static Extension class for Map interface implementers.

MapHashLinked

Static helpers.

MapHashLinked<T, TKey, TEquate, THash>

An unsorted structure of unique items.

Omnitree

Contains the necessary type definitions for the various omnitree types.

OmnitreePointsLinked<T, Axis1>

Omnitree that stores points along 1 dimensions implemented as a linked tree.

QueueArray<T>

Implements First-In-First-Out queue data structure using an array.

QueueLinked<T>

Implements First-In-First-Out queue data structure using a linked list.

RedBlackTree

Static helpers for IRedBlackTree<T> and IRedBlackTree<T, TCompare>.

RedBlackTreeLinked

Static helpers for RedBlackTreeLinked<T, TCompare>.

RedBlackTreeLinked<T, TCompare>

A self sorting binary tree using the red-black tree algorithms.

SetHashLinked

Static helpers for SetHashLinked<T, TEquate, THash>.

SetHashLinked<T, TEquate, THash>

An unsorted structure of unique items implemented as a hashed table of linked lists.

SkipList

Static helpers for SkipList<T, TCompare, TRandom>.

SkipList<T, TCompare, TRandom>

SkipList Data structure

SortedBinaryTree

Static members for ISortedBinaryTree<T> and ISortedBinaryTree<T, TCompare>.

StackArray<T>

Implements a First-In-Last-Out stack data structure using an array.

StackLinked<T>

Implements a First-In-Last-Out stack data structure using a linked list.

TreeMap

Static members for the TreeMap<T, TEquate, THash> type.

TreeMap<T, TEquate, THash>

A generic tree data structure using a dictionary to store node data.

Trie

Extension methods for ITrie<T> and ITrie<T, TData>.

TrieLinkedHashLinked

Static helpers.

TrieLinkedHashLinked<T, TEquate, THash>

A trie data structure that allows partial value sharing to reduce redundant memory.

Structs

LinkStruct<T1>

Represents a link between objects.

LinkStruct<T1, T2>

Represents a link between objects.

LinkStruct<T1, T2, T3>

Represents a link between objects.

LinkStruct<T1, T2, T3, T4>

Represents a link between objects.

LinkStruct<T1, T2, T3, T4, T5>

Represents a link between objects.

LinkStruct<T1, T2, T3, T4, T5, T6>

Represents a link between objects.

LinkStruct<T1, T2, T3, T4, T5, T6, T7>

Represents a link between objects.

Omnitree.Bound<T>

Represents a bound in ND space.

Omnitree.Bounds<A1>

Represents a 1D bounding box.

Omnitree.Bounds<A1, A2>

Represents a 2D bounding box.

Omnitree.Bounds<A1, A2, A3>

Represents a 3D bounding box.

Omnitree.Bounds<A1, A2, A3, A4>

Represents a 4D bounding box.

Omnitree.Bounds<A1, A2, A3, A4, A5>

Represents a 5D bounding box.

Omnitree.Bounds<A1, A2, A3, A4, A5, A6>

Represents a 6D bounding box.

Omnitree.Bounds<A1, A2, A3, A4, A5, A6, A7>

Represents a 7D bounding box.

Omnitree.Vector<A1>

Represents a 1D vector.

Omnitree.Vector<A1, A2>

Represents a 2D vector.

Omnitree.Vector<A1, A2, A3>

Represents a 3D vector.

Omnitree.Vector<A1, A2, A3, A4>

Represents a 4D vector.

Omnitree.Vector<A1, A2, A3, A4, A5>

Represents a 5D vector.

Omnitree.Vector<A1, A2, A3, A4, A5, A6>

Represents a 6D vector.

Omnitree.Vector<A1, A2, A3, A4, A5, A6, A7>

Represents a 7D vector.

Interfaces

DataStructure.IAddable<T>

Property of a data structure (does it have a Add method).

DataStructure.IAuditable<T>

Property of a data structure (does it have a contains method).

DataStructure.IClearable

Property of a data structure (does it have a Clear method).

DataStructure.IComparing<T, TCompare>

Represents a type that is comparing values of type T.

DataStructure.ICountable

Property of a data structure (does it have a Count method).

DataStructure.IEquating<T, TEquate>

Represents a type that is equality checking values of type T.

DataStructure.IHashing<T, THash>

Represents a type that is hashing values of type T.

DataStructure.IRemovable<T>

Property of a data structure (does it have a Romove method).

IArray<T>

An indexed fixed-sized data structure.

IArray<T, TIndex>

An indexed fixed-sized data structure.

IAvlTree<T>

A self-sorting binary tree based on the heights of each node.

IAvlTree<T, TCompare>

A self-sorting binary tree based on the heights of each node.

IBag<T>

A bag between instances of two types. The polymorphism base for bag implementations in Towel.

IDataStructure<T>

Polymorphism base for all data structures in Towel.

IGraph<T>

A graph data structure that stores nodes and edges.

IGraphWeighted<T, TWeight>

A weighted graph data structure that stores nodes, edges with their corresponding weights.

IHeap<T>

Stores items based on priorities and allows access to the highest priority item.

IHeap<T, TCompare>

Stores items based on priorities and allows access to the highest priority item.

IList<T>

A primitive dynamic sized data structure.

IMap<T, TKey>

A map between instances of two types. The polymorphism base for Map implementations in Towel.

IOmnitree<T>

A Spacial Partitioning data structure.

IOmnitree<T, Axis1>

Inheritance base for 1D omnitrees.

IOmnitree<T, Axis1, Axis2>

Inheritance base for 2D omnitrees.

IOmnitree<T, Axis1, Axis2, Axis3>

Inheritance base for 3D omnitrees.

IOmnitree<T, Axis1, Axis2, Axis3, Axis4>

Inheritance base for 4D omnitrees.

IOmnitree<T, Axis1, Axis2, Axis3, Axis4, Axis5>

Inheritance base for 5D omnitrees.

IOmnitree<T, Axis1, Axis2, Axis3, Axis4, Axis5, Axis6>

Inheritance base for 6D omnitrees.

IOmnitree<T, Axis1, Axis2, Axis3, Axis4, Axis5, Axis6, Axis7>

Inheritance base for 7D omnitrees.

IOmnitreePoints<T, Axis1>

Inheritance base for 1D omnitrees that store points.

IQueue<T>

Implements First-In-First-Out queue data structure.

IRedBlackTree<T>

A self sorting binary tree using the red-black tree algorithms.

IRedBlackTree<T, TCompare>

A self sorting binary tree using the red-black tree algorithms.

ISet<T>

An unsorted structure of unique items.

ISortedBinaryTree<T>

A self-sorting binary tree based on the heights of each node.

ISortedBinaryTree<T, TCompare>

A self-sorting binary tree based on the heights of each node.

IStack<T>

Implements a First-In-Last-Out stack data structure.

ITree<T>

A generic tree data structure.

ITrie<T>

A trie data structure that allows partial value sharing to reduce redundant memory.

Link

Represents a link between objects.

Enums

Omnitree.Keyword

Omnitree keywords for syntax sugar.

Delegates

Omnitree.GetBoundings<T, A1>

Delegate for getting the 1D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2>

Delegate for getting the 2D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2, A3>

Delegate for getting the 3D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2, A3, A4>

Delegate for getting the 4D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2, A3, A4, A5>

Delegate for getting the 5D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2, A3, A4, A5, A6>

Delegate for getting the 6D bounding box of an item.

Omnitree.GetBoundings<T, A1, A2, A3, A4, A5, A6, A7>

Delegate for getting the 7D bounding box of an item.

Omnitree.GetBounds<T, A1>

Delegate for getting the 1D bounding box of an item.

Omnitree.GetBounds<T, A1, A2>

Delegate for getting the 2D bounding box of an item.

Omnitree.GetBounds<T, A1, A2, A3>

Delegate for getting the 3D bounding box of an item.

Omnitree.GetBounds<T, A1, A2, A3, A4>

Delegate for getting the 4D bounding box of an item.

Omnitree.GetBounds<T, A1, A2, A3, A4, A5>

Delegate for getting the 5D bounding box of an item.

Omnitree.GetBounds<T, A1, A2, A3, A4, A5, A6>

Delegate for getting the 6D bounding box of an item.

Omnitree.GetBounds<T, A1, A2, A3, A4, A5, A6, A7>

Delegate for getting the 7D bounding box of an item.

Omnitree.Location<T, A1>

Delegate for locating an item in 1D space.

Omnitree.Location<T, A1, A2>

Delegate for locating an item in 2D space.

Omnitree.Location<T, A1, A2, A3>

Delegate for locating an item in 3D space.

Omnitree.Location<T, A1, A2, A3, A4>

Delegate for locating an item in 4D space.

Omnitree.Location<T, A1, A2, A3, A4, A5>

Delegate for locating an item in 5D space.

Omnitree.Location<T, A1, A2, A3, A4, A5, A6>

Delegate for locating an item in 6D space.

Omnitree.Location<T, A1, A2, A3, A4, A5, A6, A7>

Delegate for locating an item in 7D space.

Omnitree.SubdivisionOverride<T, TAxis, TBounds>

A delegate for determining the point of subdivision in a set of values and current bounds.

In This Article
Back to top Generated by DocFX