TTK
Loading...
Searching...
No Matches
ttkPathCompression.h
Go to the documentation of this file.
1
60
61#pragma once
62
63// VTK Module
64#include <ttkPathCompressionModule.h>
65
66// ttk code includes
67#include <PathCompression.h>
68#include <ttkAlgorithm.h>
69#include <ttkMacros.h>
70
71class vtkPolyData;
72
73class TTKPATHCOMPRESSION_EXPORT ttkPathCompression
74 : public ttkAlgorithm,
75 protected ttk::PathCompression {
76
77public:
79
81
82 vtkSetMacro(ComputeAscendingSegmentation, bool);
83 vtkGetMacro(ComputeAscendingSegmentation, bool);
84
85 vtkSetMacro(ComputeDescendingSegmentation, bool);
86 vtkGetMacro(ComputeDescendingSegmentation, bool);
87
88 vtkSetMacro(ComputeMSSegmentationHash, bool);
89 vtkGetMacro(ComputeMSSegmentationHash, bool);
90
91 vtkSetMacro(ForceInputOffsetScalarField, bool);
92 vtkGetMacro(ForceInputOffsetScalarField, bool);
93
94protected:
95 template <typename triangulationType>
96 int dispatch(const SimplexId *const inputOffsets,
97 const triangulationType &triangulation);
98
100
101 int FillInputPortInformation(int port, vtkInformation *info) override;
102 int FillOutputPortInformation(int port, vtkInformation *info) override;
103 int RequestData(vtkInformation *request,
104 vtkInformationVector **inputVector,
105 vtkInformationVector *outputVector) override;
106
107private:
108 bool ForceInputOffsetScalarField{};
109 OutputSegmentation segmentations_{};
110};
Baseclass of all VTK filters that wrap ttk modules.
virtual int RequestData(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
int FillInputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
int FillOutputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
TTK VTK-filter that wraps the ttk::PathCompression module.
static ttkPathCompression * New()
TTK processing package for the computation of Morse-Smale segmentations using Path Compression.