| 
    VTK-m
    2.0
    
   | 
 
Graft the InteriorForest (i.e., the residue of a BRACT) onto a hierarchical tree. More...
#include <TreeGrafter.h>
Public Member Functions | |
| TreeGrafter (MeshType *mesh, vtkm::worklet::contourtree_augmented::ContourTree &contourTree, vtkm::worklet::contourtree_distributed::InteriorForest *interiorForest) | |
| constructor  More... | |
| template<typename StorageTag > | |
| void | GraftInteriorForests (vtkm::Id theRound, vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, const vtkm::cont::ArrayHandle< FieldType, StorageTag > &meshDataValues, const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler *localToGlobalIdRelabeler=nullptr) | 
| routine to graft the InteriorForest residue from the BoundaryTree computation into the tree.  More... | |
| template<typename StorageTag > | |
| void | GetHierarchicalIds (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, const vtkm::cont::ArrayHandle< FieldType, StorageTag > &meshDataValues, const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler *localToGlobalIdRelabeler=nullptr) | 
| Routine to convert supernode IDs from global to IDs in the existing hierarchical tree.  More... | |
| void | InitializeActiveSuperarcs () | 
| sets up an active superarc set  More... | |
| void | FindCriticalPoints () | 
| find the critical points in what's left  More... | |
| void | CollapseRegularChains () | 
| pointer-double to collapse chains  More... | |
| void | IdentifyLeafHyperarcs () | 
| routine to identify one iteration worth of leaves  More... | |
| void | CompressActiveArrays () | 
| void | ListNewHypernodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree) | 
| Makes a list of new hypernodes, and maps their old IDs to their new ones.  More... | |
| void | ListNewSupernodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree) | 
| Makes a list of new supernodes, and maps their old IDs to their new ones.  More... | |
| void | ListNewNodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler *localToGlobalIdRelabeler=nullptr) | 
| Makes a list of new nodes, and maps their old IDs to their new ones.  More... | |
| void | CopyNewHypernodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree) | 
| Copies in the hypernodes, now that we have correct super IDs.  More... | |
| void | CopyNewSupernodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, vtkm::Id theRound) | 
| Copies in the supernodes, now that we have correct regular IDs.  More... | |
| template<typename StorageTag > | |
| void | CopyNewNodes (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, const vtkm::cont::ArrayHandle< FieldType, StorageTag > &meshDataValues, const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler *localToGlobalIdRelabeler=nullptr) | 
| Copies the regular nodes in, setting all arrays except superparents Must be called LAST since it depends on the hypernodes & supernodes that have just been added in order to resolve the superparents.  More... | |
| void | CopyIterationDetails (vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > &hierarchicalTree, vtkm::Id theRound) | 
| Transfers the details of nodes used in each iteration.  More... | |
| std::string | DebugPrint (const char *message, const char *fileName, long lineNum) | 
| prints the contents of the object in a standard format  More... | |
Private Attributes | |
| vtkm::cont::Invoker | Invoke | 
| Used internally to Invoke worklets.  More... | |
Graft the InteriorForest (i.e., the residue of a BRACT) onto a hierarchical tree.
      
  | 
  inline | 
constructor
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CollapseRegularChains | 
pointer-double to collapse chains
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CompressActiveArrays | 
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CopyIterationDetails | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | 
| vtkm::Id | theRound | ||
| ) | 
Transfers the details of nodes used in each iteration.
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CopyNewHypernodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree | ) | 
Copies in the hypernodes, now that we have correct super IDs.
Copies in the hypernodes, now that we have correct super IDs Side effe cts.
This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CopyNewNodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | 
| const vtkm::cont::ArrayHandle< FieldType, StorageTag > & | meshDataValues, | ||
| const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler * | localToGlobalIdRelabeler = nullptr  | 
        ||
| ) | 
Copies the regular nodes in, setting all arrays except superparents Must be called LAST since it depends on the hypernodes & supernodes that have just been added in order to resolve the superparents.
| [in] | hierarchicalTree | Reference to the hierarchical tree | 
| [in] | meshDataValues | Data values associated with the mesh. This is mesh.SortedValues in the case of a ContourTreeMesh and the original data values in the case of a Mesh_DEM_Triangulation mesh. | 
| [in] | localToGlobalIdRelabeler | IdRelabeler for the mesh needed to call this->Mesh->GetGlobalIdsFromMeshIndices(...) and this->Mesh->GetGlobalIdsFroSortIndices(...) If this->Mesh is a ContourTreeMesh then the IdRelabeler is not needed and we can simply set it to a nullptr. | 
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::CopyNewSupernodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | 
| vtkm::Id | theRound | ||
| ) | 
Copies in the supernodes, now that we have correct regular IDs.
Copies in the supernodes, now that we have correct regular IDs Side effe cts.
This function updates:
      
  | 
  inline | 
prints the contents of the object in a standard format
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::FindCriticalPoints | 
find the critical points in what's left
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::GetHierarchicalIds | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | 
| const vtkm::cont::ArrayHandle< FieldType, StorageTag > & | meshDataValues, | ||
| const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler * | localToGlobalIdRelabeler = nullptr  | 
        ||
| ) | 
Routine to convert supernode IDs from global to IDs in the existing hierarchical tree.
routine to convert supernode IDs from global to IDs in the existing hierarchical tree Side effects: This function updates:
| [in] | hierarchicalTree | Reference to the hierarchical tree | 
| [in] | meshDataValues | Data values associated with the mesh. This is mesh.SortedValues in the case of a ContourTreeMesh and the original data values in the case of a Mesh_DEM_Triangulation mesh. | 
| [in] | localToGlobalIdRelabeler | IdRelabeler for the mesh needed to call this->Mesh->GetGlobalIdsFromMeshIndices(...) and this->Mesh->GetGlobalIdsFroSortIndices(...) If this->Mesh is a ContourTreeMesh then the IdRelabeler is not needed and we can simply set it to a nullptr. | 
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::GraftInteriorForests | ( | vtkm::Id | theRound, | 
| vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | ||
| const vtkm::cont::ArrayHandle< FieldType, StorageTag > & | meshDataValues, | ||
| const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler * | localToGlobalIdRelabeler = nullptr  | 
        ||
| ) | 
routine to graft the InteriorForest residue from the BoundaryTree computation into the tree.
Previously called GraftResidue
| [in] | theRound | The reducting round we are in | 
| [in] | hierarchicalTree | Reference to the hierarchical tree | 
| [in] | meshDataValues | Data values associated with the mesh. This is mesh.SortedValues in the case of a ContourTreeMesh and the original data values in the case of a Mesh_DEM_Triangulation mesh. Needed for GetHierarchicalIds. | 
| [in] | localToGlobalIdRelabeler | IdRelabeler for the mesh needed to call this->Mesh->GetGlobalIdsFromMeshIndices(...) and this->Mesh->GetGlobalIdsFroSortIndices(...) If this->Mesh is a ContourTreeMesh then the IdRelabeler is not needed and we can simply set it to a nullptr. Needed for GetHierarchicalIds. (default=nullptr). | 
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::IdentifyLeafHyperarcs | 
routine to identify one iteration worth of leaves
Side effects. This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::InitializeActiveSuperarcs | 
sets up an active superarc set
sets up an active superarc set Side effects.
This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::ListNewHypernodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree | ) | 
Makes a list of new hypernodes, and maps their old IDs to their new ones.
Makes a list of new hypernodes, and maps their old IDs to their new ones Side effects.
This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::ListNewNodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree, | 
| const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler * | localToGlobalIdRelabeler = nullptr  | 
        ||
| ) | 
Makes a list of new nodes, and maps their old IDs to their new ones.
Makes a list of new nodes, and maps their old IDs to their new ones Side effe cts.
| [in] | hierarchicalTree | Reference to the hierarchical tree | 
| [in] | localToGlobalIdRelabeler | IdRelabeler for the mesh needed to call this->Mesh->GetGlobalIdsFromMeshIndices(...) and this->Mesh->GetGlobalIdsFroSortIndices(...) If this->Mesh is a ContourTreeMesh then the IdRelabeler is not needed and we can simply set it to a nullptr. | 
This function updates:
| void vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::ListNewSupernodes | ( | vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > & | hierarchicalTree | ) | 
Makes a list of new supernodes, and maps their old IDs to their new ones.
Makes a list of new supernodes, and maps their old IDs to their new ones Side effects.
This function updates:
| vtkm::worklet::contourtree_augmented::EdgePairArray vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::ActiveSuperarcs | 
| vtkm::worklet::contourtree_augmented::ContourTree& vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::ContourTree | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::DownNeighbour | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalHyperarc | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalHyperId | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalHyperparent | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalRegularId | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalSuperId | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalSuperparent | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::HierarchicalTreeId | 
| vtkm::worklet::contourtree_distributed::InteriorForest* vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::InteriorForest | 
      
  | 
  private | 
Used internally to Invoke worklets.
| MeshType* vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::Mesh | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::NewHypernodes | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::NewNodes | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::NewSupernodeId | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::NewSupernodes | 
| vtkm::Id vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::NumTransferIterations | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::SupernodeType | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::UpNeighbour | 
| vtkm::worklet::contourtree_augmented::IdArrayType vtkm::worklet::contourtree_distributed::TreeGrafter< MeshType, FieldType >::WhenTransferred | 
 1.8.17