VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkBoostKruskalMinimumSpanningTree.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkBoostKruskalMinimumSpanningTree.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  -------------------------------------------------------------------------*/
37 #ifndef __vtkBoostKruskalMinimumSpanningTree_h
38 #define __vtkBoostKruskalMinimumSpanningTree_h
39 
40 #include "vtkInfovisBoostGraphAlgorithmsModule.h" // For export macro
41 #include "vtkStdString.h" // For string type
42 #include "vtkVariant.h" // For variant type
43 
44 #include "vtkSelectionAlgorithm.h"
45 
46 class VTKINFOVISBOOSTGRAPHALGORITHMS_EXPORT vtkBoostKruskalMinimumSpanningTree : public vtkSelectionAlgorithm
47 {
48 public:
50  vtkTypeMacro(vtkBoostKruskalMinimumSpanningTree, vtkSelectionAlgorithm);
51  void PrintSelf(ostream& os, vtkIndent indent);
52 
54 
58  vtkSetStringMacro(EdgeWeightArrayName);
60 
62 
65  vtkSetStringMacro(OutputSelectionType);
67 
69 
73  void SetNegateEdgeWeights(bool value);
74  vtkGetMacro(NegateEdgeWeights, bool);
75  vtkBooleanMacro(NegateEdgeWeights, bool);
77 
78 protected:
81 
82  int RequestData(
83  vtkInformation *,
84  vtkInformationVector **,
85  vtkInformationVector *);
86 
87  int FillInputPortInformation(
88  int port, vtkInformation* info);
89 
90  int FillOutputPortInformation(
91  int port, vtkInformation* info);
92 
93 private:
94  char* EdgeWeightArrayName;
95  char* OutputSelectionType;
96  bool NegateEdgeWeights;
97  float EdgeWeightMultiplier;
98 
100  void operator=(const vtkBoostKruskalMinimumSpanningTree&); // Not implemented.
101 };
102 
103 #endif
Contructs a minimum spanning tree from a graph and the weighting array.