From 58b0fd5f4891e29e96a79659361623f72d990041 Mon Sep 17 00:00:00 2001 From: Max Lyon Date: Fri, 13 Dec 2019 16:05:26 +0100 Subject: [PATCH 1/3] explicitly export Handles because SmartHandles need to be exported and have Handles as base --- src/OpenMesh/Core/Mesh/Handles.hh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/OpenMesh/Core/Mesh/Handles.hh b/src/OpenMesh/Core/Mesh/Handles.hh index 4871996d..0f237e20 100644 --- a/src/OpenMesh/Core/Mesh/Handles.hh +++ b/src/OpenMesh/Core/Mesh/Handles.hh @@ -59,7 +59,7 @@ namespace OpenMesh { /// Base class for all handle types -class BaseHandle +class OPENMESHDLLEXPORT BaseHandle { public: @@ -117,35 +117,35 @@ inline std::ostream& operator<<(std::ostream& _os, const BaseHandle& _hnd) /// Handle for a vertex entity -struct VertexHandle : public BaseHandle +struct OPENMESHDLLEXPORT VertexHandle : public BaseHandle { explicit VertexHandle(int _idx=-1) : BaseHandle(_idx) {} }; /// Handle for a halfedge entity -struct HalfedgeHandle : public BaseHandle +struct OPENMESHDLLEXPORT HalfedgeHandle : public BaseHandle { explicit HalfedgeHandle(int _idx=-1) : BaseHandle(_idx) {} }; /// Handle for a edge entity -struct EdgeHandle : public BaseHandle +struct OPENMESHDLLEXPORT EdgeHandle : public BaseHandle { explicit EdgeHandle(int _idx=-1) : BaseHandle(_idx) {} }; /// Handle for a face entity -struct FaceHandle : public BaseHandle +struct OPENMESHDLLEXPORT FaceHandle : public BaseHandle { explicit FaceHandle(int _idx=-1) : BaseHandle(_idx) {} }; /// Handle type for meshes to simplify some template programming -struct MeshHandle : public BaseHandle +struct OPENMESHDLLEXPORT MeshHandle : public BaseHandle { explicit MeshHandle(int _idx=-1) : BaseHandle(_idx) {} }; From 1dd02a5532cbcc5e0fa8e9fec76461d8fcd1690b Mon Sep 17 00:00:00 2001 From: Max Lyon Date: Fri, 13 Dec 2019 16:05:35 +0100 Subject: [PATCH 2/3] fix warning in unittest --- src/Unittests/unittests_smart_ranges.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Unittests/unittests_smart_ranges.cc b/src/Unittests/unittests_smart_ranges.cc index 72d0b7c2..91c98407 100644 --- a/src/Unittests/unittests_smart_ranges.cc +++ b/src/Unittests/unittests_smart_ranges.cc @@ -159,7 +159,7 @@ protected: template struct F { - int operator()(HandleT ) { return 1; } + unsigned int operator()(HandleT ) { return 1; } }; /* Test if smart ranges work @@ -189,7 +189,7 @@ TEST_F(OpenMeshSmartRanges, Sum) for (auto fh : mesh_.faces()) EXPECT_EQ(fh.edges().sum(F()), mesh_.valence(fh)); for (auto fh : mesh_.faces()) - EXPECT_EQ(fh.faces().sum(F()), 3); + EXPECT_EQ(fh.faces().sum(F()), 3u); } From debce64d31f60669cf8eeff4aa0467fd003ca80d Mon Sep 17 00:00:00 2001 From: Max Lyon Date: Fri, 13 Dec 2019 16:25:28 +0100 Subject: [PATCH 3/3] fix another warning --- src/Unittests/unittests_smart_ranges.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Unittests/unittests_smart_ranges.cc b/src/Unittests/unittests_smart_ranges.cc index 91c98407..564e8ef9 100644 --- a/src/Unittests/unittests_smart_ranges.cc +++ b/src/Unittests/unittests_smart_ranges.cc @@ -166,7 +166,7 @@ struct F */ TEST_F(OpenMeshSmartRanges, Sum) { - auto one = [](OpenMesh::VertexHandle ) { return 1; }; + auto one = [](OpenMesh::VertexHandle ) { return 1u; }; EXPECT_EQ(mesh_.vertices().sum(one), mesh_.n_vertices()); EXPECT_EQ(mesh_.vertices().sum(F()), mesh_.n_vertices()); EXPECT_EQ(mesh_.halfedges().sum(F()), mesh_.n_halfedges());