Go to the documentation of this file.
53 #ifndef vtk_m_worklet_contourtree_augmented_meshextrema_h
54 #define vtk_m_worklet_contourtree_augmented_meshextrema_h
76 namespace contourtree_augmented
94 template <
class MeshType>
95 void SetStarts(MeshType& mesh,
bool isMaximal);
103 void DebugPrint(
const char* message,
const char* fileName,
long lineNum);
111 , NumVertices(meshSize)
143 this->
Invoke(pointerDoubler,
147 DebugPrint(
"Regular Chains Built", __FILE__, __LINE__);
150 template <
class MeshType>
153 mesh.SetPrepareForExecutionBehavior(isMaximal);
158 this->
Invoke(setStartsWorklet,
165 this->
Invoke(setStartsWorklet,
170 DebugPrint(
"Regular Starts Set", __FILE__, __LINE__);
178 std::cout <<
"---------------------------" << std::endl;
179 std::cout << std::setw(30) << std::left << fileName <<
":" << std::right << std::setw(4)
180 << lineNum << std::endl;
181 std::cout << std::left << std::string(message) << std::endl;
182 std::cout <<
"Mesh Extrema Contain: " << std::endl;
183 std::cout <<
"---------------------------" << std::endl;
184 std::cout << std::endl;
VTKM_CONT vtkm::Id GetNumberOfValues() const
Returns the number of entries in the array.
Definition: ArrayHandle.h:448
VTKM_CONT MeshExtrema(vtkm::Id meshSize)
Definition: MeshExtrema.h:108
VTKM_CONT void BuildRegularChains(bool isMaximal)
Definition: MeshExtrema.h:129
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::cont::Invoker Invoke
Definition: MeshExtrema.h:82
VTKM_CONT void Allocate(vtkm::Id numberOfValues, vtkm::CopyFlag preserve, vtkm::cont::Token &token) const
Allocates an array large enough to hold the given number of values.
Definition: ArrayHandle.h:465
Definition: meshextrema/PointerDoubling.h:65
void SetStarts(MeshType &mesh, bool isMaximal)
Definition: MeshExtrema.h:151
IdArrayType Pits
Definition: MeshExtrema.h:85
Definition: MeshExtrema.h:79
static VTKM_CONT bool Copy(vtkm::cont::DeviceAdapterId devId, const vtkm::cont::ArrayHandle< T, CIn > &input, vtkm::cont::ArrayHandle< U, COut > &output)
Definition: Algorithm.h:410
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
Definition: meshextrema/PointerDoubling.h:73
Allows launching any worklet without a dispatcher.
Definition: Invoker.h:41
#define VTKM_CONT
Definition: ExportMacros.h:57
An array handle with a constant value.
Definition: ArrayHandleConstant.h:63
vtkm::Id NumLogSteps
Definition: MeshExtrema.h:87
Definition: SetStarts.h:69
VTKM_CONT void DebugPrint(const char *message, const char *fileName, long lineNum)
Definition: MeshExtrema.h:175
void PrintIndices(std::string label, const vtkm::cont::ArrayHandle< T > &iVec, vtkm::Id nIndices=-1, std::ostream &outStream=std::cout)
Definition: augmented/PrintVectors.h:253
void PrintHeader(vtkm::Id howMany, std::ostream &outStream=std::cout)
Definition: augmented/PrintVectors.h:151
vtkm::Id NumVertices
Definition: MeshExtrema.h:86
IdArrayType Peaks
Definition: MeshExtrema.h:84
An implicit array handle containing the its own indices.
Definition: ArrayHandleIndex.h:54