diff --git a/vtkm/cont/testing/Testing.h b/vtkm/cont/testing/Testing.h index 9d3d0445a..39484b416 100644 --- a/vtkm/cont/testing/Testing.h +++ b/vtkm/cont/testing/Testing.h @@ -51,6 +51,11 @@ public: << error.GetMessage() << std::endl; return 1; } + catch (std::exception error) + { + std::cout << "***** STL exception throw." << std::endl + << error.what() << std::endl; + } catch (...) { std::cout << "***** Unidentified exception thrown." << std::endl; diff --git a/vtkm/testing/Testing.h b/vtkm/testing/Testing.h index f354bed96..628bb119a 100644 --- a/vtkm/testing/Testing.h +++ b/vtkm/testing/Testing.h @@ -31,6 +31,7 @@ VTKM_THIRDPARTY_PRE_INCLUDE #include VTKM_THIRDPARTY_POST_INCLUDE +#include #include #include #include @@ -253,6 +254,11 @@ public: << error.GetMessage() << std::endl; return 1; } + catch (std::exception error) + { + std::cout << "***** STL exception throw." << std::endl + << error.what() << std::endl; + } catch (...) { std::cout << "***** Unidentified exception thrown." << std::endl; diff --git a/vtkm/worklet/Clip.h b/vtkm/worklet/Clip.h index da3102b91..230ba29bd 100644 --- a/vtkm/worklet/Clip.h +++ b/vtkm/worklet/Clip.h @@ -253,11 +253,13 @@ public: { } - template + template VTKM_EXEC_EXPORT void operator()(const ScalarsVecType &scalars, - vtkm::Id shape, vtkm::Id count, - vtkm::Id& clipTableIdx, ClipStats& stats) const + CellShapeTag shape, + vtkm::Id count, + vtkm::Id& clipTableIdx, + ClipStats& stats) const { const vtkm::Id mask[] = { 1, 2, 4, 8, 16, 32, 64, 128 }; @@ -268,7 +270,7 @@ public: mask[i] : 0; } - vtkm::Id idx = this->ClipTables.GetCaseIndex(shape, caseId); + vtkm::Id idx = this->ClipTables.GetCaseIndex(shape.Id, caseId); clipTableIdx = idx; vtkm::Id numberOfCells = this->ClipTables.ValueAt(idx++); @@ -315,10 +317,13 @@ public: { } - template + template VTKM_EXEC_EXPORT void operator()( - vtkm::Id shape, + CellShapeTag shape, const ScalarsVecType &scalars, const IndicesVecType &indices, vtkm::Id clipTableIdx, @@ -358,7 +363,7 @@ public: else // edge, new point to be generated by cutting the egde { vtkm::Vec edge = - this->ClipTables.GetEdge(shape, entry); + this->ClipTables.GetEdge(shape.Id, entry); EdgeInterpolation ei; ei.Vertex1 = indices[edge[0]]; diff --git a/vtkm/worklet/ExternalFaces.h b/vtkm/worklet/ExternalFaces.h index 8bd086732..a15419797 100644 --- a/vtkm/worklet/ExternalFaces.h +++ b/vtkm/worklet/ExternalFaces.h @@ -20,8 +20,8 @@ #ifndef vtk_m_worklet_ExternalFaces_h #define vtk_m_worklet_ExternalFaces_h +#include #include -#include #include #include @@ -155,10 +155,10 @@ struct ExternalFaces VTKM_EXEC_EXPORT T operator()(const T &cellType) const { - if (cellType == vtkm::VTKM_TETRA) return 4; - else if (cellType == vtkm::VTKM_PYRAMID) return 5; - else if (cellType == vtkm::VTKM_WEDGE) return 5; - else if (cellType == vtkm::VTKM_HEXAHEDRON) return 6; + if (cellType == vtkm::CELL_SHAPE_TETRA) return 4; + else if (cellType == vtkm::CELL_SHAPE_PYRAMID) return 5; + else if (cellType == vtkm::CELL_SHAPE_WEDGE) return 5; + else if (cellType == vtkm::CELL_SHAPE_HEXAHEDRON) return 6; else return -1; } }; @@ -176,16 +176,19 @@ struct ExternalFaces typedef _2 InputDomain; VTKM_CONT_EXPORT - GetFace() { }; + GetFace() { } - template + template VTKM_EXEC_EXPORT void operator()(const T &cellFaceId, FaceValueVecType &faceVertices, - const vtkm::Id &cellType, + CellShapeTag shape, const CellNodeVecType &cellNodeIds) const { - if (cellType == vtkm::VTKM_TETRA) + if (shape.Id == vtkm::CELL_SHAPE_TETRA) { vtkm::IdComponent faceIdTable[12] = {0,1,2,0,1,3,0,2,3,1,2,3}; @@ -400,7 +403,7 @@ public: output_conn.Allocate(3 * output_numExtFaces); for(int face = 0; face < output_numExtFaces; face++) { - output_shapes.GetPortalControl().Set(face, vtkm::VTKM_TRIANGLE); + output_shapes.GetPortalControl().Set(face, vtkm::CELL_SHAPE_TRIANGLE); output_numIndices.GetPortalControl().Set(face, static_cast(3)); output_conn.GetPortalControl().Set(3*face, extFacePortal.Get(face)[0]); output_conn.GetPortalControl().Set(3*face + 1, extFacePortal.Get(face)[1]); diff --git a/vtkm/worklet/internal/ClipTables.h b/vtkm/worklet/internal/ClipTables.h index ef2bbf5de..99a58ab7d 100644 --- a/vtkm/worklet/internal/ClipTables.h +++ b/vtkm/worklet/internal/ClipTables.h @@ -20,7 +20,7 @@ #ifndef vtk_m_ClipTables_h #define vtk_m_ClipTables_h -#include +#include #include #include @@ -34,15 +34,15 @@ namespace internal { // values < 100 represent edges where the corresponding vertex lies // values >= 100 reresent existing vertices of the input cell (vertex = value - 100) static vtkm::Id ClipTablesData[] = { - // VTKM_VERTEX + // vtkm::CELL_SHAPE_VERTEX 0, -1, -1, -1, // 0 1, 1, 1, 100, // 1 - // VTKM_LINE + // vtkm::CELL_SHAPE_LINE 0, -1, -1, -1, -1, // 0 1, 3, 2, 100, 1, // 1 1, 3, 2, 0, 101, // 2 1, 3, 2, 100, 101, // 3 - // VTKM_TRIANGLE + // vtkm::CELL_SHAPE_TRIANGLE 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 0 1, 5, 3, 0, 2, 100, 0, -1, -1, -1, -1, // 1 1, 5, 3, 1, 0, 101, 0, -1, -1, -1, -1, // 2 @@ -51,24 +51,7 @@ static vtkm::Id ClipTablesData[] = { 2, 5, 3, 0, 1, 102, 5, 3, 102, 100, 0, // 5 2, 5, 3, 0, 101, 2, 5, 3, 2, 101, 102, // 6 1, 5, 3, 100, 101, 102, 0, -1, -1, -1, -1, // 7 - // VTKM_PIXEL - 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 0 - 1, 5, 3, 100, 0, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 1 - 1, 5, 3, 101, 1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 2 - 1, 8, 4, 100, 101, 1, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 3 - 1, 5, 3, 102, 3, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 4 - 1, 8, 4, 100, 0, 2, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 5 - 3, 5, 3, 101, 1, 0, 5, 3, 102, 3, 2, 8, 4, 0, 1, 2, 3, // 6 - 3, 5, 3, 100, 101, 1, 5, 3, 100, 1, 2, 5, 3, 100, 2, 102, -1, // 7 - 1, 5, 3, 103, 2, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 8 - 3, 5, 3, 100, 0, 3, 5, 3, 103, 2, 1, 8, 4, 0, 1, 2, 3, // 9 - 1, 8, 4, 101, 103, 2, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 10 - 3, 5, 3, 100, 101, 3, 5, 3, 101, 2, 3, 5, 3, 101, 103, 2, -1, // 11 - 1, 8, 4, 103, 102, 3, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 12 - 3, 5, 3, 100, 0, 102, 5, 3, 0, 1, 102, 5, 3, 1, 103, 102, -1, // 13 - 3, 5, 3, 0, 101, 103, 5, 3, 0, 103, 3, 5, 3, 103, 102, 3, -1, // 14 - 1, 8, 4, 100, 101, 103, 102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 15 - // VTKM_QUAD + // vtkm::CELL_SHAPE_QUAD 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 0 1, 5, 3, 100, 0, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 1 1, 5, 3, 101, 1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 2 @@ -85,7 +68,7 @@ static vtkm::Id ClipTablesData[] = { 3, 5, 3, 100, 0, 103, 5, 3, 0, 1, 103, 5, 3, 1, 102, 103, -1, // 13 3, 5, 3, 0, 101, 102, 5, 3, 0, 102, 3, 5, 3, 102, 103, 3, -1, // 14 1, 9, 4, 100, 101, 102, 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // 15 - // VTKM_TETRA + // vtkm::CELL_SHAPE_TETRA 0, -1, -1, -1, -1, -1, -1, -1, -1, // 0 1, 10, 4, 0, 3, 2, 100, -1, -1, // 1 1, 10, 4, 0, 1, 4, 101, -1, -1, // 2 @@ -113,7 +96,7 @@ static vtkm::IdComponent CellEdges[] = { 0, 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 3, 2, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 0, 0, 3, 1, 3, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -127,40 +110,40 @@ enum { EDGE_TABLES_SIZE = sizeof(CellEdges)/sizeof(vtkm::IdComponent) }; -static vtkm::Id ShapeToTableWidthMap[VTKM_NUMBER_OF_CELL_TYPES] = { - -1, // VTKM_EMPTY_CELL - 4, // VTKM_VERTEX - -1, // VTKM_POLY_VERTEX - 5, // VTKM_LINE - -1, // VTKM_POLY_LINE - 11, // VTKM_TRIANGLE - -1, // VTKM_TRIANGLE_STRIP - -1, // VTKM_POLYGON - 17, // VTKM_PIXEL - 17, // VTKM_QUAD - 9, // VTKM_TETRA - -1, // VTKM_VOXEL - -1, // VTKM_HEXAHEDRON - -1, // VTKM_WEDGE - -1 // VTKM_PYRAMID +static vtkm::Id ShapeToTableWidthMap[vtkm::NUMBER_OF_CELL_SHAPES] = { + -1, // vtkm::CELL_SHAPE_EMPTY_CELL + 4, // vtkm::CELL_SHAPE_VERTEX + -1, // vtkm::CELL_SHAPE_POLY_VERTEX + 5, // vtkm::CELL_SHAPE_LINE + -1, // vtkm::CELL_SHAPE_POLY_LINE + 11, // vtkm::CELL_SHAPE_TRIANGLE + -1, // vtkm::CELL_SHAPE_TRIANGLE_STRIP + -1, // vtkm::CELL_SHAPE_POLYGON + -1, // vtkm::CELL_SHAPE_PIXEL + 17, // vtkm::CELL_SHAPE_QUAD + 9, // vtkm::CELL_SHAPE_TETRA + -1, // vtkm::CELL_SHAPE_VOXEL + -1, // vtkm::CELL_SHAPE_HEXAHEDRON + -1, // vtkm::CELL_SHAPE_WEDGE + -1 // vtkm::CELL_SHAPE_PYRAMID }; -static vtkm::Id ShapeToTableIndexMap[VTKM_NUMBER_OF_CELL_TYPES] = { - -1, // VTKM_EMPTY_CELL - 0, // VTKM_VERTEX - -1, // VTKM_POLY_VERTEX - 8, // VTKM_LINE - -1, // VTKM_POLY_LINE - 28, // VTKM_TRIANGLE - -1, // VTKM_TRIANGLE_STRIP - -1, // VTKM_POLYGON - 116, // VTKM_PIXEL - 388, // VTKM_QUAD - 660, // VTKM_TETRA - -1, // VTKM_VOXEL - -1, // VTKM_HEXAHEDRON - -1, // VTKM_WEDGE - -1 // VTKM_PYRAMID +static vtkm::Id ShapeToTableIndexMap[vtkm::NUMBER_OF_CELL_SHAPES] = { + -1, // vtkm::CELL_SHAPE_EMPTY_CELL + 0, // vtkm::CELL_SHAPE_VERTEX + -1, // vtkm::CELL_SHAPE_POLY_VERTEX + 8, // vtkm::CELL_SHAPE_LINE + -1, // vtkm::CELL_SHAPE_POLY_LINE + 28, // vtkm::CELL_SHAPE_TRIANGLE + -1, // vtkm::CELL_SHAPE_TRIANGLE_STRIP + -1, // vtkm::CELL_SHAPE_POLYGON + -1, // vtkm::CELL_SHAPE_PIXEL + 116, // vtkm::CELL_SHAPE_QUAD + 388, // vtkm::CELL_SHAPE_TETRA + -1, // vtkm::CELL_SHAPE_VOXEL + -1, // vtkm::CELL_SHAPE_HEXAHEDRON + -1, // vtkm::CELL_SHAPE_WEDGE + -1 // vtkm::CELL_SHAPE_PYRAMID }; @@ -213,9 +196,9 @@ public: ClipTables() : ClipTablesArray(vtkm::cont::make_ArrayHandle(ClipTablesData, CLIP_TABLES_SIZE)), ShapeToTableWidthMapArray(vtkm::cont::make_ArrayHandle( - ShapeToTableWidthMap, VTKM_NUMBER_OF_CELL_TYPES)), + ShapeToTableWidthMap, vtkm::NUMBER_OF_CELL_SHAPES)), ShapeToTableIndexMapArray(vtkm::cont::make_ArrayHandle( - ShapeToTableIndexMap, VTKM_NUMBER_OF_CELL_TYPES)), + ShapeToTableIndexMap, vtkm::NUMBER_OF_CELL_SHAPES)), EdgeTablesArray(vtkm::cont::make_ArrayHandle(CellEdges, EDGE_TABLES_SIZE)) { } diff --git a/vtkm/worklet/testing/UnitTestClipping.cxx b/vtkm/worklet/testing/UnitTestClipping.cxx index 085b3cba7..9a0a06b68 100644 --- a/vtkm/worklet/testing/UnitTestClipping.cxx +++ b/vtkm/worklet/testing/UnitTestClipping.cxx @@ -67,7 +67,7 @@ vtkm::cont::DataSet MakeTestDatasetExplicit() Coord3D(0.0f, 1.0f, 0.0f), }; static vtkm::Float32 values[] = { 1.0, 2.0, 1.0, 0.0 }; - static vtkm::Id shapes[] = { vtkm::VTKM_TRIANGLE, vtkm::VTKM_TRIANGLE }; + static vtkm::Id shapes[] = { vtkm::CELL_SHAPE_TRIANGLE, vtkm::CELL_SHAPE_TRIANGLE }; static vtkm::Id numInds[] = { 3, 3 }; static vtkm::Id connectivity[] = { 0, 1, 3, 3, 1, 2 }; diff --git a/vtkm/worklet/testing/UnitTestExternalFaces.cxx b/vtkm/worklet/testing/UnitTestExternalFaces.cxx index ea71de0bd..f287acf82 100644 --- a/vtkm/worklet/testing/UnitTestExternalFaces.cxx +++ b/vtkm/worklet/testing/UnitTestExternalFaces.cxx @@ -102,7 +102,7 @@ void TestExternalFaces() int index = 0; for(int j = 0; j < nCells; j++) { - shapes.GetPortalControl().Set(j, static_cast(vtkm::VTKM_TETRA)); + shapes.GetPortalControl().Set(j, static_cast(vtkm::CELL_SHAPE_TETRA)); numIndices.GetPortalControl().Set(j, 4); for(int k = 0; k < 4; k++) conn.GetPortalControl().Set(index++, static_cast(cellVerts[j][k]));