Classes | Typedefs | Functions | Variables

DataStructures Namespace Reference

Classes

class  BinarySearchTree
 A binary search tree and an AVL balanced binary search tree. More...
class  AVLBalancedBinarySearchTree
 An AVLBalancedBinarySearchTree is a binary tree that is always balanced. More...
struct  Page
class  BPlusTree
class  BytePool
class  ByteQueue
class  Heap
class  CircularLinkedList
 (Circular) Linked List ADT (Doubly Linked Pointer to Node Style) - More...
class  LinkedList
class  List
 Array based implementation of a list. More...
class  Map
class  MemoryPool
class  MLKeyRef
class  Multilist
 The multilist, representing an abstract data type that generally holds lists. More...
class  OrderedChannelHeap
class  OrderedList
class  Queue
 A queue implemented as an array with a read and write index. More...
class  QueueLinkedList
 A queue implemented using a linked list. Rarely used. More...
struct  RangeNode
class  RangeList
struct  StringKeyedHashIndex
class  StringKeyedHash
 Using a string as a identifier for a node, store an allocated pointer to that node. More...
class  Table
 Holds a set of columns, a set of rows, and rows times columns cells. More...
class  ThreadsafeAllocatingQueue
class  Tree
class  WeightedGraph
class  SingleProducerConsumer
 A single producer consumer implementation without critical sections. More...

Typedefs

typedef uint32_t DefaultIndexType

Functions

template<class key_type >
int defaultMapKeyComparison (const key_type &a, const key_type &b)
template<class templateType >
void DeletePtr_RakNet (templateType &ptr, const char *file, unsigned int line)
template<class templateType >
void DeletePtr (templateType &ptr)
template<class key_type , class data_type >
int defaultOrderedListComparison (const key_type &a, const data_type &b)
template<class range_type >
int RangeNodeComp (const range_type &a, const RangeNode< range_type > &b)

Variables

class RAK_DLL_EXPORT LinkedList

Detailed Description

The namespace DataStructures was only added to avoid compiler errors for commonly named data structures As these data structures are stand-alone, you can use them outside of RakNet for your own projects if you wish.


Typedef Documentation

Definition at line 83 of file DS_Multilist.h.


Function Documentation

template<class key_type >
int DataStructures::defaultMapKeyComparison ( const key_type &  a,
const key_type &  b 
)

The default comparison has to be first so it can be called as a default parameter. It then is followed by MapNode, followed by NodeComparisonFunc

Definition at line 28 of file DS_Map.h.

template<class key_type , class data_type >
int DataStructures::defaultOrderedListComparison ( const key_type &  a,
const data_type &  b 
)

Definition at line 22 of file DS_OrderedList.h.

template<class templateType >
void DataStructures::DeletePtr ( templateType &  ptr  ) 

Can be used with Multilist::ForEach Assuming the Multilist holds pointers, will delete those pointers

Definition at line 53 of file DS_Multilist.h.

template<class templateType >
void DataStructures::DeletePtr_RakNet ( templateType &  ptr,
const char *  file,
unsigned int  line 
)

Can be used with Multilist::ForEach Assuming the Multilist holds pointers, will delete those pointers

Definition at line 48 of file DS_Multilist.h.

Here is the call graph for this function:

template<class range_type >
int DataStructures::RangeNodeComp ( const range_type &  a,
const RangeNode< range_type > &  b 
)

Definition at line 32 of file DS_RangeList.h.


Variable Documentation

class RAK_DLL_EXPORT DataStructures::LinkedList

Definition at line 26 of file DS_LinkedList.h.