VTK  9.5.2
vtkBoostPrimMinimumSpanningTree.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3// SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
61
62#ifndef vtkBoostPrimMinimumSpanningTree_h
63#define vtkBoostPrimMinimumSpanningTree_h
64
65#include "vtkInfovisBoostGraphAlgorithmsModule.h" // For export macro
66#include "vtkStdString.h" // For string type
67#include "vtkVariant.h" // For variant type
68
69#include "vtkTreeAlgorithm.h"
70
71VTK_ABI_NAMESPACE_BEGIN
72class VTKINFOVISBOOSTGRAPHALGORITHMS_EXPORT vtkBoostPrimMinimumSpanningTree
73 : public vtkTreeAlgorithm
74{
75public:
78 void PrintSelf(ostream& os, vtkIndent indent) override;
79
81
88 vtkSetStringMacro(EdgeWeightArrayName);
90
96
105
107
111 vtkSetMacro(CreateGraphVertexIdArray, bool);
112 vtkGetMacro(CreateGraphVertexIdArray, bool);
113 vtkBooleanMacro(CreateGraphVertexIdArray, bool);
115
117
124 void SetNegateEdgeWeights(bool value);
125 vtkGetMacro(NegateEdgeWeights, bool);
126 vtkBooleanMacro(NegateEdgeWeights, bool);
128
129protected:
132
134
135 int FillInputPortInformation(int port, vtkInformation* info) override;
136
137private:
138 char* EdgeWeightArrayName;
139 vtkIdType OriginVertexIndex;
140 vtkVariant OriginValue;
141 bool CreateGraphVertexIdArray;
142 bool ArrayNameSet;
143 char* ArrayName;
144 bool NegateEdgeWeights;
145 float EdgeWeightMultiplier;
146
148
151 vtkSetStringMacro(ArrayName);
153
158 vtkIdType GetVertexIndex(vtkAbstractArray* abstract, vtkVariant value);
159
161 void operator=(const vtkBoostPrimMinimumSpanningTree&) = delete;
162};
163
164VTK_ABI_NAMESPACE_END
165#endif
Abstract superclass for all arrays.
static vtkBoostPrimMinimumSpanningTree * New()
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetNegateEdgeWeights(bool value)
Whether to negate the edge weights.
int FillInputPortInformation(int port, vtkInformation *info) override
void SetOriginVertex(vtkIdType index)
Set the index (into the vertex array) of the minimum spanning tree 'origin' vertex.
void SetOriginVertex(vtkStdString arrayName, vtkVariant value)
Set the minimum spanning tree 'origin' vertex.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Wrapper around std::string to keep symbols short.
A type representing the union of many types.
Definition vtkVariant.h:162
int vtkIdType
Definition vtkType.h:332