45#include <vtkInformation.h>
46#include <vtkMultiBlockDataSet.h>
47#include <vtkSmartPointer.h>
48#include <vtkUnstructuredGridAlgorithm.h>
51#include <ttkTrackingFromOverlapModule.h>
65 vtkSetMacro(LabelFieldName,
const std::string &);
66 vtkGetMacro(LabelFieldName, std::string);
70 SetNumberOfInputPorts(1);
71 SetNumberOfOutputPorts(1);
76 int packInputData(vtkDataObject *inputDataObject,
77 vtkMultiBlockDataSet *packedData)
const;
78 int packStreamedData(vtkMultiBlockDataSet *streamedData,
79 vtkMultiBlockDataSet *packedData)
const;
80 int checkData(vtkMultiBlockDataSet *data);
82 int storeStreamedData(vtkMultiBlockDataSet *data);
84 int computeTrackingGraphs(vtkMultiBlockDataSet *data);
85 int computeNestingTrees(vtkMultiBlockDataSet *data);
88 int meshNestedTrackingGraph(vtkDataObject *trackingGraph);
91 vtkInformationVector **inputVector,
92 vtkInformationVector *outputVector)
override;
97 info->Remove(vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE());
99 vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE(),
"vtkMultiBlockDataSet");
100 info->Append(vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE(),
"vtkDataSet");
111 info->Set(vtkDataObject::DATA_TYPE_NAME(),
"vtkUnstructuredGrid");
121 std::string LabelFieldName{
"RegionId"};
126 std::vector<std::vector<Nodes>> levelTimeNodesMap;
127 std::vector<std::vector<Edges>> levelTimeEdgesTMap;
128 std::vector<std::vector<Edges>> timeLevelEdgesNMap;
Baseclass of all VTK filters that wrap ttk modules.
virtual int RequestData(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
TTK VTK-filter that computes the overlap between labeled vtkPointSets.
int FillInputPortInformation(int port, vtkInformation *info) override
int FillOutputPortInformation(int port, vtkInformation *info) override
static ttkTrackingFromOverlap * New()
TTK trackingFromOverlap processing package that tracks labeled point sets.
int computeNodes(const float *pointCoordinates, const labelType *pointLabels, const size_t nPoints, Nodes &nodes) const
int computeBranches(std::vector< Edges > &timeEdgesMap, std::vector< Nodes > &timeNodesMap) const