VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkUndirectedGraphAlgorithm Class Reference

Superclass for algorithms that produce undirected graph as output. More...

#include <vtkUndirectedGraphAlgorithm.h>

Inherits vtkAlgorithm.

Public Types

typedef vtkAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
vtkUndirectedGraphGetOutput ()
 
vtkUndirectedGraphGetOutput (int index)
 
void SetInput (vtkDataObject *obj)
 
void SetInput (int index, vtkDataObject *obj)
 

Static Public Member Functions

static
vtkUndirectedGraphAlgorithm
New ()
 
static int IsTypeOf (const char *type)
 
static
vtkUndirectedGraphAlgorithm
SafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkUndirectedGraphAlgorithm ()
 
 ~vtkUndirectedGraphAlgorithm ()
 
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int FillOutputPortInformation (int port, vtkInformation *info)
 
virtual int FillInputPortInformation (int port, vtkInformation *info)
 
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 

Detailed Description

Superclass for algorithms that produce undirected graph as output.

vtkUndirectedGraphAlgorithm is a convenience class to make writing algorithms easier. It is also designed to help transition old algorithms to the new pipeline edgehitecture. There are some assumptions and defaults made by this class you should be aware of. This class defaults such that your filter will have one input port and one output port. If that is not the case simply change it with SetNumberOfInputPorts etc. See this class constructor for the default. This class also provides a FillInputPortInfo method that by default says that all inputs will be Graph. If that isn't the case then please override this method in your subclass. This class breaks out the downstream requests into separate functions such as ExecuteData and ExecuteInformation. For new algorithms you should implement RequestData( request, inputVec, outputVec) but for older filters there is a default implementation that calls the old ExecuteData(output) signature. For even older filters that don't implement ExecuteData the default implementation calls the even older Execute() signature.

Thanks:
Thanks to Patricia Crossno, Ken Moreland, Andrew Wilson and Brian Wylie from Sandia National Laboratories for their help in developing this class.

Definition at line 53 of file vtkUndirectedGraphAlgorithm.h.

Member Typedef Documentation

Definition at line 57 of file vtkUndirectedGraphAlgorithm.h.

Constructor & Destructor Documentation

vtkUndirectedGraphAlgorithm::vtkUndirectedGraphAlgorithm ( )
protected
vtkUndirectedGraphAlgorithm::~vtkUndirectedGraphAlgorithm ( )
protected

Member Function Documentation

static vtkUndirectedGraphAlgorithm* vtkUndirectedGraphAlgorithm::New ( )
static
virtual const char* vtkUndirectedGraphAlgorithm::GetClassName ( )
virtual
static int vtkUndirectedGraphAlgorithm::IsTypeOf ( const char *  type)
static
virtual int vtkUndirectedGraphAlgorithm::IsA ( const char *  type)
virtual
static vtkUndirectedGraphAlgorithm* vtkUndirectedGraphAlgorithm::SafeDownCast ( vtkObject o)
static
void vtkUndirectedGraphAlgorithm::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual int vtkUndirectedGraphAlgorithm::ProcessRequest ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
)
virtual

see vtkAlgorithm for details

vtkUndirectedGraph* vtkUndirectedGraphAlgorithm::GetOutput ( )
inline

Get the output data object for a port on this algorithm.

Definition at line 69 of file vtkUndirectedGraphAlgorithm.h.

vtkUndirectedGraph* vtkUndirectedGraphAlgorithm::GetOutput ( int  index)

Get the output data object for a port on this algorithm.

void vtkUndirectedGraphAlgorithm::SetInput ( vtkDataObject obj)
inline

Set an input of this algorithm. You should not override these methods because they are not the only way to connect a pipeline. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::SetInputConnection(). These methods transform the input index to the input port index, not an index of a connection within a single port.

Definition at line 81 of file vtkUndirectedGraphAlgorithm.h.

void vtkUndirectedGraphAlgorithm::SetInput ( int  index,
vtkDataObject obj 
)

Set an input of this algorithm. You should not override these methods because they are not the only way to connect a pipeline. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::SetInputConnection(). These methods transform the input index to the input port index, not an index of a connection within a single port.

virtual int vtkUndirectedGraphAlgorithm::RequestInformation ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
)
protectedvirtual
virtual int vtkUndirectedGraphAlgorithm::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
)
protectedvirtual

This is called by the superclass. This is the method you should override.

virtual int vtkUndirectedGraphAlgorithm::RequestUpdateExtent ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
)
protectedvirtual

This is called by the superclass. This is the method you should override.

virtual int vtkUndirectedGraphAlgorithm::FillOutputPortInformation ( int  port,
vtkInformation info 
)
protectedvirtual
virtual int vtkUndirectedGraphAlgorithm::FillInputPortInformation ( int  port,
vtkInformation info 
)
protectedvirtual

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