Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

vtkObjectBasePriorityQueue Class Reference

#include <vtkObjectBasePriorityQueue.h>

Inheritance diagram for vtkObjectBasePriorityQueue:

Inheritance graph
[legend]
Collaboration diagram for vtkObjectBasePriorityQueue:

Collaboration graph
[legend]
List of all members.

Detailed Description

A queue object for objects.

Calls Register when objects are pushed onto the queue and UnRegister when the object is popped.

Author:
Sean McInerney
Version:
Revision
1.6
Date:
Date
2004/06/03 18:58:28
See also:
vtkObjectBase

Definition at line 38 of file vtkObjectBasePriorityQueue.h.

Public Member Functions

 vtkTypeRevisionMacro (vtkObjectBasePriorityQueue, vtkContainer)
vtkIdType GetSize (void) const
 Returns the number of elements in the queue.

int IsEmpty (void) const
 Returns true if the queue is empty.

vtkIdType GetMaxSize (void) const
 Returns the maximum size of the queue.

void Clear (void)
 Remove ALL elements.

virtual int Swap (vtkObjectBasePriorityQueue *container)
 Swaps elements of this object with those of the specified container.

vtkObjectBasePriorityQueueIterator * CreateIterator (void)
 Create an iterator.

Queue Operations
virtual int Push (vtkObjectBase *object, int priority=0)
 Add an object pointer to the end of the queue.

int Pop (void)
 Removes the first element.

virtual vtkObjectBase * Top (void) const
 Get a pointer to the object at the first element of the queue.


Static Public Member Functions

vtkObjectBasePriorityQueue * New (void)

Protected Member Functions

 vtkObjectBasePriorityQueue (void)
 ~vtkObjectBasePriorityQueue ()


Constructor & Destructor Documentation

vtkObjectBasePriorityQueue::vtkObjectBasePriorityQueue (  void   )  [protected]
 

vtkObjectBasePriorityQueue::~vtkObjectBasePriorityQueue (   )  [protected]
 


Member Function Documentation

void vtkObjectBasePriorityQueue::Clear (  void   )  [virtual]
 

Remove ALL elements.

Implements vtkContainer.

vtkObjectBasePriorityQueueIterator* vtkObjectBasePriorityQueue::CreateIterator (  void   )  [virtual]
 

Create an iterator.

Implements vtkContainer.

Reimplemented in vtkExtensionsObjectPriorityQueue, and vtkObjectPriorityQueue.

vtkIdType vtkObjectBasePriorityQueue::GetMaxSize (  void   )  const [virtual]
 

Returns the maximum size of the queue.

Reimplemented from vtkContainer.

vtkIdType vtkObjectBasePriorityQueue::GetSize (  void   )  const [virtual]
 

Returns the number of elements in the queue.

Reimplemented from vtkContainer.

int vtkObjectBasePriorityQueue::IsEmpty (  void   )  const [virtual]
 

Returns true if the queue is empty.

Reimplemented from vtkContainer.

vtkObjectBasePriorityQueue* vtkObjectBasePriorityQueue::New (  void   )  [static]
 

Reimplemented from vtkExtensionsObject.

Reimplemented in vtkExtensionsObjectPriorityQueue, and vtkObjectPriorityQueue.

int vtkObjectBasePriorityQueue::Pop (  void   ) 
 

Removes the first element.

This is a typical queue operation. It shrinks the queue by one.

Note:
No object is returned, and if the first element's object pointer is needed, it should be retrieved before Pop() is called.
Returns:
true on success, false otherwise.

virtual int vtkObjectBasePriorityQueue::Push (  vtkObjectBase *  object,
int  priority = 0
)  [virtual]
 

Add an object pointer to the end of the queue.

Parameters:
object The object pointer to be added.
priority The priority value of the object.
This is a typical queue operation. The function creates an element at the end of the queue and assigns the given object pointer to it.

Returns:
true on success, false otherwise.

virtual int vtkObjectBasePriorityQueue::Swap (  vtkObjectBasePriorityQueue *  container  )  [virtual]
 

Swaps elements of this object with those of the specified container.

Returns:
true on success, otherwise false.

vtkObjectBase * vtkObjectBasePriorityQueue::Top (  void   )  const [inline, virtual]
 

Get a pointer to the object at the first element of the queue.

Returns:
A pointer to the first object on success, NULL otherwise.

Reimplemented in vtkExtensionsObjectPriorityQueue, and vtkObjectPriorityQueue.

Definition at line 146 of file vtkObjectBasePriorityQueue.h.

References vtkContainer::Front().

vtkObjectBasePriorityQueue::vtkTypeRevisionMacro (  vtkObjectBasePriorityQueue  ,
vtkContainer 
) 
 


The documentation for this class was generated from the following file:
Generated on Tue Aug 10 03:42:36 2004 for vtkExtensions by doxygen 1.3.7