VTK
vtkPBGLRandomGraphSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPBGLRandomGraphSource.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 -------------------------------------------------------------------------*/
36 #ifndef vtkPBGLRandomGraphSource_h
37 #define vtkPBGLRandomGraphSource_h
38 
39 #include "vtkInfovisParallelModule.h" // For export macro
40 #include "vtkGraphAlgorithm.h"
41 
42 class vtkGraph;
43 class vtkPVXMLElement;
44 
45 #if !defined(VTK_LEGACY_REMOVE)
46 class VTKINFOVISPARALLEL_EXPORT vtkPBGLRandomGraphSource : public vtkGraphAlgorithm
47 {
48 public:
49  static vtkPBGLRandomGraphSource* New();
51  void PrintSelf(ostream& os, vtkIndent indent);
52 
54 
57  vtkGetMacro(NumberOfVertices, vtkIdType);
58  vtkSetClampMacro(NumberOfVertices, vtkIdType, 0, VTK_ID_MAX);
60 
62 
66  vtkGetMacro(NumberOfEdges, vtkIdType);
67  vtkSetClampMacro(NumberOfEdges, vtkIdType, 0, VTK_ID_MAX);
69 
71 
75  vtkGetMacro(EdgeProbability, double);
76  vtkSetClampMacro(EdgeProbability, double, 0.0, 1.0);
78 
80 
84  vtkSetMacro(IncludeEdgeWeights, bool);
85  vtkGetMacro(IncludeEdgeWeights, bool);
86  vtkBooleanMacro(IncludeEdgeWeights, bool);
88 
90 
93  vtkSetStringMacro(EdgeWeightArrayName);
94  vtkGetStringMacro(EdgeWeightArrayName);
96 
98 
101  vtkSetMacro(Directed, bool);
102  vtkGetMacro(Directed, bool);
103  vtkBooleanMacro(Directed, bool);
105 
107 
115  vtkSetMacro(UseEdgeProbability, bool);
116  vtkGetMacro(UseEdgeProbability, bool);
117  vtkBooleanMacro(UseEdgeProbability, bool);
119 
121 
125  vtkSetMacro(StartWithTree, bool);
126  vtkGetMacro(StartWithTree, bool);
127  vtkBooleanMacro(StartWithTree, bool);
129 
131 
136  vtkSetMacro(AllowSelfLoops, bool);
137  vtkGetMacro(AllowSelfLoops, bool);
138  vtkBooleanMacro(AllowSelfLoops, bool);
140 
142 
149  vtkSetMacro(AllowBalancedEdgeDistribution, bool);
150  vtkGetMacro(AllowBalancedEdgeDistribution, bool);
151  vtkBooleanMacro(AllowBalancedEdgeDistribution, bool);
153 
155 
158  vtkSetMacro(GeneratePedigreeIds, bool);
159  vtkGetMacro(GeneratePedigreeIds, bool);
160  vtkBooleanMacro(GeneratePedigreeIds, bool);
162 
164 
168  vtkSetStringMacro(VertexPedigreeIdArrayName);
169  vtkGetStringMacro(VertexPedigreeIdArrayName);
171 
173 
176  vtkSetStringMacro(EdgePedigreeIdArrayName);
177  vtkGetStringMacro(EdgePedigreeIdArrayName);
179 
181 
186  vtkSetMacro(Seed, int);
187  vtkGetMacro(Seed, int);
189 
190 protected:
196  bool Directed;
203  int Seed;
207 
208  virtual int RequestData(
212 
216  virtual int RequestDataObject(vtkInformation*,
217  vtkInformationVector** inputVector,
218  vtkInformationVector* outputVector);
219 
220 private:
221  vtkPBGLRandomGraphSource(const vtkPBGLRandomGraphSource&) VTK_DELETE_FUNCTION;
222  void operator=(const vtkPBGLRandomGraphSource&) VTK_DELETE_FUNCTION;
223 };
224 
225 #endif //VTK_LEGACY_REMOVE
226 #endif
227 
static vtkGraphAlgorithm * New()
Store vtkAlgorithm input/output information.
Generates a distributed graph with random edges.
int vtkIdType
Definition: vtkType.h:345
Superclass for algorithms that produce only graph as output.
Base class for graph data types.
Definition: vtkGraph.h:281
a simple class to control print indentation
Definition: vtkIndent.h:33
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
#define VTK_ID_MAX
Definition: vtkType.h:349
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.