vtkMutableUndirectedGraph Class Reference

#include <vtkMutableUndirectedGraph.h>

Inheritance diagram for vtkMutableUndirectedGraph:

Inheritance graph
[legend]
Collaboration diagram for vtkMutableUndirectedGraph:

Collaboration graph
[legend]

List of all members.


Detailed Description

An editable undirected graph.

vtkMutableUndirectedGraph is an undirected graph with additional functions for adding vertices and edges. ShallowCopy(), DeepCopy(), CheckedShallowCopy(), and CheckedDeepCopy() will succeed when the argument is a vtkUndirectedGraph or vtkMutableUndirectedGraph.

See also:
vtkUndirectedGraph vtkGraph
Tests:
vtkMutableUndirectedGraph (Tests)

Definition at line 44 of file vtkMutableUndirectedGraph.h.


Public Types

typedef vtkUndirectedGraph Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
vtkIdType AddVertex ()
vtkIdType AddVertex (vtkVariantArray *propertyArr)
vtkEdgeType AddEdge (vtkIdType u, vtkIdType v)
void LazyAddVertex ()
void LazyAddVertex (vtkVariantArray *propertyArr)
void LazyAddEdge (vtkIdType u, vtkIdType v)
void LazyAddEdge (vtkIdType u, vtkIdType v, vtkVariantArray *propertyArr)
vtkGraphEdgeAddGraphEdge (vtkIdType u, vtkIdType v)
vtkIdType AddVertex (const vtkVariant &pedigreeId)
vtkEdgeType AddEdge (vtkIdType u, vtkIdType v, vtkVariantArray *propertyArr)
vtkEdgeType AddEdge (const vtkVariant &uPedigreeId, vtkIdType v, vtkVariantArray *propertyArr=0)
vtkEdgeType AddEdge (vtkIdType u, const vtkVariant &vPedigreeId, vtkVariantArray *propertyArr=0)
vtkEdgeType AddEdge (const vtkVariant &uPedigreeId, const vtkVariant &vPedigreeId, vtkVariantArray *propertyArr=0)
void LazyAddVertex (const vtkVariant &pedigreeId)
void LazyAddEdge (const vtkVariant &uPedigreeId, vtkIdType v, vtkVariantArray *propertyArr=0)
void LazyAddEdge (vtkIdType u, const vtkVariant &vPedigreeId, vtkVariantArray *propertyArr=0)
void LazyAddEdge (const vtkVariant &uPedigreeId, const vtkVariant &vPedigreeId, vtkVariantArray *propertyArr=0)

Static Public Member Functions

static vtkMutableUndirectedGraphNew ()
static int IsTypeOf (const char *type)
static vtkMutableUndirectedGraphSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkMutableUndirectedGraph ()
 ~vtkMutableUndirectedGraph ()

Protected Attributes

vtkGraphEdgeGraphEdge

Member Typedef Documentation

Reimplemented from vtkUndirectedGraph.

Definition at line 48 of file vtkMutableUndirectedGraph.h.


Constructor & Destructor Documentation

vtkMutableUndirectedGraph::vtkMutableUndirectedGraph (  )  [protected]

vtkMutableUndirectedGraph::~vtkMutableUndirectedGraph (  )  [protected]


Member Function Documentation

static vtkMutableUndirectedGraph* vtkMutableUndirectedGraph::New (  )  [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkUndirectedGraph.

virtual const char* vtkMutableUndirectedGraph::GetClassName (  )  [virtual]

Reimplemented from vtkUndirectedGraph.

static int vtkMutableUndirectedGraph::IsTypeOf ( const char *  name  )  [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkUndirectedGraph.

virtual int vtkMutableUndirectedGraph::IsA ( const char *  name  )  [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkUndirectedGraph.

static vtkMutableUndirectedGraph* vtkMutableUndirectedGraph::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkUndirectedGraph.

void vtkMutableUndirectedGraph::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkUndirectedGraph.

vtkIdType vtkMutableUndirectedGraph::AddVertex (  ) 

Adds a new vertex to the graph and returns the id of that vertex. If non-null, propertyArr provides properties that will be attached to this vertex. The values in propertyArr must match up with the arrays in the vertex data retrieved by GetVertexData. In a distributed graph, this routine cannot be used to add a vertex if the vertices in the graph have pedigree IDs, because this routine will always add the vertex locally, which may conflict with the proper location of the vertex based on the distribution of the pedigree IDs.

vtkIdType vtkMutableUndirectedGraph::AddVertex ( vtkVariantArray propertyArr  ) 

Adds a new vertex to the graph and returns the id of that vertex. If non-null, propertyArr provides properties that will be attached to this vertex. The values in propertyArr must match up with the arrays in the vertex data retrieved by GetVertexData. If the graph has pedigree IDs for its vertices, and a vertex with the given pedigree ID already exists, its properties will be overwritten with the properties in propertyArr and its ID will be returned. Note that, in a distributed graph with pedigree IDs, the vertex added or found might not be local. In this case, AddVertex will wait until the vertex can be added or found remotely, so that the proper vertex ID can be returned. If you don't actually need to use the vertex ID, consider calling LazyAddVertex, which provides better performance by eliminating the delays associated with returning the vertex ID.

vtkIdType vtkMutableUndirectedGraph::AddVertex ( const vtkVariant pedigreeId  ) 

Adds a vertex with the given pedigree ID to the graph (if a vertex with that pedigree ID does not already exist) and returns the id the vertex with that pedigree ID. If a vertex with the given pedigree ID already exists, its ID will be returned. Note that, in a distributed graph, the vertex added or found might not be local. In this case, AddVertex will wait until the vertex can be added or found remotely, so that the proper vertex ID can be returned. If you don't actually need to use the vertex ID, consider calling LazyAddVertex, which provides better performance by eliminating the delays associated with returning the vertex ID.

vtkEdgeType vtkMutableUndirectedGraph::AddEdge ( vtkIdType  u,
vtkIdType  v 
)

Adds an undirected edge from u to v to the graph and returns a vtkEdgeType structure for that edge. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData. Both u and v must refer to vertices already in the graph.

vtkEdgeType vtkMutableUndirectedGraph::AddEdge ( vtkIdType  u,
vtkIdType  v,
vtkVariantArray propertyArr 
)

Adds an undirected edge from u to v to the graph and returns a vtkEdgeType structure for that edge. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData. Both u and v must refer to vertices already in the graph.

vtkEdgeType vtkMutableUndirectedGraph::AddEdge ( const vtkVariant uPedigreeId,
vtkIdType  v,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph and returns a vtkEdgeType structure for that edge. uPedigreeId is the pedigree ID of a vertex, which will be automatically added if it does not already exist. v must refer to a vertex already in the graph. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

vtkEdgeType vtkMutableUndirectedGraph::AddEdge ( vtkIdType  u,
const vtkVariant vPedigreeId,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph and returns a vtkEdgeType structure for that edge. vPedigreeId is the pedigree ID of a vertex, which will be automatically added if it does not already exist. u must refer to a vertex already in the graph. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

vtkEdgeType vtkMutableUndirectedGraph::AddEdge ( const vtkVariant uPedigreeId,
const vtkVariant vPedigreeId,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph and returns a vtkEdgeType structure for that edge. uPedigreeId and vPedigreeId are the pedigree IDs of vertices u and v, which will be automatically added if they do not already exist. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

void vtkMutableUndirectedGraph::LazyAddVertex (  ) 

Adds a vertex to the graph, and returns the id of that vertex. If non-null, propertyArr provides properties that will be attached to this vertex. The values in propertyArr must match up with the arrays in the vertex data retrieved by GetVertexData. In a distributed graph, this routine cannot be used to add a vertex if the vertices in the graph have pedigree IDs, because this routine will always add the vertex locally, which may conflict with the proper location of the vertex based on the distribution of the pedigree IDs.

void vtkMutableUndirectedGraph::LazyAddVertex ( vtkVariantArray propertyArr  ) 

Adds a vertex to the graph, and returns the id of that vertex. If non-null, propertyArr provides properties that will be attached to this vertex. The values in propertyArr must match up with the arrays in the vertex data retrieved by GetVertexData. If the graph has pedigree IDs for its vertices, and a vertex with the given pedigree ID already exists, its properties will be overwritten with the properties in propertyArr. Note that, in a distributed graph with pedigree IDs, the vertex added or found might not be local. In these cases, LazyAddVertex can be significantly faster than AddVertex, because it does not have to return the resulting vertex ID to the caller.

void vtkMutableUndirectedGraph::LazyAddVertex ( const vtkVariant pedigreeId  ) 

Adds a vertex with the given pedigree ID to the graph (if a vertex with that pedigree ID does not already exist). Note that, in a distributed graph, the vertex added or found might not be local. In these cases, LazyAddVertex can be significantly faster than AddVertex, because it does not have to return the resulting vertex ID to the caller.

void vtkMutableUndirectedGraph::LazyAddEdge ( vtkIdType  u,
vtkIdType  v 
)

Adds an undirected edge from u to v to the graph. The edge may not be added immediately, which provides more optimization opportunities for distributed graphs; consequently, the edge itself is not actually returned. u and v must refer to vertices in the graph.

void vtkMutableUndirectedGraph::LazyAddEdge ( vtkIdType  u,
vtkIdType  v,
vtkVariantArray propertyArr 
)

Adds an undirected edge from u to v to the graph. The edge may not be added immediately, which provides more optimization opportunities for distributed graphs; consequently, the edge itself is not actually returned. u and v must refer to vertices in the graph. If non-NULL, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

void vtkMutableUndirectedGraph::LazyAddEdge ( const vtkVariant uPedigreeId,
vtkIdType  v,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph. The edge may not be added immediately, which provides more optimization opportunities for distributed graphs; consequently, the edge itself is not actually returned. uPedigreeId is the pedigree ID of a vertex, which will be automatically added if it does not already exist. v must refer to a vertex in the graph. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

void vtkMutableUndirectedGraph::LazyAddEdge ( vtkIdType  u,
const vtkVariant vPedigreeId,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph. The edge may not be added immediately, which provides more optimization opportunities for distributed graphs; consequently, the edge itself is not actually returned. vPedigreeId is the pedigree ID of a vertex, which will be automatically added if it does not already exist. u must refer to a vertex in the graph. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

void vtkMutableUndirectedGraph::LazyAddEdge ( const vtkVariant uPedigreeId,
const vtkVariant vPedigreeId,
vtkVariantArray propertyArr = 0 
)

Adds an undirected edge from u to v to the graph. The edge may not be added immediately, which provides more optimization opportunities for distributed graphs; consequently, the edge itself is not actually returned. uPedigreeId and vPedigreeId are the pedigree IDs of vertices u and v, which will be automatically added if they do not already exist. If provided, propertyArr provides edge properties for the newly-created edge. The values in propertyArr must match up with the arrays in the edge data returned by GetEdgeData.

vtkGraphEdge* vtkMutableUndirectedGraph::AddGraphEdge ( vtkIdType  u,
vtkIdType  v 
)

Version of AddEdge that returns a heavyweight vtkGraphEdge for use with wrappers. The graph owns the reference of the edge and will replace its contents on the next call to AddGraphEdge.


Member Data Documentation

Graph edge that is reused of AddGraphEdge calls.

Definition at line 252 of file vtkMutableUndirectedGraph.h.


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

Generated on Wed Jun 3 19:19:12 2009 for VTK by  doxygen 1.5.6