|
bool | CanThread () const override |
| Returns whether the filter can execute on partitions in concurrent threads. More...
|
|
| ContourTreeUniformDistributed (vtkm::cont::LogLevel timingsLogLevel=vtkm::cont::LogLevel::Perf, vtkm::cont::LogLevel treeLogLevel=vtkm::cont::LogLevel::Info) |
|
void | SetUseBoundaryExtremaOnly (bool useBoundaryExtremaOnly) |
|
bool | GetUseBoundaryExtremaOnly () |
|
void | SetUseMarchingCubes (bool useMarchingCubes) |
|
bool | GetUseMarchingCubes () |
|
void | SetAugmentHierarchicalTree (bool augmentHierarchicalTree) |
|
void | SetBlockIndices (vtkm::Id3 blocksPerDim, const vtkm::cont::ArrayHandle< vtkm::Id3 > &localBlockIndices) |
|
bool | GetAugmentHierarchicalTree () |
|
void | SetSaveDotFiles (bool saveDotFiles) |
|
bool | GetSaveDotFiles () |
|
template<typename T , typename StorageType > |
void | ComputeLocalTree (const vtkm::Id blockIndex, const vtkm::cont::DataSet &input, const vtkm::cont::ArrayHandle< T, StorageType > &fieldArray) |
|
template<typename T , typename StorageType , typename MeshType , typename MeshBoundaryExecType > |
void | ComputeLocalTreeImpl (const vtkm::Id blockIndex, const vtkm::cont::DataSet &input, const vtkm::cont::ArrayHandle< T, StorageType > &field, MeshType &mesh, MeshBoundaryExecType &meshBoundaryExecObject) |
| Implement per block contour tree computation after the MeshType has been discovered. More...
|
|
| Filter () |
|
virtual | ~Filter () |
|
vtkm::cont::DataSet | Execute (const vtkm::cont::DataSet &input) |
| Executes the filter on the input and produces a result dataset. More...
|
|
vtkm::cont::PartitionedDataSet | Execute (const vtkm::cont::PartitionedDataSet &input) |
| Executes the filter on the input PartitionedDataSet and produces a result PartitionedDataSet. More...
|
|
void | SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass) |
| Specify which fields get passed from input to output. More...
|
|
void | SetFieldsToPass (vtkm::filter::FieldSelection &&fieldsToPass) |
| Specify which fields get passed from input to output. More...
|
|
void | SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass, vtkm::filter::FieldSelection::Mode mode) |
|
void | SetFieldsToPass (std::initializer_list< std::string > fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
| Specify which fields get passed from input to output. More...
|
|
void | SetFieldsToPass (std::initializer_list< std::pair< std::string, vtkm::cont::Field::Association >> fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
| Specify which fields get passed from input to output. More...
|
|
void | SetFieldsToPass (const std::string &fieldname, vtkm::cont::Field::Association association, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
| Specify which fields get passed from input to output. More...
|
|
void | SetFieldsToPass (const std::string &fieldname, vtkm::filter::FieldSelection::Mode mode) |
| Specify which fields get passed from input to output. More...
|
|
const vtkm::filter::FieldSelection & | GetFieldsToPass () const |
| Specify which fields get passed from input to output. More...
|
|
vtkm::filter::FieldSelection & | GetFieldsToPass () |
| Specify which fields get passed from input to output. More...
|
|
void | SetPassCoordinateSystems (bool flag) |
| Specify whether to always pass coordinate systems. More...
|
|
bool | GetPassCoordinateSystems () const |
| Specify whether to always pass coordinate systems. More...
|
|
void | SetOutputFieldName (const std::string &name) |
| Specifies the name of the output field generated. More...
|
|
const std::string & | GetOutputFieldName () const |
| Specifies the name of the output field generated. More...
|
|
void | SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any) |
| Specifies a field to operate on. More...
|
|
void | SetActiveField (vtkm::IdComponent index, const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any) |
| Specifies a field to operate on. More...
|
|
const std::string & | GetActiveFieldName (vtkm::IdComponent index=0) const |
| Specifies a field to operate on. More...
|
|
vtkm::cont::Field::Association | GetActiveFieldAssociation (vtkm::IdComponent index=0) const |
| Specifies a field to operate on. More...
|
|
void | SetActiveCoordinateSystem (vtkm::Id coord_idx) |
| Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More...
|
|
void | SetActiveCoordinateSystem (vtkm::IdComponent index, vtkm::Id coord_idx) |
| Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More...
|
|
vtkm::Id | GetActiveCoordinateSystemIndex (vtkm::IdComponent index=0) const |
| Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More...
|
|
void | SetUseCoordinateSystemAsField (bool val) |
| Specifies whether to use point coordinates as the input field. More...
|
|
void | SetUseCoordinateSystemAsField (vtkm::IdComponent index, bool val) |
| Specifies whether to use point coordinates as the input field. More...
|
|
bool | GetUseCoordinateSystemAsField (vtkm::IdComponent index=0) const |
| Specifies whether to use point coordinates as the input field. More...
|
|
vtkm::IdComponent | GetNumberOfActiveFields () const |
| Return the number of active fields currently set. More...
|
|
void | SetThreadsPerCPU (vtkm::Id numThreads) |
|
void | SetThreadsPerGPU (vtkm::Id numThreads) |
|
vtkm::Id | GetThreadsPerCPU () const |
|
vtkm::Id | GetThreadsPerGPU () const |
|
bool | GetRunMultiThreadedFilter () const |
|
void | SetRunMultiThreadedFilter (bool val) |
|
void | SetInvoker (vtkm::cont::Invoker inv) |
| Specify the vtkm::cont::Invoker to be used to execute worklets by this filter instance. More...
|
|
|
vtkm::cont::DataSet | CreateResult (const vtkm::cont::DataSet &inDataSet) const |
| Create the output data set for DoExecute . More...
|
|
vtkm::cont::DataSet | CreateResultField (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::Field &resultField) const |
| Create the output data set for DoExecute More...
|
|
vtkm::cont::DataSet | CreateResultField (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, vtkm::cont::Field::Association resultFieldAssociation, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
| Create the output data set for DoExecute More...
|
|
vtkm::cont::DataSet | CreateResultFieldPoint (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
| Create the output data set for DoExecute More...
|
|
vtkm::cont::DataSet | CreateResultFieldCell (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
| Create the output data set for DoExecute More...
|
|
vtkm::cont::PartitionedDataSet | CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions) const |
| Create the output data set for DoExecute . More...
|
|
template<typename FieldMapper > |
vtkm::cont::PartitionedDataSet | CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions, FieldMapper &&fieldMapper) const |
| Create the output data set for DoExecute . More...
|
|
template<typename FieldMapper > |
vtkm::cont::DataSet | CreateResult (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, FieldMapper &&fieldMapper) const |
| Create the output data set for DoExecute . More...
|
|
template<typename FieldMapper > |
vtkm::cont::DataSet | CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const vtkm::cont::CoordinateSystem &resultCoordSystem, FieldMapper &&fieldMapper) const |
| Create the output data set for DoExecute . More...
|
|
template<typename FieldMapper > |
vtkm::cont::DataSet | CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const std::string &coordsName, const vtkm::cont::UnknownArrayHandle &coordsData, FieldMapper &&fieldMapper) const |
| Create the output data set for DoExecute . More...
|
|
const vtkm::cont::Field & | GetFieldFromDataSet (const vtkm::cont::DataSet &input) const |
| Retrieve an input field from a vtkm::cont::DataSet object. More...
|
|
const vtkm::cont::Field & | GetFieldFromDataSet (vtkm::IdComponent index, const vtkm::cont::DataSet &input) const |
| Retrieve an input field from a vtkm::cont::DataSet object. More...
|
|
template<typename Functor , typename... Args> |
void | CastAndCallScalarField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
| Convenience method to get the array from a filter's input scalar field. More...
|
|
template<typename Functor , typename... Args> |
void | CastAndCallScalarField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
| Convenience method to get the array from a filter's input scalar field. More...
|
|
template<vtkm::IdComponent VecSize, typename Functor , typename... Args> |
void | CastAndCallVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
| Convenience method to get the array from a filter's input vector field. More...
|
|
template<vtkm::IdComponent VecSize, typename Functor , typename... Args> |
void | CastAndCallVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
| Convenience method to get the array from a filter's input vector field. More...
|
|
template<typename Functor , typename... Args> |
void | CastAndCallVariableVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
| This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
|
|
template<typename Functor , typename... Args> |
void | CastAndCallVariableVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
| This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More...
|
|
vtkm::cont::Invoker | Invoke |
|
Construct the Contour Tree for a 2D or 3D regular mesh.
This filter implements the parallel peak pruning algorithm. In contrast to the ContourTreeUniform filter, this filter is optimized to allow for the computation of the augmented contour tree, i.e., the contour tree including all regular mesh vertices. Augmentation with regular vertices is used in practice to compute statistics (e.g., volume), to segment the input mesh, facilitate iso-value selection, enable localization of all verticies of a mesh in the tree among others.
In addition to single-block computation, the filter also supports multi-block regular grids. The blocks are processed in parallel using DIY and then the tree are merged progressively using a binary-reduction scheme to compute the final contour tree. I.e., in the multi-block context, the final tree is constructed on rank 0.