VTK
vtkMutableDirectedGraph.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkMutableDirectedGraph.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
40 #ifndef vtkMutableDirectedGraph_h
41 #define vtkMutableDirectedGraph_h
42 
43 #include "vtkCommonDataModelModule.h" // For export macro
44 #include "vtkDirectedGraph.h"
45 
47 class vtkGraphEdge;
48 class vtkVariant;
49 
51 {
52 public:
55  void PrintSelf(ostream& os, vtkIndent indent);
56 
66 
74 
89 
100  vtkIdType AddVertex(const vtkVariant& pedigreeId);
101 
102 //BTX
104 
109 //ETX
111 
112 //BTX
114 
122  vtkVariantArray *propertyArr);
123 //ETX
125 
126  //BTX
128 
136  vtkVariantArray *propertyArr = 0);
138 
140 
148  vtkVariantArray *propertyArr = 0);
150 
152 
159  const vtkVariant& v,
160  vtkVariantArray *propertyArr = 0);
161  //ETX
163 
168 
177  void LazyAddVertex(vtkVariantArray *propertyArr);
178 
184  void LazyAddVertex(const vtkVariant& pedigreeId);
185 
192  void LazyAddEdge(vtkIdType u, vtkIdType v, vtkVariantArray *propertyArr = 0);
193 
195 
203  vtkVariantArray *propertyArr = 0);
205 
207 
214  vtkVariantArray *propertyArr = 0);
216 
218 
224  void LazyAddEdge(const vtkVariant& u,
225  const vtkVariant& v,
226  vtkVariantArray *propertyArr = 0);
228 
235 
237 
244  vtkVariantArray *propertyArr);
246  { return this->AddChild(parent, 0); }
248 
253 
257 
261 
264 
265 protected:
268 
271 
272 private:
273  vtkMutableDirectedGraph(const vtkMutableDirectedGraph&); // Not implemented.
274  void operator=(const vtkMutableDirectedGraph&); // Not implemented.
275 };
276 
277 #endif
vtkMutableDirectedGraph
An editable directed graph.
Definition: vtkMutableDirectedGraph.h:51
vtkMutableDirectedGraph::LazyAddVertex
void LazyAddVertex(const vtkVariant &pedigreeId)
vtkMutableDirectedGraph::AddEdge
vtkEdgeType AddEdge(vtkIdType u, vtkIdType v)
vtkIdType
int vtkIdType
Definition: vtkType.h:275
vtkCommonDataModelModule.h
vtkMutableDirectedGraph::AddEdge
vtkEdgeType AddEdge(const vtkVariant &u, vtkIdType v, vtkVariantArray *propertyArr=0)
vtkMutableDirectedGraph::SetNumberOfVertices
virtual vtkIdType SetNumberOfVertices(vtkIdType numVerts)
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkMutableDirectedGraph::AddEdge
vtkEdgeType AddEdge(vtkIdType u, const vtkVariant &v, vtkVariantArray *propertyArr=0)
vtkMutableDirectedGraph::LazyAddEdge
void LazyAddEdge(const vtkVariant &u, const vtkVariant &v, vtkVariantArray *propertyArr=0)
vtkDirectedGraph
A directed graph.
Definition: vtkDirectedGraph.h:47
vtkMutableDirectedGraph::AddEdge
vtkEdgeType AddEdge(const vtkVariant &u, const vtkVariant &v, vtkVariantArray *propertyArr=0)
vtkgl::v
const GLdouble * v
Definition: vtkgl.h:11595
vtkMutableDirectedGraph::RemoveVertices
void RemoveVertices(vtkIdTypeArray *arr)
vtkVariantArray
An array holding vtkVariants.
Definition: vtkVariantArray.h:48
vtkMutableDirectedGraph::RemoveEdges
void RemoveEdges(vtkIdTypeArray *arr)
vtkDirectedGraph.h
vtkMutableDirectedGraph::LazyAddVertex
void LazyAddVertex()
vtkEdgeType
Definition: vtkGraph.h:277
vtkMutableDirectedGraph::LazyAddEdge
void LazyAddEdge(const vtkVariant &u, vtkIdType v, vtkVariantArray *propertyArr=0)
vtkMutableDirectedGraph::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkGraphEdge
Representation of a single graph edge.
Definition: vtkGraphEdge.h:39
vtkMutableDirectedGraph::vtkMutableDirectedGraph
vtkMutableDirectedGraph()
vtkMutableDirectedGraph::AddChild
vtkIdType AddChild(vtkIdType parent, vtkVariantArray *propertyArr)
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkVariant
A atomic type representing the union of many types.
Definition: vtkVariant.h:79
vtkEdgeListIterator
Iterates through all edges in a graph.
Definition: vtkEdgeListIterator.h:56
vtkMutableDirectedGraph::AddVertex
vtkIdType AddVertex(const vtkVariant &pedigreeId)
vtkIdTypeArray
dynamic, self-adjusting array of vtkIdType
Definition: vtkIdTypeArray.h:49
vtkMutableDirectedGraph::RemoveEdge
void RemoveEdge(vtkIdType e)
vtkMutableDirectedGraph::AddChild
vtkIdType AddChild(vtkIdType parent)
Definition: vtkMutableDirectedGraph.h:245
vtkMutableDirectedGraph::LazyAddEdge
void LazyAddEdge(vtkIdType u, const vtkVariant &v, vtkVariantArray *propertyArr=0)
VTKCOMMONDATAMODEL_EXPORT
#define VTKCOMMONDATAMODEL_EXPORT
Definition: vtkCommonDataModelModule.h:15
vtkMutableDirectedGraph::GraphEdge
vtkGraphEdge * GraphEdge
Definition: vtkMutableDirectedGraph.h:270
vtkMutableDirectedGraph::AddGraphEdge
vtkGraphEdge * AddGraphEdge(vtkIdType u, vtkIdType v)
vtkMutableDirectedGraph::LazyAddVertex
void LazyAddVertex(vtkVariantArray *propertyArr)
vtkMutableDirectedGraph::LazyAddEdge
void LazyAddEdge(vtkIdType u, vtkIdType v, vtkVariantArray *propertyArr=0)
vtkMutableDirectedGraph::AddEdge
vtkEdgeType AddEdge(vtkIdType u, vtkIdType v, vtkVariantArray *propertyArr)
vtkMutableDirectedGraph::AddVertex
vtkIdType AddVertex()
vtkMutableDirectedGraph::~vtkMutableDirectedGraph
~vtkMutableDirectedGraph()
vtkMutableDirectedGraph::New
static vtkMutableDirectedGraph * New()
vtkMutableDirectedGraph::RemoveVertex
void RemoveVertex(vtkIdType v)
vtkMutableDirectedGraph::AddVertex
vtkIdType AddVertex(vtkVariantArray *propertyArr)