UnityMol  1.0.25beta
BenTools.Data.BinaryPriorityQueue Class Reference
Inheritance diagram for BenTools.Data.BinaryPriorityQueue:
BenTools.Data.IPriorityQueue

Public Member Functions

 BinaryPriorityQueue ()
 
 BinaryPriorityQueue (IComparer c)
 
 BinaryPriorityQueue (int C)
 
 BinaryPriorityQueue (IComparer c, int Capacity)
 
int Push (object O)
 Push an object onto the PQ More...
 
object Pop ()
 Get the smallest object and remove it. More...
 
void Update (int i)
 Notify the PQ that the object at position i has changed and the PQ needs to restore order. Since you dont have access to any indexes (except by using the explicit IList.this) you should not call this function without knowing exactly what you do. More...
 
object Peek ()
 Get the smallest object without removing it. More...
 
bool Contains (object value)
 
void Clear ()
 
void CopyTo (Array array, int index)
 
object Clone ()
 

Static Public Member Functions

static BinaryPriorityQueue Syncronized (BinaryPriorityQueue P)
 
static BinaryPriorityQueue ReadOnly (BinaryPriorityQueue P)
 

Protected Member Functions

 BinaryPriorityQueue (ArrayList Core, IComparer Comp, bool Copy)
 
void SwitchElements (int i, int j)
 
virtual int OnCompare (int i, int j)
 

Protected Attributes

ArrayList InnerList = new ArrayList()
 
IComparer Comparer
 

Properties

int Count [get]
 
bool IsSynchronized [get]
 
object SyncRoot [get]
 

Constructor & Destructor Documentation

◆ BinaryPriorityQueue() [1/5]

BenTools.Data.BinaryPriorityQueue.BinaryPriorityQueue ( )

◆ BinaryPriorityQueue() [2/5]

BenTools.Data.BinaryPriorityQueue.BinaryPriorityQueue ( IComparer  c)

◆ BinaryPriorityQueue() [3/5]

BenTools.Data.BinaryPriorityQueue.BinaryPriorityQueue ( int  C)

◆ BinaryPriorityQueue() [4/5]

BenTools.Data.BinaryPriorityQueue.BinaryPriorityQueue ( IComparer  c,
int  Capacity 
)

◆ BinaryPriorityQueue() [5/5]

BenTools.Data.BinaryPriorityQueue.BinaryPriorityQueue ( ArrayList  Core,
IComparer  Comp,
bool  Copy 
)
protected

Member Function Documentation

◆ Clear()

void BenTools.Data.BinaryPriorityQueue.Clear ( )

◆ Clone()

object BenTools.Data.BinaryPriorityQueue.Clone ( )

◆ Contains()

bool BenTools.Data.BinaryPriorityQueue.Contains ( object  value)

◆ CopyTo()

void BenTools.Data.BinaryPriorityQueue.CopyTo ( Array  array,
int  index 
)

◆ OnCompare()

virtual int BenTools.Data.BinaryPriorityQueue.OnCompare ( int  i,
int  j 
)
protectedvirtual

◆ Peek()

object BenTools.Data.BinaryPriorityQueue.Peek ( )

Get the smallest object without removing it.

Returns
The smallest object

Implements BenTools.Data.IPriorityQueue.

◆ Pop()

object BenTools.Data.BinaryPriorityQueue.Pop ( )

Get the smallest object and remove it.

Returns
The smallest object

Implements BenTools.Data.IPriorityQueue.

◆ Push()

int BenTools.Data.BinaryPriorityQueue.Push ( object  O)

Push an object onto the PQ

Parameters
OThe new object
Returns
The index in the list where the object is now. This will change when objects are taken from or put onto the PQ.

Implements BenTools.Data.IPriorityQueue.

◆ ReadOnly()

static BinaryPriorityQueue BenTools.Data.BinaryPriorityQueue.ReadOnly ( BinaryPriorityQueue  P)
static

◆ SwitchElements()

void BenTools.Data.BinaryPriorityQueue.SwitchElements ( int  i,
int  j 
)
protected

◆ Syncronized()

static BinaryPriorityQueue BenTools.Data.BinaryPriorityQueue.Syncronized ( BinaryPriorityQueue  P)
static

◆ Update()

void BenTools.Data.BinaryPriorityQueue.Update ( int  i)

Notify the PQ that the object at position i has changed and the PQ needs to restore order. Since you dont have access to any indexes (except by using the explicit IList.this) you should not call this function without knowing exactly what you do.

Parameters
iThe index of the changed object.

Implements BenTools.Data.IPriorityQueue.

Member Data Documentation

◆ Comparer

IComparer BenTools.Data.BinaryPriorityQueue.Comparer
protected

◆ InnerList

ArrayList BenTools.Data.BinaryPriorityQueue.InnerList = new ArrayList()
protected

Property Documentation

◆ Count

int BenTools.Data.BinaryPriorityQueue.Count
get

◆ IsSynchronized

bool BenTools.Data.BinaryPriorityQueue.IsSynchronized
get

◆ SyncRoot

object BenTools.Data.BinaryPriorityQueue.SyncRoot
get

The documentation for this class was generated from the following file: