VTK
vtkExpandSelectedGraph.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExpandSelectedGraph.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 -------------------------------------------------------------------------*/
20 
37 #ifndef vtkExpandSelectedGraph_h
38 #define vtkExpandSelectedGraph_h
39 
40 #include "vtkInfovisCoreModule.h" // For export macro
41 #include "vtkSelectionAlgorithm.h"
42 
43 class vtkGraph;
44 class vtkIdTypeArray;
45 
46 class VTKINFOVISCORE_EXPORT vtkExpandSelectedGraph : public vtkSelectionAlgorithm
47 {
48 public:
49  static vtkExpandSelectedGraph* New();
51  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
52 
56  void SetGraphConnection(vtkAlgorithmOutput* in);
57 
61  int FillInputPortInformation(int port, vtkInformation* info) VTK_OVERRIDE;
62 
64 
68  vtkSetMacro(BFSDistance, int);
69  vtkGetMacro(BFSDistance, int);
71 
73 
79  vtkSetMacro(IncludeShortestPaths, bool);
80  vtkGetMacro(IncludeShortestPaths, bool);
81  vtkBooleanMacro(IncludeShortestPaths, bool);
83 
85 
88  vtkSetStringMacro(Domain);
89  vtkGetStringMacro(Domain);
91 
93 
97  vtkSetMacro(UseDomain, bool);
98  vtkGetMacro(UseDomain, bool);
99  vtkBooleanMacro(UseDomain, bool);
101 
102 protected:
104  ~vtkExpandSelectedGraph() VTK_OVERRIDE;
105 
106  int RequestData(
109  vtkInformationVector*) VTK_OVERRIDE;
110 
111  void Expand(vtkIdTypeArray*,vtkGraph*);
112 
113  int BFSDistance;
114  bool IncludeShortestPaths;
115  char* Domain;
116  bool UseDomain;
117 
118 private:
119  vtkExpandSelectedGraph(const vtkExpandSelectedGraph&) VTK_DELETE_FUNCTION;
120  void operator=(const vtkExpandSelectedGraph&) VTK_DELETE_FUNCTION;
121 
122  void BFSExpandSelection(vtkIdTypeArray *selection,
123  vtkGraph *graph);
124 };
125 
126 #endif
127 
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store vtkAlgorithm input/output information.
expands a selection set of a vtkGraph
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
dynamic, self-adjusting array of vtkIdType
Proxy object to connect input/output ports.
Base class for graph data types.
Definition: vtkGraph.h:281
static vtkSelectionAlgorithm * New()
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
Superclass for algorithms that produce only Selection as output.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.