TTK
Loading...
Searching...
No Matches
ttkTopologicalCompressionReader.h
Go to the documentation of this file.
1
14
15#pragma once
16
17// TTK
19#include <ttkAlgorithm.h>
20
21// VTK Module
22#include <ttkTopologicalCompressionReaderModule.h>
23
24class vtkImageData;
25
26class TTKTOPOLOGICALCOMPRESSIONREADER_EXPORT ttkTopologicalCompressionReader
27 : public ttkAlgorithm,
29
30public:
32
34
35 vtkSetStringMacro(FileName);
36 vtkGetStringMacro(FileName);
37
38 vtkSetMacro(DataScalarType, int);
39 vtkGetMacro(DataScalarType, int);
40
41 // need this method to align with the vtkImageAlgorithm API
42 vtkImageData *GetOutput();
43
44protected:
45 // Regular ImageData reader management.
47 int FillOutputPortInformation(int, vtkInformation *) override;
48 int RequestData(vtkInformation *,
49 vtkInformationVector **,
50 vtkInformationVector *) override;
51 int RequestInformation(vtkInformation *request,
52 vtkInformationVector **inputVector,
53 vtkInformationVector *outputVector) override;
54
55 // TTK management.
56 void BuildMesh(vtkImageData *mesh) const;
57
58private:
59 // General properties.
60 char *FileName{};
61
62 // Data properties.
63 int DataScalarType;
64 std::array<int, 6> DataExtent{0, 0, 0, 0, 0, 0};
65 std::array<double, 3> DataSpacing{1.0, 1.0, 1.0};
66 std::array<double, 3> DataOrigin{0.0, 0.0, 0.0};
67};
Baseclass of all VTK filters that wrap ttk modules.
virtual int RequestData(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
virtual int RequestInformation(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
vtkDataSet * GetOutput()
int FillOutputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
VTK-filter that wraps the topologicalCompressionWriter processing package.
static ttkTopologicalCompressionReader * New()
TTK topologicalCompression processing package.