TTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
ttkAlgorithm Class Reference

Baseclass of all VTK filters that wrap ttk modules. More...

#include <ttkAlgorithm.h>

Inheritance diagram for ttkAlgorithm:
ttk::Debug ttk::BaseClass ttkArrayEditor ttkArrayPreconditioning ttkBarycentricSubdivision ttkBlockAggregator ttkBottleneckDistance ttkCinemaDarkroomCamera ttkCinemaDarkroomShader ttkCinemaImaging ttkCinemaProductReader ttkCinemaQuery ttkCinemaReader ttkCinemaWriter ttkComponentSize ttkConnectedComponents ttkContinuousScatterPlot ttkContourAroundPoint ttkContourForests ttkContourTreeAlignment ttkDataSetInterpolator ttkDataSetToTable ttkDepthImageBasedGeometryApproximation ttkDimensionReduction ttkDiscreteGradient ttkDistanceField ttkEigenField ttkEndFor ttkExtract ttkFTMTree ttkFTRGraph ttkFiber ttkFiberSurface ttkFlattenMultiBlock ttkGaussianPointCloud ttkGeometrySmoother ttkGhostCellPreconditioning ttkGridLayout ttkHarmonicField ttkHelloWorld ttkIcosphere ttkIdentifierRandomizer ttkIdentifiers ttkIdentifyByScalarField ttkImportEmbeddingFromTable ttkIntegralLines ttkJacobiSet ttkLDistance ttkLDistanceMatrix ttkMandatoryCriticalPoints ttkManifoldCheck ttkMatrixToHeatMap ttkMergeBlockTables ttkMergeTreeClustering ttkMergeTreeDistanceMatrix ttkMergeTreeTemporalReductionDecoding ttkMergeTreeTemporalReductionEncoding ttkMeshGraph ttkMeshSubdivision ttkMetricDistortion ttkMorphologicalOperators ttkMorseSmaleComplex ttkMorseSmaleQuadrangulation ttkPersistenceCurve ttkPersistenceDiagram ttkPersistenceDiagramApproximation ttkPersistenceDiagramClustering ttkPersistenceDiagramDistanceMatrix ttkPersistentGenerators ttkPlanarGraphLayout ttkPointDataConverter ttkPointDataSelector ttkPointMerger ttkPointSetToCurve ttkPointSetToSurface ttkProjectionFromField ttkProjectionFromTable ttkQuadrangulationSubdivision ttkRangePolygon ttkReebSpace ttkRipsComplex ttkScalarFieldCriticalPoints ttkScalarFieldNormalizer ttkScalarFieldSmoother ttkSphereFromPoint ttkStableManifoldPersistence ttkStringArrayConverter ttkSurfaceGeometrySmoother ttkTableDataSelector ttkTableDistanceMatrix ttkTextureMapFromField ttkTopologicalCompression ttkTopologicalCompressionReader ttkTopologicalCompressionWriter ttkTopologicalSimplification ttkTopologicalSimplificationByPersistence ttkTrackingFromFields ttkTrackingFromOverlap ttkTrackingFromPersistenceDiagrams ttkTriangulationManager ttkTriangulationReader ttkTriangulationRequest ttkTriangulationWriter ttkUncertainDataEstimator ttkWebSocketIO

Public Types

typedef vtkAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void UpdateThreadNumber ()
 
void SetThreadNumber (int threadNumber)
 
void SetUseAllCores (bool useAllCores)
 
void SetDebugLevel (int debugLevel)
 
void SetCompactTriangulationCacheSize (float cacheSize)
 
vtkDataArray * GetOptionalArray (const bool &enforceArrayIndex, const int &arrayIndex, const std::string &arrayName, vtkDataSet *const inputData, const int &inputPort=0)
 
vtkDataArray * GetOrderArray (vtkDataSet *const inputData, const int scalarArrayIdx, const int orderArrayIdx=0, const bool enforceOrderArrayIdx=false)
 
ttk::SimplexIdGetIdentifierArrayPtr (const bool &enforceArrayIndex, const int &arrayIndex, const std::string &arrayName, vtkDataSet *const inputData, std::vector< ttk::SimplexId > &spareStorage, const int inputPort=0, const bool printErr=true)
 
ttk::TriangulationGetTriangulation (vtkDataSet *object)
 
int ProcessRequest (vtkInformation *request, vtkInformationVector **inputVectors, vtkInformationVector *outputVector) override
 
vtkDataSet * GetOutput ()
 
vtkDataSet * GetOutput (int)
 
void SetInputData (vtkDataSet *)
 
void SetInputData (int, vtkDataSet *)
 
void AddInputData (vtkDataSet *)
 
void AddInputData (int, vtkDataSet *)
 
- Public Member Functions inherited from ttk::Debug
 Debug ()
 
 ~Debug () override
 
virtual int setDebugLevel (const int &debugLevel)
 
int setWrapper (const Wrapper *wrapper) override
 
int printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
void setDebugMsgPrefix (const std::string &prefix)
 
- Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
 
virtual ~BaseClass ()=default
 
int getThreadNumber () const
 
virtual int setThreadNumber (const int threadNumber)
 

Static Public Member Functions

static ttkAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static ttkAlgorithmSafeDownCast (vtkObject *o)
 
static std::string GetOrderArrayName (vtkDataArray *const array)
 
static vtkInformationIntegerKey * SAME_DATA_TYPE_AS_INPUT_PORT ()
 

Protected Member Functions

 ttkAlgorithm ()
 
 ~ttkAlgorithm () override
 
void MPIPipelinePreconditioning (vtkDataSet *input)
 
void MPITriangulationPreconditioning (ttk::Triangulation *triangulation, vtkDataSet *input)
 
virtual int RequestDataObject (vtkInformation *request, vtkInformationVector **inputVectors, vtkInformationVector *outputVector)
 
virtual int RequestInformation (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateTime (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateTimeDependentInformation (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateExtent (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestDataNotGenerated (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
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
 
- Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
 
int welcomeMsg (std::ostream &stream)
 

Additional Inherited Members

- Protected Attributes inherited from ttk::Debug
int debugLevel_
 
std::string debugMsgPrefix_
 
- Protected Attributes inherited from ttk::BaseClass
bool lastObject_
 
int threadNumber_
 
Wrapperwrapper_
 
- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

Baseclass of all VTK filters that wrap ttk modules.

Author
Jonas Lukasczyk jl@jl.nosp@m.uk.d.nosp@m.e
Date
01.09.2019.

This is an abstract vtkAlgorithm that provides standardized input/output managment for VTK wrappers of ttk filters. The class also provides a static method to retrieve a ttk::Triangulation of a vtkDataSet.

Definition at line 33 of file ttkAlgorithm.h.

Member Typedef Documentation

◆ Superclass

typedef vtkAlgorithm ttkAlgorithm::Superclass

Definition at line 42 of file ttkAlgorithm.h.

Constructor & Destructor Documentation

◆ ttkAlgorithm()

ttkAlgorithm::ttkAlgorithm ( )
protecteddefault

◆ ~ttkAlgorithm()

ttkAlgorithm::~ttkAlgorithm ( )
overrideprotecteddefault

Member Function Documentation

◆ AddInputData() [1/2]

void ttkAlgorithm::AddInputData ( int  index,
vtkDataSet *  input 
)

Definition at line 332 of file ttkAlgorithm.cpp.

◆ AddInputData() [2/2]

void ttkAlgorithm::AddInputData ( vtkDataSet *  input)

Assign a data object as input. Note that this method does not establish a pipeline connection. Use AddInputConnection() to setup a pipeline connection.

Definition at line 328 of file ttkAlgorithm.cpp.

◆ FillInputPortInformation()

int ttkAlgorithm::FillInputPortInformation ( int   ttkNotUsedport,
vtkInformation *  ttkNotUsedinfo 
)
inlineoverrideprotected

This method specifies the required input object data types of the filter by adding the vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE() key to the port information.

This method has to be overridden to specify the required input data types.

Definition at line 333 of file ttkAlgorithm.h.

◆ FillOutputPortInformation()

int ttkAlgorithm::FillOutputPortInformation ( int   ttkNotUsedport,
vtkInformation *  ttkNotUsedinfo 
)
inlineoverrideprotected

This method specifies in the port information the data type of the output objects. It is possible to either explicitly specify a type by adding a vtkDataObject::DATA_TYPE_NAME() key, or to pass a type of an input port to an output port by adding the ttkAlgorithm::SAME_DATA_TYPE_AS_INPUT_PORT() key.

This method has to be overridden to specify the data types of the outputs.

Definition at line 348 of file ttkAlgorithm.h.

◆ GetClassName()

virtual const char * ttkAlgorithm::GetClassName ( )
virtual

Reimplemented in ttkArrayEditor, ttkArrayPreconditioning, ttkBarycentricSubdivision, ttkBlockAggregator, ttkBottleneckDistance, ttkCinemaDarkroomCamera, ttkCinemaDarkroomColorMapping, ttkCinemaDarkroomCompositing, ttkCinemaDarkroomFXAA, ttkCinemaDarkroomIBS, ttkCinemaDarkroomNoise, ttkCinemaDarkroomShader, ttkCinemaDarkroomSSAO, ttkCinemaDarkroomSSDoF, ttkCinemaDarkroomSSSAO, ttkCinemaImaging, ttkCinemaProductReader, ttkCinemaQuery, ttkCinemaReader, ttkCinemaWriter, ttkComponentSize, ttkConnectedComponents, ttkContinuousScatterPlot, ttkContourAroundPoint, ttkContourForests, ttkContourTreeAlignment, ttkDataSetInterpolator, ttkDataSetToTable, ttkDepthImageBasedGeometryApproximation, ttkDimensionReduction, ttkDiscreteGradient, ttkDistanceField, ttkEigenField, ttkEndFor, ttkExtract, ttkFiber, ttkFiberSurface, ttkFlattenMultiBlock, ttkForEach, ttkFTMTree, ttkFTRGraph, ttkGaussianPointCloud, ttkGeometrySmoother, ttkGhostCellPreconditioning, ttkGridLayout, ttkHarmonicField, ttkHelloWorld, ttkIcosphere, ttkIcosphereFromObject, ttkIcospheresFromPoints, ttkIdentifierRandomizer, ttkIdentifiers, ttkIdentifyByScalarField, ttkImportEmbeddingFromTable, ttkIntegralLines, ttkJacobiSet, ttkLDistance, ttkLDistanceMatrix, ttkMandatoryCriticalPoints, ttkManifoldCheck, ttkMatrixToHeatMap, ttkMergeBlockTables, ttkMergeTreeClustering, ttkMergeTreeDistanceMatrix, ttkMergeTreeTemporalReductionDecoding, ttkMergeTreeTemporalReductionEncoding, ttkMeshGraph, ttkMeshSubdivision, ttkMetricDistortion, ttkMorphologicalOperators, ttkMorseSmaleComplex, ttkMorseSmaleQuadrangulation, ttkPersistenceCurve, ttkPersistenceDiagram, ttkPersistenceDiagramApproximation, ttkPersistenceDiagramClustering, ttkPersistenceDiagramDistanceMatrix, ttkPersistentGenerators, ttkPlanarGraphLayout, ttkPointDataConverter, ttkPointDataSelector, ttkPointMerger, ttkPointSetToCurve, ttkPointSetToSurface, ttkProjectionFromField, ttkProjectionFromTable, ttkQuadrangulationSubdivision, ttkRangePolygon, ttkReebSpace, ttkRipsComplex, ttkScalarFieldCriticalPoints, ttkScalarFieldNormalizer, ttkScalarFieldSmoother, ttkSphereFromPoint, ttkStableManifoldPersistence, ttkStringArrayConverter, ttkSurfaceGeometrySmoother, ttkTableDataSelector, ttkTableDistanceMatrix, ttkTextureMapFromField, ttkTopologicalCompression, ttkTopologicalCompressionReader, ttkTopologicalCompressionWriter, ttkTopologicalSimplification, ttkTopologicalSimplificationByPersistence, ttkTrackingFromFields, ttkTrackingFromOverlap, ttkTrackingFromPersistenceDiagrams, ttkTriangulationManager, ttkTriangulationReader, ttkTriangulationRequest, ttkTriangulationWriter, ttkUncertainDataEstimator, and ttkWebSocketIO.

◆ GetIdentifierArrayPtr()

ttk::SimplexId * ttkAlgorithm::GetIdentifierArrayPtr ( const bool &  enforceArrayIndex,
const int &  arrayIndex,
const std::string &  arrayName,
vtkDataSet *const  inputData,
std::vector< ttk::SimplexId > &  spareStorage,
const int  inputPort = 0,
const bool  printErr = true 
)

Retrieve an identifier field and provides a ttk::SimplexId pointer to the underlaying buffer.

Use the same parameters as GetOptionalArray to fetch the VTK data array.

Fills the vector spareStorage if the VTK data array is not a ttkSimplexIdTypeArray. This vector should have a lifetime of a least the filter's RequestData method.

Definition at line 253 of file ttkAlgorithm.cpp.

◆ GetOptionalArray()

vtkDataArray * ttkAlgorithm::GetOptionalArray ( const bool &  enforceArrayIndex,
const int &  arrayIndex,
const std::string &  arrayName,
vtkDataSet *const  inputData,
const int &  inputPort = 0 
)

This method retrieves an optional array to process. The logic of this method is as follows:

  • if enforceArrayIndex is set to true, this method will try to retrieve the optional array to process by its identifier arrayIndex (see GetInputArrayToProcess() and SetInputArrayToProcess())
  • if enforceArrayIndex is set to false, this method will try to retrieve the optional array to process by its name arrayName.

In both cases, this information will be retrieved on port inputPort.

Definition at line 66 of file ttkAlgorithm.cpp.

◆ GetOrderArray()

vtkDataArray * ttkAlgorithm::GetOrderArray ( vtkDataSet *const  inputData,
const int  scalarArrayIdx,
const int  orderArrayIdx = 0,
const bool  enforceOrderArrayIdx = false 
)

Retrieves an offset field from the given scalar field sfArray or generates one, either disambiguated with the implicit vertex identifier field, or with a user-provided offset field through the enforceArrayIndex parameter and the arrayIndex. The generated sorted offset field is then attached to the input vtkDataset inputData.

Definition at line 88 of file ttkAlgorithm.cpp.

◆ GetOrderArrayName()

std::string ttkAlgorithm::GetOrderArrayName ( vtkDataArray *const  array)
static

Returns a string containing the name of the corresponding offset field from a given scalar field

Definition at line 84 of file ttkAlgorithm.cpp.

◆ GetOutput() [1/2]

vtkDataSet * ttkAlgorithm::GetOutput ( )

Get the output data object for a port on this algorithm.

Definition at line 312 of file ttkAlgorithm.cpp.

◆ GetOutput() [2/2]

vtkDataSet * ttkAlgorithm::GetOutput ( int  port)

Definition at line 316 of file ttkAlgorithm.cpp.

◆ GetTriangulation()

ttk::Triangulation * ttkAlgorithm::GetTriangulation ( vtkDataSet *  object)

This method retrieves the ttk::Triangulation of a vtkDataSet.

Note, this method initializes a triangulation if one does not exist already, and updates the triangulation if the connectivity of vtkDataSet changed since the last retrieval.

In the current implementation, a pointer to the triangulation of a vtkDataSet is stored as a special field data array (ttkTriangulationArray) of the vtkDataSet. First, the method checks if such an array exists. If this is not the case, then the method initializes a triangulation for the given vtkDataSet and adds a corresponding ttkTriangulationArray to the vtkDataSet's field data. If the vtkDataSet has such a field data array, then the method performs a fast check to verify that the referenced triangulation is still valid for the given vtkDataSet and updates the triangulation if necessary. Finally, the method returns the triangulation that is referenced by the ttkTriangulationArray.

To pass the triangulation along the pipeline, filters have to perform a shallow or deep copy of an input that already has a triangulation.

Definition at line 38 of file ttkAlgorithm.cpp.

◆ IsA()

virtual int ttkAlgorithm::IsA ( const char *  type)
virtual

Reimplemented in ttkArrayEditor, ttkArrayPreconditioning, ttkBarycentricSubdivision, ttkBlockAggregator, ttkBottleneckDistance, ttkCinemaDarkroomCamera, ttkCinemaDarkroomColorMapping, ttkCinemaDarkroomCompositing, ttkCinemaDarkroomFXAA, ttkCinemaDarkroomIBS, ttkCinemaDarkroomNoise, ttkCinemaDarkroomShader, ttkCinemaDarkroomSSAO, ttkCinemaDarkroomSSDoF, ttkCinemaDarkroomSSSAO, ttkCinemaImaging, ttkCinemaProductReader, ttkCinemaQuery, ttkCinemaReader, ttkCinemaWriter, ttkComponentSize, ttkConnectedComponents, ttkContinuousScatterPlot, ttkContourAroundPoint, ttkContourForests, ttkContourTreeAlignment, ttkDataSetInterpolator, ttkDataSetToTable, ttkDepthImageBasedGeometryApproximation, ttkDimensionReduction, ttkDiscreteGradient, ttkDistanceField, ttkEigenField, ttkEndFor, ttkExtract, ttkFiber, ttkFiberSurface, ttkFlattenMultiBlock, ttkForEach, ttkFTMTree, ttkFTRGraph, ttkGaussianPointCloud, ttkGeometrySmoother, ttkGhostCellPreconditioning, ttkGridLayout, ttkHarmonicField, ttkHelloWorld, ttkIcosphere, ttkIcosphereFromObject, ttkIcospheresFromPoints, ttkIdentifierRandomizer, ttkIdentifiers, ttkIdentifyByScalarField, ttkImportEmbeddingFromTable, ttkIntegralLines, ttkJacobiSet, ttkLDistance, ttkLDistanceMatrix, ttkMandatoryCriticalPoints, ttkManifoldCheck, ttkMatrixToHeatMap, ttkMergeBlockTables, ttkMergeTreeClustering, ttkMergeTreeDistanceMatrix, ttkMergeTreeTemporalReductionDecoding, ttkMergeTreeTemporalReductionEncoding, ttkMeshGraph, ttkMeshSubdivision, ttkMetricDistortion, ttkMorphologicalOperators, ttkMorseSmaleComplex, ttkMorseSmaleQuadrangulation, ttkPersistenceCurve, ttkPersistenceDiagram, ttkPersistenceDiagramApproximation, ttkPersistenceDiagramClustering, ttkPersistenceDiagramDistanceMatrix, ttkPersistentGenerators, ttkPlanarGraphLayout, ttkPointDataConverter, ttkPointDataSelector, ttkPointMerger, ttkPointSetToCurve, ttkPointSetToSurface, ttkProjectionFromField, ttkProjectionFromTable, ttkQuadrangulationSubdivision, ttkRangePolygon, ttkReebSpace, ttkRipsComplex, ttkScalarFieldCriticalPoints, ttkScalarFieldNormalizer, ttkScalarFieldSmoother, ttkSphereFromPoint, ttkStableManifoldPersistence, ttkStringArrayConverter, ttkSurfaceGeometrySmoother, ttkTableDataSelector, ttkTableDistanceMatrix, ttkTextureMapFromField, ttkTopologicalCompression, ttkTopologicalCompressionReader, ttkTopologicalCompressionWriter, ttkTopologicalSimplification, ttkTopologicalSimplificationByPersistence, ttkTrackingFromFields, ttkTrackingFromOverlap, ttkTrackingFromPersistenceDiagrams, ttkTriangulationManager, ttkTriangulationReader, ttkTriangulationRequest, ttkTriangulationWriter, ttkUncertainDataEstimator, and ttkWebSocketIO.

◆ IsTypeOf()

static int ttkAlgorithm::IsTypeOf ( const char *  type)
static

◆ MPIPipelinePreconditioning()

void ttkAlgorithm::MPIPipelinePreconditioning ( vtkDataSet *  input)
protected

This method is called in GetTriangulation, after the triangulation as been created. It verifies that several attributes necessary for MPI computation are present in the pipeline and if not, computes them.

◆ MPITriangulationPreconditioning()

void ttkAlgorithm::MPITriangulationPreconditioning ( ttk::Triangulation triangulation,
vtkDataSet *  input 
)
protected

This method is called in GetTriangulation, after the triangulation as been created. It retrieves several attributes from the pipeline to precondition the triangulation for MPI computation.

◆ New()

static ttkAlgorithm * ttkAlgorithm::New ( )
static

◆ ProcessRequest()

int ttkAlgorithm::ProcessRequest ( vtkInformation *  request,
vtkInformationVector **  inputVectors,
vtkInformationVector *  outputVector 
)
override

This method processes a pipeline request such as vtkDemandDrivenPipeline::REQUEST_DATA or vtkDemandDrivenPipeline::REQUEST_INFORMATION.

It is not recommended to override this method in order to be conform to the VTK/TTK pipeline model.

Definition at line 523 of file ttkAlgorithm.cpp.

◆ RequestData()

virtual int ttkAlgorithm::RequestData ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the seventh pipeline pass in ProcessRequest() to execute an algorithm and update the so far empty output data objects.

This method has to be overridden in order to implement the purpose of the filter.

Definition at line 319 of file ttkAlgorithm.h.

◆ RequestDataNotGenerated()

virtual int ttkAlgorithm::RequestDataNotGenerated ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the sixth pipeline pass in ProcessRequest() to specify which outputs will currently not be generated during a RequestData() call.

In general it should not be necessary to override this method.

Definition at line 305 of file ttkAlgorithm.h.

◆ RequestDataObject()

int ttkAlgorithm::RequestDataObject ( vtkInformation *  request,
vtkInformationVector **  inputVectors,
vtkInformationVector *  outputVector 
)
protectedvirtual

This method is called during the first pipeline pass in ProcessRequest() to create empty output data objects. The data type of the generated outputs is specified in FillOutputPortInfomration().

In general it should not be necessary to override this method.

Definition at line 336 of file ttkAlgorithm.cpp.

◆ RequestInformation()

virtual int ttkAlgorithm::RequestInformation ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the second pipeline pass in ProcessRequest() to provide lightweight information about the outputs without any lengthy computations. For example, the data extend or the number of available time steps.

In general, it should only be necessary to override this method to provide information about new vtkImageData output objects, such as their extend, spacing, and origin.

Definition at line 250 of file ttkAlgorithm.h.

◆ RequestUpdateExtent()

virtual int ttkAlgorithm::RequestUpdateExtent ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the fifth pipeline pass in ProcessRequest() to specify which portion of its input is needed to create the portion of its output that a downstream filter requested.

In general it should not be necessary to override this method unless the filter supports spatial or temporal streaming.

Definition at line 291 of file ttkAlgorithm.h.

◆ RequestUpdateTime()

virtual int ttkAlgorithm::RequestUpdateTime ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the third pipeline pass in ProcessRequest() to update time.

In general it should not be necessary to override this method.

Definition at line 263 of file ttkAlgorithm.h.

◆ RequestUpdateTimeDependentInformation()

virtual int ttkAlgorithm::RequestUpdateTimeDependentInformation ( vtkInformation *  ttkNotUsedrequest,
vtkInformationVector **  ttkNotUsedinputVectors,
vtkInformationVector *  ttkNotUsedoutputVector 
)
inlineprotectedvirtual

This method is called during the fourth pipeline pass in ProcessRequest() to set time dependent information.

In general it should not be necessary to override this method.

Definition at line 275 of file ttkAlgorithm.h.

◆ SafeDownCast()

static ttkAlgorithm * ttkAlgorithm::SafeDownCast ( vtkObject *  o)
static

◆ SAME_DATA_TYPE_AS_INPUT_PORT()

static vtkInformationIntegerKey * ttkAlgorithm::SAME_DATA_TYPE_AS_INPUT_PORT ( )
static

This key can be used during the FillOutputPortInformation() call to specify that an output port should produce the same data type as a certain input port.

◆ SetCompactTriangulationCacheSize()

void ttkAlgorithm::SetCompactTriangulationCacheSize ( float  cacheSize)
inline

Set the cache size of the compact triangulation.

Definition at line 84 of file ttkAlgorithm.h.

◆ SetDebugLevel()

void ttkAlgorithm::SetDebugLevel ( int  debugLevel)
inline

Controls the debug level used by algorithms that are invoked by the VTK wrapper.

Definition at line 76 of file ttkAlgorithm.h.

◆ SetInputData() [1/2]

void ttkAlgorithm::SetInputData ( int  index,
vtkDataSet *  input 
)

Definition at line 324 of file ttkAlgorithm.cpp.

◆ SetInputData() [2/2]

void ttkAlgorithm::SetInputData ( vtkDataSet *  input)

Assign a data object as input. Note that this method does not establish a pipeline connection. Use SetInputConnection() to setup a pipeline connection.

Definition at line 320 of file ttkAlgorithm.cpp.

◆ SetThreadNumber()

void ttkAlgorithm::SetThreadNumber ( int  threadNumber)
inline

Explicitly sets the maximum number of threads for the base code (overriden by UseAllCores member).

Definition at line 59 of file ttkAlgorithm.h.

◆ SetUseAllCores()

void ttkAlgorithm::SetUseAllCores ( bool  useAllCores)
inline

Controls if the base code should use all available cores.

Definition at line 67 of file ttkAlgorithm.h.

◆ UpdateThreadNumber()

void ttkAlgorithm::UpdateThreadNumber ( )
inline

Updates the number of threads of the base class based on the settings of the VTK wrapper.

Definition at line 48 of file ttkAlgorithm.h.


The documentation for this class was generated from the following files: