VTK
vtkBoostBetweennessClustering.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkBoostGraphAdapter.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 
33 #ifndef vtkBoostBetweennessClustering_h
34 #define vtkBoostBetweennessClustering_h
35 
36 #include "vtkInfovisBoostGraphAlgorithmsModule.h" // For export macro
37 #include "vtkGraphAlgorithm.h"
38 
39 class VTKINFOVISBOOSTGRAPHALGORITHMS_EXPORT vtkBoostBetweennessClustering :
40  public vtkGraphAlgorithm
41 {
42 public:
45  void PrintSelf(ostream &os, vtkIndent indent);
46 
49 
51 
53  vtkSetMacro(Threshold, double);
54  vtkGetMacro(Threshold, double);
56 
58 
60  vtkSetMacro(UseEdgeWeightArray, bool);
61  vtkBooleanMacro(UseEdgeWeightArray, bool);
63 
64  vtkSetMacro(InvertEdgeWeightArray, bool);
65  vtkBooleanMacro(InvertEdgeWeightArray, bool);
66 
68 
70  vtkGetStringMacro(EdgeWeightArrayName);
71  vtkSetStringMacro(EdgeWeightArrayName);
73 
75 
77  vtkSetStringMacro(EdgeCentralityArrayName);
79 
80 protected:
81 
82  virtual int RequestData(vtkInformation* request,
83  vtkInformationVector** inputVector,
84  vtkInformationVector* outputVector);
85 
87 
88 
89 private:
90 
91  double Threshold;
92  bool UseEdgeWeightArray;
93  bool InvertEdgeWeightArray;
94  char* EdgeWeightArrayName;
95  char* EdgeCentralityArrayName;
96 
98  void operator=(const vtkBoostBetweennessClustering&); // Not implemented.
99 };
100 
101 #endif // vtkBoostBetweennessClustering_h
static vtkGraphAlgorithm * New()
Store vtkAlgorithm input/output information.
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Superclass for algorithms that produce only graph as output.
a simple class to control print indentation
Definition: vtkIndent.h:38
int Threshold(vtkDataSet *input, vtkUnstructuredGrid *output, vtkDataArray *field, double lower, double upper)
void PrintSelf(ostream &os, vtkIndent indent)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Store zero or more vtkInformation instances.
Implements graph clustering based on edge betweenness centrality.