VTK-m  2.0
Public Member Functions | Static Public Member Functions | Public Attributes | Private Attributes | List of all members
vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType > Class Template Reference

Hierarchical Contour Tree data structure. More...

#include <HierarchicalContourTree.h>

Public Member Functions

VTKM_CONT HierarchicalContourTree ()
 
VTKM_CONT FindRegularByGlobal GetFindRegularByGlobal () const
 routine to create a FindRegularByGlobal object that we can use as an input for worklets to call the function More...
 
VTKM_CONT FindSuperArcForUnknownNode< FieldType > GetFindSuperArcForUnknownNode ()
 routine to create a FindSuperArcForUnknownNode object that we can use as an input for worklets to call the function More...
 
VTKM_CONT FindSuperArcBetweenNodes GetFindSuperArcBetweenNodes () const
 routine to create a FindSuperArcBetweenNodes object that we can use as an input for worklets to call the function More...
 
VTKM_CONT void Initialize (vtkm::Id numRounds, vtkm::worklet::contourtree_augmented::ContourTree &tree, vtkm::worklet::contourtree_augmented::ContourTreeMesh< FieldType > &mesh)
 routine to initialize the hierarchical tree with the top level tree More...
 
VTKM_CONT std::string RegularString (const vtkm::Id regularId) const
 utility routines for the path probes More...
 
VTKM_CONT std::string SuperString (const vtkm::Id superId) const
 utility routine for the path probes More...
 
VTKM_CONT std::string HyperString (const vtkm::Id hyperId) const
 utility routine for the path probes More...
 
VTKM_CONT std::string ProbeHyperPath (const vtkm::Id regularId, const vtkm::Id maxLength=-1) const
 routine to probe a given node and trace it's hyperpath to the root More...
 
VTKM_CONT std::string ProbeSuperPath (const vtkm::Id regularId, const vtkm::Id maxLength=-1) const
 routine to probe a given node and trace it's superpath to the root More...
 
VTKM_CONT std::string PrintDotSuperStructure (const char *label) const
 Outputs the Hierarchical Tree in Dot format for visualization. More...
 
VTKM_CONT std::string PrintTreeStats () const
 Print hierarchical tree construction stats, usually used for logging. More...
 
VTKM_CONT std::string DebugPrint (std::string message, const char *fileName, long lineNum) const
 debug routine More...
 
VTKM_CONT void AddToVTKMDataSet (vtkm::cont::DataSet &ds) const
 

Static Public Member Functions

static VTKM_CONT std::string DumpVolumes (const vtkm::worklet::contourtree_augmented::IdArrayType &supernodes, const vtkm::worklet::contourtree_augmented::IdArrayType &superarcs, const vtkm::worklet::contourtree_augmented::IdArrayType &regularNodeGlobalIds, vtkm::Id totalVolume, const vtkm::worklet::contourtree_augmented::IdArrayType &intrinsicVolume, const vtkm::worklet::contourtree_augmented::IdArrayType &dependentVolume)
 
static VTKM_CONT void ConvertSTLVecOfHandlesToVTKMComponentsAndOffsetsArray (const std::vector< vtkm::worklet::contourtree_augmented::IdArrayType > &inputVec, vtkm::worklet::contourtree_augmented::IdArrayType &outputComponents, vtkm::cont::ArrayHandle< vtkm::Id > &outputOffsets)
 

Public Attributes

vtkm::worklet::contourtree_augmented::IdArrayType RegularNodeGlobalIds
 
vtkm::cont::ArrayHandle< FieldType > DataValues
 
vtkm::worklet::contourtree_augmented::IdArrayType RegularNodeSortOrder
 
vtkm::worklet::contourtree_augmented::IdArrayType Regular2Supernode
 
vtkm::worklet::contourtree_augmented::IdArrayType Superparents
 
vtkm::worklet::contourtree_augmented::IdArrayType Supernodes
 
vtkm::worklet::contourtree_augmented::IdArrayType Superarcs
 
vtkm::worklet::contourtree_augmented::IdArrayType Hyperparents
 
vtkm::worklet::contourtree_augmented::IdArrayType Super2Hypernode
 
vtkm::worklet::contourtree_augmented::IdArrayType WhichRound
 
vtkm::worklet::contourtree_augmented::IdArrayType WhichIteration
 
vtkm::worklet::contourtree_augmented::IdArrayType Hypernodes
 
vtkm::worklet::contourtree_augmented::IdArrayType Hyperarcs
 
vtkm::worklet::contourtree_augmented::IdArrayType Superchildren
 
vtkm::Id NumRounds
 
vtkm::worklet::contourtree_augmented::IdArrayType NumRegularNodesInRound
 arrays holding the logical size of the arrays at each level More...
 
vtkm::worklet::contourtree_augmented::IdArrayType NumSupernodesInRound
 
vtkm::worklet::contourtree_augmented::IdArrayType NumHypernodesInRound
 
vtkm::worklet::contourtree_augmented::IdArrayType NumIterations
 how many iterations needed for the hypersweep at each level More...
 
std::vector< vtkm::worklet::contourtree_augmented::IdArrayTypeFirstSupernodePerIteration
 vectors tracking the segments used in each iteration of the hypersweep More...
 
std::vector< vtkm::worklet::contourtree_augmented::IdArrayTypeFirstHypernodePerIteration
 

Private Attributes

vtkm::cont::Invoker Invoke
 Used internally to Invoke worklets. More...
 

Detailed Description

template<typename FieldType>
class vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >

Hierarchical Contour Tree data structure.

This class contains all the structures to construct/store the HierarchicalContourTree. Functions used on the Device are then implemented in the HierarchicalContourTreeDeviceData class which stores the prepared array portals we need for those functions.

Constructor & Destructor Documentation

◆ HierarchicalContourTree()

Member Function Documentation

◆ AddToVTKMDataSet()

template<typename FieldType >
void vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::AddToVTKMDataSet ( vtkm::cont::DataSet ds) const

◆ ConvertSTLVecOfHandlesToVTKMComponentsAndOffsetsArray()

template<typename FieldType >
void vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::ConvertSTLVecOfHandlesToVTKMComponentsAndOffsetsArray ( const std::vector< vtkm::worklet::contourtree_augmented::IdArrayType > &  inputVec,
vtkm::worklet::contourtree_augmented::IdArrayType outputComponents,
vtkm::cont::ArrayHandle< vtkm::Id > &  outputOffsets 
)
static

◆ DebugPrint()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::DebugPrint ( std::string  message,
const char *  fileName,
long  lineNum 
) const

debug routine

◆ DumpVolumes()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::DumpVolumes ( const vtkm::worklet::contourtree_augmented::IdArrayType supernodes,
const vtkm::worklet::contourtree_augmented::IdArrayType superarcs,
const vtkm::worklet::contourtree_augmented::IdArrayType regularNodeGlobalIds,
vtkm::Id  totalVolume,
const vtkm::worklet::contourtree_augmented::IdArrayType intrinsicVolume,
const vtkm::worklet::contourtree_augmented::IdArrayType dependentVolume 
)
static

◆ GetFindRegularByGlobal()

template<typename FieldType >
VTKM_CONT FindRegularByGlobal vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::GetFindRegularByGlobal ( ) const
inline

routine to create a FindRegularByGlobal object that we can use as an input for worklets to call the function

◆ GetFindSuperArcBetweenNodes()

template<typename FieldType >
VTKM_CONT FindSuperArcBetweenNodes vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::GetFindSuperArcBetweenNodes ( ) const
inline

routine to create a FindSuperArcBetweenNodes object that we can use as an input for worklets to call the function

◆ GetFindSuperArcForUnknownNode()

template<typename FieldType >
VTKM_CONT FindSuperArcForUnknownNode<FieldType> vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::GetFindSuperArcForUnknownNode ( )
inline

routine to create a FindSuperArcForUnknownNode object that we can use as an input for worklets to call the function

◆ HyperString()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::HyperString ( const vtkm::Id  hyperId) const

utility routine for the path probes

◆ Initialize()

template<typename FieldType >
void vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::Initialize ( vtkm::Id  numRounds,
vtkm::worklet::contourtree_augmented::ContourTree tree,
vtkm::worklet::contourtree_augmented::ContourTreeMesh< FieldType > &  mesh 
)

routine to initialize the hierarchical tree with the top level tree

◆ PrintDotSuperStructure()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::PrintDotSuperStructure ( const char *  label) const

Outputs the Hierarchical Tree in Dot format for visualization.

◆ PrintTreeStats()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::PrintTreeStats

Print hierarchical tree construction stats, usually used for logging.

◆ ProbeHyperPath()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::ProbeHyperPath ( const vtkm::Id  regularId,
const vtkm::Id  maxLength = -1 
) const

routine to probe a given node and trace it's hyperpath to the root

◆ ProbeSuperPath()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::ProbeSuperPath ( const vtkm::Id  regularId,
const vtkm::Id  maxLength = -1 
) const

routine to probe a given node and trace it's superpath to the root

◆ RegularString()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::RegularString ( const vtkm::Id  regularId) const

utility routines for the path probes

utility routine for the path probes

◆ SuperString()

template<typename FieldType >
std::string vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::SuperString ( const vtkm::Id  superId) const

utility routine for the path probes

Member Data Documentation

◆ DataValues

template<typename FieldType >
vtkm::cont::ArrayHandle<FieldType> vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::DataValues

◆ FirstHypernodePerIteration

template<typename FieldType >
std::vector<vtkm::worklet::contourtree_augmented::IdArrayType> vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::FirstHypernodePerIteration

◆ FirstSupernodePerIteration

template<typename FieldType >
std::vector<vtkm::worklet::contourtree_augmented::IdArrayType> vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::FirstSupernodePerIteration

vectors tracking the segments used in each iteration of the hypersweep

◆ Hyperarcs

◆ Hypernodes

◆ Hyperparents

◆ Invoke

template<typename FieldType >
vtkm::cont::Invoker vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::Invoke
private

Used internally to Invoke worklets.

◆ NumHypernodesInRound

◆ NumIterations

how many iterations needed for the hypersweep at each level

◆ NumRegularNodesInRound

arrays holding the logical size of the arrays at each level

◆ NumRounds

template<typename FieldType >
vtkm::Id vtkm::worklet::contourtree_distributed::HierarchicalContourTree< FieldType >::NumRounds

◆ NumSupernodesInRound

◆ Regular2Supernode

◆ RegularNodeGlobalIds

◆ RegularNodeSortOrder

◆ Super2Hypernode

◆ Superarcs

◆ Superchildren

◆ Supernodes

◆ Superparents

◆ WhichIteration

◆ WhichRound


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