From c524232f734de875d69e2f190f01a6c976024368 Mon Sep 17 00:00:00 2001 From: Gard Spreemann Date: Thu, 14 Jun 2018 20:39:01 +0200 Subject: GUDHI 2.2.0 as released by upstream in a tarball. --- .../CGAL/NewKernel_d/Wrapper/Cartesian_wrap.h | 305 --------------------- .../CGAL/NewKernel_d/Wrapper/Hyperplane_d.h | 131 --------- .../CGAL/NewKernel_d/Wrapper/Point_d.h | 284 ------------------- .../CGAL/NewKernel_d/Wrapper/Ref_count_obj.h | 120 -------- .../CGAL/NewKernel_d/Wrapper/Segment_d.h | 133 --------- .../CGAL/NewKernel_d/Wrapper/Sphere_d.h | 130 --------- .../CGAL/NewKernel_d/Wrapper/Vector_d.h | 266 ------------------ .../CGAL/NewKernel_d/Wrapper/Weighted_point_d.h | 129 --------- 8 files changed, 1498 deletions(-) delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Cartesian_wrap.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Hyperplane_d.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Point_d.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Ref_count_obj.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Segment_d.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Sphere_d.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Vector_d.h delete mode 100644 include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Weighted_point_d.h (limited to 'include/gudhi_patches/CGAL/NewKernel_d/Wrapper') diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Cartesian_wrap.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Cartesian_wrap.h deleted file mode 100644 index 44e9aa96..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Cartesian_wrap.h +++ /dev/null @@ -1,305 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_KERNEL_D_CARTESIAN_WRAP_H -#define CGAL_KERNEL_D_CARTESIAN_WRAP_H - -#include -#include - -#if defined(BOOST_MSVC) -# pragma warning(push) -# pragma warning(disable:4003) // not enough actual parameters for macro 'BOOST_PP_EXPAND_I' - // http://lists.boost.org/boost-users/2014/11/83291.php -#endif -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include - -//TODO: do we want to store the kernel ref in the Object wrappers? It would allow for additions and operator[] and things like that to work, but objects would still need to be created by functors. - -namespace CGAL { -namespace internal { -BOOST_MPL_HAS_XXX_TRAIT_DEF(Is_wrapper) -template::value> struct Is_wrapper { - enum { value=false }; - typedef Tag_false type; -}; -template struct Is_wrapper { - typedef typename T::Is_wrapper type; - enum { value=type::value }; -}; - -template::value> struct Is_wrapper_iterator { - enum { value=false }; - typedef Tag_false type; -}; -template struct Is_wrapper_iterator : - Is_wrapper::type>::value_type> -{ }; - -struct Forward_rep { -//TODO: make a good C++0X version with perfect forwarding -//#ifdef CGAL_CXX11 -//template ::type>::value&&!Is_wrapper_iterator::type>::value>::type> -//T&& operator()(typename std::remove_reference::type&& t) const {return static_cast(t);}; -//template ::type>::value&&!Is_wrapper_iterator::type>::value>::type> -//T&& operator()(typename std::remove_reference::type& t) const {return static_cast(t);}; -// -//template ::type>::value>::type> -//typename Type_copy_cvref::type::Rep>::type&& -//operator()(T&& t) const { -// return static_cast::type::Rep>::type&&>(t.rep()); -//}; -// -//template ::type>::value>::type> -//transforming_iterator::type> -//operator()(T&& t) const { -// return make_transforming_iterator(std::forward(t),Forward_rep()); -//}; -//#else -template ::value,bool=Is_wrapper_iterator::value> struct result_; -template struct result_{typedef T const& type;}; -template struct result_{typedef typename decay::type::Rep const& type;}; -template struct result_{typedef transforming_iterator::type> type;}; -template struct result; -template struct result : result_ {}; - -template typename boost::disable_if,Is_wrapper_iterator >,T>::type const& operator()(T const& t) const {return t;} -template typename boost::disable_if,Is_wrapper_iterator >,T>::type& operator()(T& t) const {return t;} - -template typename T::Rep const& operator()(T const& t, typename boost::enable_if >::type* = 0) const {return t.rep();} - -template transforming_iterator,T>::type> operator()(T const& t) const {return make_transforming_iterator(t,Forward_rep());} -//#endif -}; -} - -template ::value> -struct Map_wrapping_type : Get_type {}; -#define CGAL_REGISTER_OBJECT_WRAPPER(X) \ - template \ - struct Map_wrapping_type { \ - typedef Wrap::X##_d type; \ - } -CGAL_REGISTER_OBJECT_WRAPPER(Point); -CGAL_REGISTER_OBJECT_WRAPPER(Vector); -CGAL_REGISTER_OBJECT_WRAPPER(Segment); -CGAL_REGISTER_OBJECT_WRAPPER(Sphere); -CGAL_REGISTER_OBJECT_WRAPPER(Hyperplane); -CGAL_REGISTER_OBJECT_WRAPPER(Weighted_point); -#undef CGAL_REGISTER_OBJECT_WRAPPER - -// Note: this tends to be an all or nothing thing currently, wrapping -// only some types breaks, probably because we don't check whether the -// return type is indeed wrapped. -template < typename Base_ , typename Derived_ = Default > -struct Cartesian_wrap : public Base_ -{ - CGAL_CONSTEXPR Cartesian_wrap(){} - CGAL_CONSTEXPR Cartesian_wrap(int d):Base_(d){} - typedef Base_ Kernel_base; - typedef Cartesian_wrap Self; - // TODO: pass the 2 types Self and Derived to the wrappers, they can use Self for most purposes and Derived only for Kernel_traits' typedef R. - typedef typename Default::Get::type Derived; - // FIXME: The list doesn't belong here. - typedef boost::mpl::vector Wrapped_list; - - template - struct Type : Map_wrapping_type {}; - - //Translate the arguments - template ::type, - bool=Provides_functor::value, - bool=boost::mpl::contains::type>::type::value> - struct Functor { - typedef typename Get_functor::type B; - struct type { - B b; - type(){} - type(Self const&k):b(k){} - typedef typename B::result_type result_type; -#ifdef CGAL_CXX11 - template result_type operator()(U&&...u)const{ - return b(internal::Forward_rep()(u)...); - } -#else -#define CGAL_VAR(Z,N,_) internal::Forward_rep()(u##N) -#define CGAL_CODE(Z,N,_) template result_type \ - operator()(BOOST_PP_ENUM_BINARY_PARAMS(N,U,const&u))const{ \ - return b(BOOST_PP_ENUM(N,CGAL_VAR,)); \ - } - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE -#undef CGAL_VAR -// In case the last argument needs to be non-const. Fragile... -#define CGAL_VAR(Z,N,_) internal::Forward_rep()(u##N) -#define CGAL_CODE(Z,N,_) template result_type \ - operator()(BOOST_PP_ENUM_BINARY_PARAMS(N,U,const&u),V&v)const{ \ - return b(BOOST_PP_ENUM(N,CGAL_VAR,),internal::Forward_rep()(v)); \ - } - BOOST_PP_REPEAT_FROM_TO(1,8,CGAL_CODE,_) -#undef CGAL_CODE -#undef CGAL_VAR -#endif - }; - }; - - // Preserve the difference between Null_functor and nothing. - template - struct Functor - : Get_functor {}; - - //Translate both the arguments and the result - //TODO: Check Is_wrapper instead of relying on map_result_tag? - template struct Functor { - typedef typename Get_functor::type B; - struct type { - B b; - type(){} - type(Self const&k):b(k){} - typedef typename map_result_tag::type result_tag; - // FIXME: Self or Derived? - typedef typename Get_type::type result_type; -#ifdef CGAL_CXX11 - template result_type operator()(U&&...u)const{ - return result_type(Eval_functor(),b,internal::Forward_rep()(u)...); - } -#else -#define CGAL_VAR(Z,N,_) internal::Forward_rep()(u##N) -#define CGAL_CODE(Z,N,_) template result_type \ - operator()(BOOST_PP_ENUM_BINARY_PARAMS(N,U,const&u))const{ \ - return result_type(Eval_functor(),b,BOOST_PP_ENUM(N,CGAL_VAR,)); \ - } - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE -#undef CGAL_VAR -#endif - }; - }; - -}; - -template < typename Base_ > -struct Cartesian_refcount : public Base_ -{ - CGAL_CONSTEXPR Cartesian_refcount(){} - CGAL_CONSTEXPR Cartesian_refcount(int d):Base_(d){} - typedef Base_ Kernel_base; - typedef Cartesian_refcount Self; - - // FIXME: Use object_list, or a list passed as argument, or anything - // automatic. - template struct Type : Get_type {}; -#define CGAL_Kernel_obj(X,Y) \ - template struct Type { typedef Ref_count_obj type; }; - - CGAL_Kernel_obj(Point,point) - CGAL_Kernel_obj(Vector,vector) -#undef CGAL_Kernel_obj - - template struct Dispatch { - //typedef typename map_functor_type::type f_t; - typedef typename map_result_tag::type r_t; - enum { - is_nul = boost::is_same::type,Null_functor>::value, - ret_rcobj = boost::is_same::value || boost::is_same::value - }; - }; - - //Translate the arguments - template::is_nul,bool=Dispatch::ret_rcobj> struct Functor { - typedef typename Get_functor::type B; - struct type { - B b; - type(){} - type(Self const&k):b(k){} - typedef typename B::result_type result_type; -#ifdef CGAL_CXX11 - template result_type operator()(U&&...u)const{ - return b(internal::Forward_rep()(u)...); - } -#else - result_type operator()()const{ - return b(); - } -#define CGAL_VAR(Z,N,_) internal::Forward_rep()(u##N) -#define CGAL_CODE(Z,N,_) template result_type \ - operator()(BOOST_PP_ENUM_BINARY_PARAMS(N,U,const&u))const{ \ - return b(BOOST_PP_ENUM(N,CGAL_VAR,)); \ - } - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE -#undef CGAL_VAR -#endif - }; - }; - - //Translate both the arguments and the result - template struct Functor { - typedef Null_functor type; - }; - - template struct Functor { - typedef typename Get_functor::type B; - struct type { - B b; - type(){} - type(Self const&k):b(k){} - typedef typename map_result_tag::type result_tag; - typedef typename Get_type::type result_type; -#ifdef CGAL_CXX11 - template result_type operator()(U&&...u)const{ - return result_type(Eval_functor(),b,internal::Forward_rep()(u)...); - } -#else - result_type operator()()const{ - return result_type(Eval_functor(),b); - } -#define CGAL_VAR(Z,N,_) internal::Forward_rep()(u##N) -#define CGAL_CODE(Z,N,_) template result_type \ - operator()(BOOST_PP_ENUM_BINARY_PARAMS(N,U,const&u))const{ \ - return result_type(Eval_functor(),b,BOOST_PP_ENUM(N,CGAL_VAR,)); \ - } - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE -#undef CGAL_VAR -#endif - }; - }; - -}; - -} //namespace CGAL - -#if defined(BOOST_MSVC) -# pragma warning(pop) -#endif - -#endif // CGAL_KERNEL_D_CARTESIAN_WRAP_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Hyperplane_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Hyperplane_d.h deleted file mode 100644 index 54fd50bd..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Hyperplane_d.h +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_HYPERPLANE_D_H -#define CGAL_WRAPPER_HYPERPLANE_D_H - -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Hyperplane_d : public Get_type::type -{ - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Vector_; - typedef typename Get_functor >::type CHBase; - typedef typename Get_functor::type OVBase; - typedef typename Get_functor::type HTBase; - - typedef Hyperplane_d Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef typename Increment_dimension::type Feature_dimension; - - typedef typename Get_type::type Rep; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Hyperplane_d(U&&...u) - : Rep(CHBase()(std::forward(u)...)){} - -// // called from Construct_point_d -// template explicit Point_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Hyperplane_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Point_d(Point_d const&)=default; - Point_d(Point_d &);//=default; - Point_d(Point_d &&)=default; -#endif - - // try not to use these - Hyperplane_d(Rep const& v) : Rep(v) {} - Hyperplane_d(Rep& v) : Rep(static_cast(v)) {} - Hyperplane_d(Rep&& v) : Rep(std::move(v)) {} - -#else - - Hyperplane_d() : Rep(CHBase()()) {} - - Hyperplane_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Hyperplane_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CHBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Hyperplane_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Point_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - -#endif - - //TODO: if OVBase returns a reference to a base vector, cast it to a - //reference to a wrapper vector. Ugly but should be safe. - Vector_ orthogonal_vector()const{ - return Vector_(Eval_functor(),OVBase(),rep()); - } - FT_ translation()const{ - return HTBase()(rep()); - } - - -}; - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_SPHERE_D_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Point_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Point_d.h deleted file mode 100644 index 0718c947..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Point_d.h +++ /dev/null @@ -1,284 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_POINT_D_H -#define CGAL_WRAPPER_POINT_D_H - -#include -#include -#include -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Point_d : public Get_type::type - // Deriving won't work if the point is just a __m256d. - // Test boost/std::is_class for instance -{ - typedef typename Get_type::type RT_; - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Vector_; - typedef typename Get_functor >::type CPBase; - typedef typename Get_functor::type CCBase; - typedef typename Get_functor >::type CPI; - - - typedef Point_d Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef Dimension_tag<0> Feature_dimension; - - typedef typename Get_type::type Rep; - //typedef typename CGAL::decay::type>::type Cartesian_const_iterator; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Point_d(U&&...u) - : Rep(CPBase()(std::forward(u)...)){} - -// // called from Construct_point_d -// template explicit Point_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Point_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Point_d(Point_d const&)=default; - Point_d(Point_d &);//=default; - Point_d(Point_d &&)=default; -#endif - - // try not to use these - Point_d(Rep const& v) : Rep(v) {} - Point_d(Rep& v) : Rep(static_cast(v)) {} - Point_d(Rep&& v) : Rep(std::move(v)) {} - - // this one should be implicit - Point_d(Origin const& v) - : Rep(CPBase()(v)) {} - Point_d(Origin& v) - : Rep(CPBase()(v)) {} - Point_d(Origin&& v) - : Rep(CPBase()(std::move(v))) {} - -#else - - Point_d() : Rep(CPBase()()) {} - - Point_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Point_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CPBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Point_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Point_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - - // this one should be implicit - Point_d(Origin const& o) - : Rep(CPBase()(o)) {} - -#endif - - typename boost::result_of::type cartesian(int i)const{ - return CCBase()(rep(),i); - } - typename boost::result_of::type operator[](int i)const{ - return CCBase()(rep(),i); - } - - typename boost::result_of::type cartesian_begin()const{ - return CPI()(rep(),Begin_tag()); - } - - typename boost::result_of::type cartesian_end()const{ - return CPI()(rep(),End_tag()); - } - - int dimension() const { - typedef typename Get_functor::type PDBase; - return PDBase()(rep()); - } - - /* - Direction_d direction() const - { - return R().construct_direction_d_object()(*this); - } - - Vector_d transform(const Aff_transformation_d &t) const - { - return t.transform(*this); - } - - Vector_d operator/(const RT& c) const - { - return R().construct_divided_vector_d_object()(*this,c); - } - - Vector_d operator/(const typename First_if_different::Type & c) const - { - return R().construct_divided_vector_d_object()(*this,c); - } - - typename Qualified_result_of::type - x() const - { - return R().compute_x_3_object()(*this); - } - - typename Qualified_result_of::type - y() const - { - return R().compute_y_3_object()(*this); - } - - typename Qualified_result_of::type - z() const - { - return R().compute_z_3_object()(*this); - } - - typename Qualified_result_of::type - hx() const - { - return R().compute_hx_3_object()(*this); - } - - typename Qualified_result_of::type - hy() const - { - return R().compute_hy_3_object()(*this); - } - - typename Qualified_result_of::type - hz() const - { - return R().compute_hz_3_object()(*this); - } - - typename Qualified_result_of::type - hw() const - { - return R().compute_hw_3_object()(*this); - } - - typename Qualified_result_of::type - cartesian(int i) const - { - CGAL_kernel_precondition( (i == 0) || (i == 1) || (i == 2) ); - if (i==0) return x(); - if (i==1) return y(); - return z(); - } - - typename Qualified_result_of::type - homogeneous(int i) const - { - CGAL_kernel_precondition( (i >= 0) || (i <= 3) ); - if (i==0) return hx(); - if (i==1) return hy(); - if (i==2) return hz(); - return hw(); - } - - typename Qualified_result_of::type - squared_length() const - { - return R().compute_squared_length_3_object()(*this); - } -*/ -}; -#if 0 -template Point_d::Point_d(Point_d &)=default; -#endif - -//TODO: IO - -template -std::ostream& operator <<(std::ostream& os, const Point_d& p) -{ - typedef typename R_::Kernel_base Kbase; - typedef typename Get_functor >::type CPI; - // Should just be "auto"... - typename CGAL::decay::Rep,Begin_tag) - >::type>::type - b = p.cartesian_begin(), - e = p.cartesian_end(); - os << p.dimension(); - for(; b != e; ++b){ - os << " " << *b; - } - return os; -} - -//template -//Vector_d operator+(const Vector_d& v,const Vector_d& w) const -//{ -// return typename R::template Construct::type()(v,w); -//} -// -//template -//Vector_d operator-(const Vector_d& v,const Vector_d& w) const -//{ -// return typename R::template Construct::type()(v,w); -//} - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_POINT_D_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Ref_count_obj.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Ref_count_obj.h deleted file mode 100644 index f33e14c0..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Ref_count_obj.h +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_REF_COUNT_OBJ_H -#define CGAL_WRAPPER_REF_COUNT_OBJ_H - -#include -#include -#include -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -// no need for a fancy interface here, people can use the Point_d wrapper on -// top. - -namespace CGAL { - -template -class Ref_count_obj -{ - typedef typename R_::Kernel_base Kbase; - typedef typename Get_functor >::type CBase; - - typedef Ref_count_obj Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - typedef R_ R; - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - //typedef Dimension_tag<0> Feature_dimension; - - typedef typename Get_type::type Rep; - typedef Handle_for Data; - -private: - Data data; -public: - - const Rep& rep() const - { - return CGAL::get_pointee_or_identity(data); - } - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Ref_count_obj(U&&...u) - : data(Eval_functor(),CBase(),std::forward(u)...){} - - template explicit Ref_count_obj(Eval_functor&&,F&&f,U&&...u) - : data(Eval_functor(),std::forward(f),std::forward(u)...){} - - // try not to use these - Ref_count_obj(Rep const& v) : data(v) {} - Ref_count_obj(Rep& v) : data(static_cast(v)) {} - Ref_count_obj(Rep&& v) : data(std::move(v)) {} - - // Do we really need this for point? -// // this one should be implicit -// Ref_count_obj(Origin const& v) -// : data(Eval_functor(),CBase(),v) {} -// Ref_count_obj(Origin& v) -// : data(Eval_functor(),CBase(),v) {} -// Ref_count_obj(Origin&& v) -// : data(Eval_functor(),CBase(),std::move(v)) {} - -#else - - Ref_count_obj() : data(Eval_functor(),CBase()) {} - - Ref_count_obj(Rep const& v) : data(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Ref_count_obj(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : data(Eval_functor(),CBase(),BOOST_PP_ENUM_PARAMS(N,t)) {} \ - \ - template \ - Ref_count_obj(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : data(Eval_functor(),f,BOOST_PP_ENUM_PARAMS(N,t)) {} - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - template - Ref_count_obj(Eval_functor,F const& f) - : data(Eval_functor(),f) {} - -// // this one should be implicit -// Ref_count_obj(Origin const& o) -// : data(Eval_functor(),CBase(),o) {} - -#endif - -}; - -} //namespace CGAL - -#endif diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Segment_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Segment_d.h deleted file mode 100644 index bfb20a77..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Segment_d.h +++ /dev/null @@ -1,133 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_SEGMENT_D_H -#define CGAL_WRAPPER_SEGMENT_D_H - -#include -#include -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Segment_d : public Get_type::type -{ - typedef typename Get_type::type RT_; - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Point_; - typedef typename Get_functor >::type CPBase; - typedef typename Get_functor >::type CSBase; - typedef typename Get_functor::type CSEBase; - - typedef Segment_d Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef Dimension_tag<1> Feature_dimension; - - typedef typename Get_type::type Rep; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Segment_d(U&&...u) - : Rep(CSBase()(std::forward(u)...)){} - -// // called from Construct_point_d -// template explicit Point_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Segment_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Point_d(Point_d const&)=default; - Point_d(Point_d &);//=default; - Point_d(Point_d &&)=default; -#endif - - // try not to use these - Segment_d(Rep const& v) : Rep(v) {} - Segment_d(Rep& v) : Rep(static_cast(v)) {} - Segment_d(Rep&& v) : Rep(std::move(v)) {} - -#else - - Segment_d() : Rep(CSBase()()) {} - - Segment_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Segment_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CSBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Segment_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Point_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - -#endif - - //TODO: if CSEBase returns a reference to a base point, cast it to a - //reference to a wrapper point. Ugly but should be safe. - Point_ source()const{ - return Point_(Eval_functor(),CSEBase(),rep(),0); - } - Point_ target()const{ - return Point_(Eval_functor(),CSEBase(),rep(),1); - } - -}; - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_SEGMENT_D_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Sphere_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Sphere_d.h deleted file mode 100644 index 87f0c66e..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Sphere_d.h +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_SPHERE_D_H -#define CGAL_WRAPPER_SPHERE_D_H - -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Sphere_d : public Get_type::type -{ - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Point_; - typedef typename Get_functor >::type CSBase; - typedef typename Get_functor::type COSBase; - typedef typename Get_functor::type SRBase; - - typedef Sphere_d Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef typename Increment_dimension::type Feature_dimension; - - typedef typename Get_type::type Rep; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Sphere_d(U&&...u) - : Rep(CSBase()(std::forward(u)...)){} - -// // called from Construct_point_d -// template explicit Point_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Sphere_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Point_d(Point_d const&)=default; - Point_d(Point_d &);//=default; - Point_d(Point_d &&)=default; -#endif - - // try not to use these - Sphere_d(Rep const& v) : Rep(v) {} - Sphere_d(Rep& v) : Rep(static_cast(v)) {} - Sphere_d(Rep&& v) : Rep(std::move(v)) {} - -#else - - Sphere_d() : Rep(CSBase()()) {} - - Sphere_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Sphere_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CSBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Sphere_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Point_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - -#endif - - //TODO: if COSBase returns a reference to a base point, cast it to a - //reference to a wrapper point. Ugly but should be safe. - Point_ center()const{ - return Point_(Eval_functor(),COSBase(),rep()); - } - FT_ squared_radius()const{ - return SRBase()(rep()); - } - -}; - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_SPHERE_D_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Vector_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Vector_d.h deleted file mode 100644 index b7d1f0d0..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Vector_d.h +++ /dev/null @@ -1,266 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_VECTOR_D_H -#define CGAL_WRAPPER_VECTOR_D_H - -#include -#include -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Vector_d : public Get_type::type -{ - typedef typename Get_type::type RT_; - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Point_; - typedef typename Get_functor >::type CVBase; - typedef typename Get_functor::type CCBase; - typedef typename Get_functor >::type CVI; - typedef typename Get_functor::type SLBase; - - typedef Vector_d Self; - CGAL_static_assertion((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef Dimension_tag<0> Feature_dimension; - - //typedef typename R_::Vector_cartesian_const_iterator Cartesian_const_iterator; - typedef typename Get_type::type Rep; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Vector_d(U&&...u) - : Rep(CVBase()(std::forward(u)...)){} - -// // called from Construct_vector_d -// template explicit Vector_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Vector_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Vector_d(Vector_d const&)=default; - Vector_d(Vector_d &);//=default; - Vector_d(Vector_d &&)=default; -#endif - - // try not to use these - Vector_d(Rep const& v) : Rep(v) {} - Vector_d(Rep& v) : Rep(static_cast(v)) {} - Vector_d(Rep&& v) : Rep(std::move(v)) {} - - // this one should be implicit - Vector_d(Null_vector const& v) - : Rep(CVBase()(v)) {} - Vector_d(Null_vector& v) - : Rep(CVBase()(v)) {} - Vector_d(Null_vector&& v) - : Rep(CVBase()(std::move(v))) {} - -#else - - Vector_d() : Rep(CVBase()()) {} - - Vector_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Vector_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CVBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Vector_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Vector_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - - // this one should be implicit - Vector_d(Null_vector const& v) - : Rep(CVBase()(v)) {} - -#endif - - typename boost::result_of::type cartesian(int i)const{ - return CCBase()(rep(),i); - } - - typename boost::result_of::type operator[](int i)const{ - return CCBase()(rep(),i); - } - - typename boost::result_of::type cartesian_begin()const{ - return CVI()(rep(),Begin_tag()); - } - - typename boost::result_of::type cartesian_end()const{ - return CVI()(rep(),End_tag()); - } - - Vector_d operator-() const - { - return typename Get_functor::type()(*this); - } - - /* - Direction_d direction() const - { - return R().construct_direction_d_object()(*this); - } - - Vector_d transform(const Aff_transformation_d &t) const - { - return t.transform(*this); - } - - Vector_d operator/(const RT& c) const - { - return R().construct_divided_vector_d_object()(*this,c); - } - - Vector_d operator/(const typename First_if_different::Type & c) const - { - return R().construct_divided_vector_d_object()(*this,c); - } - - typename Qualified_result_of::type - x() const - { - return R().compute_x_3_object()(*this); - } - - typename Qualified_result_of::type - y() const - { - return R().compute_y_3_object()(*this); - } - - typename Qualified_result_of::type - z() const - { - return R().compute_z_3_object()(*this); - } - - typename Qualified_result_of::type - hx() const - { - return R().compute_hx_3_object()(*this); - } - - typename Qualified_result_of::type - hy() const - { - return R().compute_hy_3_object()(*this); - } - - typename Qualified_result_of::type - hz() const - { - return R().compute_hz_3_object()(*this); - } - - typename Qualified_result_of::type - hw() const - { - return R().compute_hw_3_object()(*this); - } - - typename Qualified_result_of::type - cartesian(int i) const - { - CGAL_kernel_precondition( (i == 0) || (i == 1) || (i == 2) ); - if (i==0) return x(); - if (i==1) return y(); - return z(); - } - - typename Qualified_result_of::type - homogeneous(int i) const - { - CGAL_kernel_precondition( (i >= 0) || (i <= 3) ); - if (i==0) return hx(); - if (i==1) return hy(); - if (i==2) return hz(); - return hw(); - } - - int dimension() const // bad idea? - { - return rep.dimension(); - } -*/ - typename boost::result_of::type squared_length()const{ - return SLBase()(rep()); - } -}; -#if 0 -template Vector_d::Vector_d(Vector_d &)=default; -#endif - -//TODO: IO - -template -Vector_d operator+(const Vector_d& v,const Vector_d& w) -{ - return typename Get_functor::type()(v,w); -} - -template -Vector_d operator-(const Vector_d& v,const Vector_d& w) -{ - return typename Get_functor::type()(v,w); -} - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_VECTOR_D_H diff --git a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Weighted_point_d.h b/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Weighted_point_d.h deleted file mode 100644 index 877eea21..00000000 --- a/include/gudhi_patches/CGAL/NewKernel_d/Wrapper/Weighted_point_d.h +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright (c) 2014 -// INRIA Saclay-Ile de France (France) -// -// This file is part of CGAL (www.cgal.org); you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public License as -// published by the Free Software Foundation; either version 3 of the License, -// or (at your option) any later version. -// -// Licensees holding a valid commercial license may use this file in -// accordance with the commercial license agreement provided with the software. -// -// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -// -// $URL$ -// $Id$ -// -// Author(s) : Marc Glisse - -#ifndef CGAL_WRAPPER_WEIGHTED_POINT_D_H -#define CGAL_WRAPPER_WEIGHTED_POINT_D_H - -#include -#include -#include -#include -#include -#ifndef CGAL_CXX11 -#include -#endif -#include - -namespace CGAL { -namespace Wrap { - -template -class Weighted_point_d : public Get_type::type -{ - typedef typename Get_type::type FT_; - typedef typename R_::Kernel_base Kbase; - typedef typename Get_type::type Point_; - typedef typename Get_functor >::type CWPBase; - typedef typename Get_functor::type PDWBase; - typedef typename Get_functor::type PWBase; - - typedef Weighted_point_d Self; - BOOST_STATIC_ASSERT((boost::is_same::type>::value)); - -public: - - typedef Tag_true Is_wrapper; - typedef typename R_::Default_ambient_dimension Ambient_dimension; - typedef Dimension_tag<0> Feature_dimension; - - typedef typename Get_type::type Rep; - - const Rep& rep() const - { - return *this; - } - - Rep& rep() - { - return *this; - } - - typedef R_ R; - -#ifdef CGAL_CXX11 - template::type...>,std::tuple >::value>::type> explicit Weighted_point_d(U&&...u) - : Rep(CWPBase()(std::forward(u)...)){} - -// // called from Construct_point_d -// template explicit Point_d(Eval_functor&&,U&&...u) -// : Rep(Eval_functor(), std::forward(u)...){} - template explicit Weighted_point_d(Eval_functor&&,F&&f,U&&...u) - : Rep(std::forward(f)(std::forward(u)...)){} - -#if 0 - // the new standard may make this necessary - Point_d(Point_d const&)=default; - Point_d(Point_d &);//=default; - Point_d(Point_d &&)=default; -#endif - - // try not to use these - Weighted_point_d(Rep const& v) : Rep(v) {} - Weighted_point_d(Rep& v) : Rep(static_cast(v)) {} - Weighted_point_d(Rep&& v) : Rep(std::move(v)) {} - -#else - - Weighted_point_d() : Rep(CWPBase()()) {} - - Weighted_point_d(Rep const& v) : Rep(v) {} // try not to use it - -#define CGAL_CODE(Z,N,_) template \ - explicit Weighted_point_d(BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(CWPBase()( \ - BOOST_PP_ENUM_PARAMS(N,t))) {} \ - \ - template \ - Weighted_point_d(Eval_functor,F const& f,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(f(BOOST_PP_ENUM_PARAMS(N,t))) {} - /* - template \ - Point_d(Eval_functor,BOOST_PP_ENUM_BINARY_PARAMS(N,T,const&t)) \ - : Rep(Eval_functor(), BOOST_PP_ENUM_PARAMS(N,t)) {} - */ - - BOOST_PP_REPEAT_FROM_TO(1,11,CGAL_CODE,_) -#undef CGAL_CODE - -#endif - - //TODO: use references? - Point_ point()const{ - return Point_(Eval_functor(),PDWBase(),rep()); - } - FT_ weight()const{ - return PWBase()(rep()); - } - -}; - -} //namespace Wrap -} //namespace CGAL - -#endif // CGAL_WRAPPER_SPHERE_D_H -- cgit v1.2.3