26#include <vtkInformation.h>
27#include <vtkInformationVector.h>
30#include <ttkPersistenceDiagramDistanceMatrixModule.h>
36class TTKPERSISTENCEDIAGRAMDISTANCEMATRIX_EXPORT
47 Wasserstein = (data ==
"inf") ? -1 : stoi(data);
51 return Wasserstein == -1 ?
"inf" : std::to_string(Wasserstein);
56 if(data > 0 && data <= 1) {
65 vtkGetMacro(Alpha,
double);
67 vtkSetMacro(DeltaLim,
double);
68 vtkGetMacro(DeltaLim,
double);
70 vtkSetMacro(Lambda,
double);
71 vtkGetMacro(Lambda,
double);
76 this->
setDos(
true,
false,
false);
79 this->
setDos(
false,
true,
false);
82 this->
setDos(
false,
false,
true);
85 this->
setDos(
true,
true,
true);
91 if(do_min_ && do_sad_ && do_max_) {
108 switch(this->Constraint) {
123 vtkSetMacro(MaxNumberOfPairs,
unsigned int);
124 vtkGetMacro(MaxNumberOfPairs,
unsigned int);
126 vtkSetMacro(MinPersistence,
double);
127 vtkGetMacro(MinPersistence,
double);
137 vtkInformationVector **inputVector,
138 vtkInformationVector *outputVector)
override;
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 processing package for the computation of a matrix of Wasserstein distances between persistence d...
void SetPairType(const int data)
void SetConstraint(const int arg_)
std::string GetWassersteinMetric()
~ttkPersistenceDiagramDistanceMatrix() override=default
void SetAntiAlpha(double data)
void SetWassersteinMetric(const std::string &data)
static ttkPersistenceDiagramDistanceMatrix * New()
void setConstraint(const int data)
@ RELATIVE_PERSISTENCE_GLOBAL
@ RELATIVE_PERSISTENCE_PER_DIAG
void setDos(const bool min, const bool sad, const bool max)