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

vtkTraversal Class Reference

#include <vtkTraversal.h>

Collaboration diagram for vtkTraversal:

Collaboration graph
[legend]
List of all members.

Detailed Description

Provides convenient traversal of pipeline objects.

Author:
Sean McInerney
Version:
Revision
1.2
Date:
Date
2004/08/10 07:37:22

Definition at line 48 of file vtkTraversal.h.

Public Member Functions

 vtkTraversal (void)
 vtkTraversal (vtkProcessObject *a)
virtual ~vtkTraversal ()
void UpdateTop (vtkProcessObject *aNode)
void UpdateTop (void)
vtkProcessObjectInitTraversal (vtkProcessObject *aNode)
 Sets Current to aNode and returns Current.

vtkProcessObjectInitTraversal (void)
 Sets Current to First and returns Current.

vtkProcessObjectTraverseUp (void)
vtkProcessObjectTraverseForward (int &depth)
vtkProcessObjectTraverseForward (void)
vtkProcessObjectTraverseBackward (void)
vtkProcessObjectFind (vtkProcessObject *node)
vtkProcessObjectFindByType (const char *classname)
vtkProcessObjectFindBySupertype (const char *superclassname)

Static Public Member Functions

vtkTraversalNew (void)
vtkProcessObjectGetInputSource (vtkDataObject *o)
 Get the source node connecting this node to its parent data object.

vtkDataObjectGetFirstInput (vtkProcessObject *o)
 Get the first input node connecting this node to its parent(s).

vtkDataObjectGetParent (vtkDataObject *o)
 Return the data object immediately upstream of this node.

vtkProcessObjectGetParent (vtkProcessObject *o)
 Return the process object immediately upstream of this node.

vtkCollectionGetConsumers (vtkDataObject *parent, vtkCollection **=0)
 Return a list of the consumer objects of this node.

vtkDataObjectCollectionGetOutputs (vtkProcessObject *parent, vtkDataObjectCollection **=0)
 Return a list of the output data objects of this node.

vtkDataObjectCollectionGetChildren (vtkDataObject *parent, vtkDataObjectCollection **=0)
 Return a list of data objects downstream from this node.

vtkCollectionGetConsumers (vtkProcessObject *parent, vtkCollection **=0)
 Return a list of consumer objects downstream from this node.

vtkProcessObjectCollectionGetChildren (vtkProcessObject *parent, vtkProcessObjectCollection **=0)
 Return a list of consumer process objects downstream from this node.

int GetNumberOfChildren (vtkDataObject *parent, vtkDataObjectCollection **=0)
int GetNumberOfChildren (vtkProcessObject *parent, vtkProcessObjectCollection **=0)
vtkObjectGetFirstConsumer (vtkDataObject *o)
vtkProcessObjectGetFirstProcessObject (vtkDataObject *o)
vtkDataObjectGetFirstOutput (vtkProcessObject *o)
vtkDataObjectGetFirstChild (vtkDataObject *o)
vtkObjectGetFirstConsumer (vtkProcessObject *o)
vtkProcessObjectGetFirstChild (vtkProcessObject *o)
vtkObjectGetLastConsumer (vtkDataObject *o)
vtkProcessObjectGetLastProcessObject (vtkDataObject *o)
vtkDataObjectGetLastOutput (vtkProcessObject *o)
vtkDataObjectGetLastChild (vtkDataObject *o)
vtkObjectGetLastConsumer (vtkProcessObject *o)
vtkProcessObjectGetLastChild (vtkProcessObject *o)
vtkDataObjectGetNextSibling (vtkDataObject *o)
vtkProcessObjectGetNextSibling (vtkProcessObject *o)
vtkDataObjectGetPreviousSibling (vtkDataObject *o)
vtkProcessObjectGetPreviousSibling (vtkProcessObject *)
vtkDataObjectGetTop (vtkDataObject *o)
vtkProcessObjectGetTop (vtkProcessObject *o)
vtkProcessObjectSplice (vtkProcessObject *newNode, vtkProcessObject *refNode)
 Inserts newNode as a parent of the existing node refNode.

vtkProcessObjectReplace (vtkProcessObject *newNode, vtkProcessObject *oldNode)
 Replaces the node oldNode with newNode.

vtkProcessObjectRemove (vtkProcessObject *oldNode)
 Removes the node indicated by oldNode and returns it.

vtkSourceAppend (vtkSource *newNode, vtkProcessObject *refNode)
 Adds the node newNode to the termial end of the tree occupied by refNode.

vtkBoolType HasChildren (vtkDataObject *o)
vtkBoolType HasChildren (vtkProcessObject *o)
unsigned short ComparePosition (vtkProcessObject *o)
vtkBoolType IsSame (vtkProcessObject *o)
vtkBoolType IsEqual (vtkProcessObject *o)

Protected Types

typedef vtkTraversal Self

Static Protected Member Functions

int GetConsumerIndex (vtkDataObject *o, vtkObject *consumer)
 Returns the index of the specified consumer of a DataObject.

int GetOutputIndex (vtkProcessObject *o, vtkDataObject *output)
 Returns the index of the specified output of a ProcessObject.

int SetNthInput (vtkProcessObject *node, int index, vtkDataObject *input)
 Set the n'th input of a filter or mapper.

vtkBoolType IsSelfOrAncestor (vtkProcessObject *node, vtkProcessObject *child)
 Check if child is same as node or if child is one of node's ancestors.


Protected Attributes

vtkProcessObjectTop
vtkProcessObjectCurrent


Member Typedef Documentation

typedef vtkTraversal vtkTraversal::Self [protected]
 

Definition at line 210 of file vtkTraversal.h.


Constructor & Destructor Documentation

vtkTraversal::vtkTraversal void   ) 
 

vtkTraversal::vtkTraversal vtkProcessObject a  ) 
 

virtual vtkTraversal::~vtkTraversal  )  [virtual]
 


Member Function Documentation

vtkSource* vtkTraversal::Append vtkSource newNode,
vtkProcessObject refNode
[static]
 

Adds the node newNode to the termial end of the tree occupied by refNode.

Parameters:
newNode The node to add.
refNode The reference node.
Returns:
The node added on success or null on failure.
Note:
If the newNode is already in the tree, it is first removed.

unsigned short vtkTraversal::ComparePosition vtkProcessObject o  )  [inline, static]
 

Definition at line 200 of file vtkTraversal.h.

vtkProcessObject * vtkTraversal::Find vtkProcessObject node  )  [inline]
 

Definition at line 775 of file vtkTraversal.h.

References Find(), InitTraversal(), and TraverseForward().

Referenced by Find().

vtkProcessObject * vtkTraversal::FindBySupertype const char *  superclassname  )  [inline]
 

Definition at line 805 of file vtkTraversal.h.

References FindBySupertype(), InitTraversal(), vtkProcessObject::IsA(), and TraverseForward().

Referenced by FindBySupertype().

vtkProcessObject * vtkTraversal::FindByType const char *  classname  )  [inline]
 

Definition at line 790 of file vtkTraversal.h.

References FindByType(), vtkProcessObject::GetClassName(), InitTraversal(), and TraverseForward().

Referenced by FindByType().

vtkProcessObjectCollection* vtkTraversal::GetChildren vtkProcessObject parent,
vtkProcessObjectCollection **  = 0
[static]
 

Return a list of consumer process objects downstream from this node.

vtkDataObjectCollection* vtkTraversal::GetChildren vtkDataObject parent,
vtkDataObjectCollection **  = 0
[static]
 

Return a list of data objects downstream from this node.

int vtkTraversal::GetConsumerIndex vtkDataObject o,
vtkObject consumer
[inline, static, protected]
 

Returns the index of the specified consumer of a DataObject.

Note:
Returns NULL on failure.

Definition at line 257 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetConsumerIndex(), and vtkDataObject::GetNumberOfConsumers().

Referenced by GetConsumerIndex().

vtkCollection* vtkTraversal::GetConsumers vtkProcessObject parent,
vtkCollection **  = 0
[static]
 

Return a list of consumer objects downstream from this node.

vtkCollection* vtkTraversal::GetConsumers vtkDataObject parent,
vtkCollection **  = 0
[static]
 

Return a list of the consumer objects of this node.

vtkProcessObject * vtkTraversal::GetFirstChild vtkProcessObject o  )  [static]
 

Definition at line 480 of file vtkTraversal.h.

References GetFirstChild().

vtkDataObject * vtkTraversal::GetFirstChild vtkDataObject o  )  [static]
 

Definition at line 453 of file vtkTraversal.h.

References GetFirstChild().

Referenced by GetFirstChild().

vtkObject * vtkTraversal::GetFirstConsumer vtkProcessObject o  )  [static]
 

Definition at line 467 of file vtkTraversal.h.

References GetFirstConsumer().

vtkObject * vtkTraversal::GetFirstConsumer vtkDataObject o  )  [static]
 

Definition at line 409 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetFirstConsumer(), and vtkDataObject::GetNumberOfConsumers().

Referenced by GetFirstConsumer().

vtkDataObject * vtkTraversal::GetFirstInput vtkProcessObject o  )  [static]
 

Get the first input node connecting this node to its parent(s).

Definition at line 368 of file vtkTraversal.h.

References GetFirstInput(), vtkProcessObject::GetInputs(), and vtkProcessObject::GetNumberOfInputs().

Referenced by GetFirstInput().

vtkDataObject * vtkTraversal::GetFirstOutput vtkProcessObject o  )  [static]
 

Definition at line 435 of file vtkTraversal.h.

References GetFirstOutput(), vtkSource::GetNumberOfOutputs(), and vtkSource::GetOutputs().

Referenced by GetFirstOutput().

vtkProcessObject * vtkTraversal::GetFirstProcessObject vtkDataObject o  )  [static]
 

Definition at line 421 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetFirstProcessObject(), and vtkDataObject::GetNumberOfConsumers().

Referenced by GetFirstProcessObject().

vtkProcessObject * vtkTraversal::GetInputSource vtkDataObject o  )  [static]
 

Get the source node connecting this node to its parent data object.

Definition at line 358 of file vtkTraversal.h.

References GetInputSource(), and vtkDataObject::GetSource().

Referenced by GetInputSource().

vtkProcessObject * vtkTraversal::GetLastChild vtkProcessObject o  )  [static]
 

Definition at line 565 of file vtkTraversal.h.

References GetLastChild().

vtkDataObject * vtkTraversal::GetLastChild vtkDataObject o  )  [static]
 

Definition at line 538 of file vtkTraversal.h.

References GetLastChild().

Referenced by GetLastChild().

vtkObject * vtkTraversal::GetLastConsumer vtkProcessObject o  )  [static]
 

Definition at line 552 of file vtkTraversal.h.

References GetLastConsumer().

vtkObject * vtkTraversal::GetLastConsumer vtkDataObject o  )  [static]
 

Definition at line 494 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetLastConsumer(), and vtkDataObject::GetNumberOfConsumers().

Referenced by GetLastConsumer().

vtkDataObject * vtkTraversal::GetLastOutput vtkProcessObject o  )  [static]
 

Definition at line 520 of file vtkTraversal.h.

References GetLastOutput(), vtkSource::GetNumberOfOutputs(), and vtkSource::GetOutputs().

Referenced by GetLastOutput().

vtkProcessObject * vtkTraversal::GetLastProcessObject vtkDataObject o  )  [static]
 

Definition at line 506 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetLastProcessObject(), and vtkDataObject::GetNumberOfConsumers().

Referenced by GetLastProcessObject().

vtkProcessObject * vtkTraversal::GetNextSibling vtkProcessObject o  )  [static]
 

Definition at line 595 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), GetNextSibling(), and vtkDataObject::GetNumberOfConsumers().

vtkDataObject * vtkTraversal::GetNextSibling vtkDataObject o  )  [static]
 

Definition at line 579 of file vtkTraversal.h.

References GetNextSibling(), vtkSource::GetNumberOfOutputs(), and vtkSource::GetOutputs().

Referenced by GetNextSibling(), and TraverseForward().

int vtkTraversal::GetNumberOfChildren vtkProcessObject parent,
vtkProcessObjectCollection **  = 0
[static]
 

int vtkTraversal::GetNumberOfChildren vtkDataObject parent,
vtkDataObjectCollection **  = 0
[static]
 

int vtkTraversal::GetOutputIndex vtkProcessObject o,
vtkDataObject output
[inline, static, protected]
 

Returns the index of the specified output of a ProcessObject.

Note:
Returns NULL on failure.

Definition at line 274 of file vtkTraversal.h.

References GetOutputIndex().

Referenced by GetOutputIndex().

vtkDataObjectCollection* vtkTraversal::GetOutputs vtkProcessObject parent,
vtkDataObjectCollection **  = 0
[static]
 

Return a list of the output data objects of this node.

vtkProcessObject * vtkTraversal::GetParent vtkProcessObject o  )  [static]
 

Return the process object immediately upstream of this node.

Definition at line 395 of file vtkTraversal.h.

References GetParent().

vtkDataObject * vtkTraversal::GetParent vtkDataObject o  )  [static]
 

Return the data object immediately upstream of this node.

Definition at line 382 of file vtkTraversal.h.

References GetParent().

Referenced by GetParent().

vtkProcessObject * vtkTraversal::GetPreviousSibling vtkProcessObject  )  [static]
 

Definition at line 627 of file vtkTraversal.h.

References vtkDataObject::GetConsumer(), and GetPreviousSibling().

vtkDataObject * vtkTraversal::GetPreviousSibling vtkDataObject o  )  [static]
 

Definition at line 611 of file vtkTraversal.h.

References vtkSource::GetOutputs(), and GetPreviousSibling().

Referenced by GetPreviousSibling().

vtkProcessObject * vtkTraversal::GetTop vtkProcessObject o  )  [static]
 

Definition at line 655 of file vtkTraversal.h.

References GetTop().

vtkDataObject * vtkTraversal::GetTop vtkDataObject o  )  [static]
 

Definition at line 644 of file vtkTraversal.h.

References GetTop().

Referenced by GetTop().

vtkBoolType vtkTraversal::HasChildren vtkProcessObject o  )  [static]
 

vtkBoolType vtkTraversal::HasChildren vtkDataObject o  )  [static]
 

vtkProcessObject * vtkTraversal::InitTraversal void   )  [inline]
 

Sets Current to First and returns Current.

Definition at line 686 of file vtkTraversal.h.

References Current, and Top.

Referenced by Find(), FindBySupertype(), and FindByType().

vtkProcessObject * vtkTraversal::InitTraversal vtkProcessObject aNode  )  [inline]
 

Sets Current to aNode and returns Current.

Definition at line 680 of file vtkTraversal.h.

References Current.

vtkBoolType vtkTraversal::IsEqual vtkProcessObject o  )  [inline, static]
 

Definition at line 203 of file vtkTraversal.h.

References vtkBoolType.

vtkBoolType vtkTraversal::IsSame vtkProcessObject o  )  [inline, static]
 

Definition at line 202 of file vtkTraversal.h.

References vtkBoolType.

vtkBoolType vtkTraversal::IsSelfOrAncestor vtkProcessObject node,
vtkProcessObject child
[inline, static, protected]
 

Check if child is same as node or if child is one of node's ancestors.

Definition at line 328 of file vtkTraversal.h.

References IsSelfOrAncestor(), VTK_FALSE, and VTK_TRUE.

Referenced by IsSelfOrAncestor().

vtkTraversal* vtkTraversal::New void   )  [inline, static]
 

Definition at line 51 of file vtkTraversal.h.

vtkProcessObject* vtkTraversal::Remove vtkProcessObject oldNode  )  [static]
 

Removes the node indicated by oldNode and returns it.

Parameters:
oldNode The node being removed.
Returns:
The node removed on success or null on failure.

vtkProcessObject* vtkTraversal::Replace vtkProcessObject newNode,
vtkProcessObject oldNode
[static]
 

Replaces the node oldNode with newNode.

Parameters:
newNode The new node.
oldNode The node being replaced.
Returns:
The node being replaced on success or null on failure.
Note:
If the newNode is already in the tree, it is first removed.

int vtkTraversal::SetNthInput vtkProcessObject node,
int  index,
vtkDataObject input
[inline, static, protected]
 

Set the n'th input of a filter or mapper.

Parameters:
node The filter of mapper to modify.
index An index into the array of inputs.
input The new value for the n'th input.
Returns:
VTK_OK on success or VTK_ERROR on failure.

Definition at line 294 of file vtkTraversal.h.

References vtkDataObject::AddConsumer(), vtkProcessObject::GetInputs(), vtkProcessObject::GetNumberOfInputs(), vtkObject::Modified(), vtkObject::Register(), SetNthInput(), VTK_ERROR, and VTK_OK.

Referenced by SetNthInput().

vtkProcessObject* vtkTraversal::Splice vtkProcessObject newNode,
vtkProcessObject refNode
[static]
 

Inserts newNode as a parent of the existing node refNode.

Parameters:
newNode The node to insert above refNode.
refNode The reference node, i.e., the node above which the new node must be inserted.
Returns:
The node being inserted on success or null on failure.
Note:
If the newNode is already in the tree, it is first removed.
Warning:
Does NOT properly handle multiple input or multiple output filters.

vtkProcessObject * vtkTraversal::TraverseBackward void   )  [inline]
 

Definition at line 747 of file vtkTraversal.h.

References Current.

vtkProcessObject * vtkTraversal::TraverseForward void   )  [inline]
 

Definition at line 739 of file vtkTraversal.h.

Referenced by Find(), FindBySupertype(), and FindByType().

vtkProcessObject * vtkTraversal::TraverseForward int &  depth  )  [inline]
 

Definition at line 700 of file vtkTraversal.h.

References Current, and GetNextSibling().

vtkProcessObject * vtkTraversal::TraverseUp void   )  [inline]
 

Definition at line 692 of file vtkTraversal.h.

References Current.

void vtkTraversal::UpdateTop void   )  [inline]
 

Definition at line 674 of file vtkTraversal.h.

References Top.

void vtkTraversal::UpdateTop vtkProcessObject aNode  )  [inline]
 

Definition at line 667 of file vtkTraversal.h.

References Current, and Top.


Member Data Documentation

vtkProcessObject* vtkTraversal::Current [protected]
 

Definition at line 207 of file vtkTraversal.h.

Referenced by InitTraversal(), TraverseBackward(), TraverseForward(), TraverseUp(), and UpdateTop().

vtkProcessObject* vtkTraversal::Top [protected]
 

Definition at line 206 of file vtkTraversal.h.

Referenced by InitTraversal(), and UpdateTop().


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