VTK
vtkBoostBreadthFirstSearch.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkBoostBreadthFirstSearch.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 vtkBoostBreadthFirstSearch_h
41#define vtkBoostBreadthFirstSearch_h
42
43#include "vtkInfovisBoostGraphAlgorithmsModule.h" // For export macro
44#include "vtkStdString.h" // For string type
45#include "vtkVariant.h" // For variant type
46
47#include "vtkGraphAlgorithm.h"
48
49class vtkSelection;
50
51class VTKINFOVISBOOSTGRAPHALGORITHMS_EXPORT vtkBoostBreadthFirstSearch : public vtkGraphAlgorithm
52{
53public:
56 void PrintSelf(ostream& os, vtkIndent indent);
57
59
64 {
65 this->SetInputConnection(1, algOutput);
66 }
68
74
83
91 void SetOriginVertexString(char* arrayName, char* value);
92
94
98 vtkSetStringMacro(OutputArrayName);
100
102
108 vtkSetMacro(OriginFromSelection, bool);
109 vtkGetMacro(OriginFromSelection, bool);
110 vtkBooleanMacro(OriginFromSelection, bool);
112
114
119 vtkGetMacro(OutputSelection, bool);
120 vtkSetMacro(OutputSelection, bool);
121 vtkBooleanMacro(OutputSelection, bool);
123
125
130 vtkSetStringMacro(OutputSelectionType);
132
133protected:
136
137 virtual int RequestData(
141
143 int port, vtkInformation* info);
144
146 int port, vtkInformation* info);
147
148private:
149
150 vtkIdType OriginVertexIndex;
151 char* InputArrayName;
152 char* OutputArrayName;
153 vtkVariant OriginValue;
154 bool OutputSelection;
155 bool OriginFromSelection;
156 char* OutputSelectionType;
157
159
162 vtkSetStringMacro(InputArrayName);
164
169 vtkIdType GetVertexIndex(
171
172 vtkBoostBreadthFirstSearch(const vtkBoostBreadthFirstSearch&) VTK_DELETE_FUNCTION;
173 void operator=(const vtkBoostBreadthFirstSearch&) VTK_DELETE_FUNCTION;
174};
175
176#endif
Abstract superclass for all arrays.
Proxy object to connect input/output ports.
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
Set the connection for the given input port index.
Boost breadth_first_search on a vtkGraph.
void SetOriginVertexString(char *arrayName, char *value)
Convenience method for setting the origin vertex given an array name and string value.
void SetOriginSelection(vtkSelection *s)
Convenience methods for setting the origin selection input.
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
void SetOriginVertex(vtkStdString arrayName, vtkVariant value)
Set the breadth first search 'origin' vertex.
static vtkBoostBreadthFirstSearch * New()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void SetOriginVertex(vtkIdType index)
Set the index (into the vertex array) of the breadth first search 'origin' vertex.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
void SetOriginSelectionConnection(vtkAlgorithmOutput *algOutput)
Superclass for algorithms that produce only graph as output.
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
A node in a selection tree.
Definition: vtkSelection.h:44
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:49
A atomic type representing the union of many types.
Definition: vtkVariant.h:76
@ info
Definition: vtkX3D.h:376
@ value
Definition: vtkX3D.h:220
@ port
Definition: vtkX3D.h:447
@ index
Definition: vtkX3D.h:246
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
int vtkIdType
Definition: vtkType.h:287