diff --git a/Packages/Curved_kernel/include/CGAL/Circular_kernel.h b/Packages/Curved_kernel/include/CGAL/Circular_kernel.h index 485e4728afb..d3e183c24b3 100644 --- a/Packages/Curved_kernel/include/CGAL/Circular_kernel.h +++ b/Packages/Curved_kernel/include/CGAL/Circular_kernel.h @@ -36,17 +36,14 @@ namespace CGALi { template < class CurvedKernel, class LinearKernelBase > struct Curved_kernel_base: public LinearKernelBase -// takes classes in internal sub-namespace { - typedef CGALi::Circular_arc_2 Circular_arc_2; - typedef CGALi::Circular_arc_point_2 Circular_arc_point_2; - typedef CGALi::Line_arc_2 Line_arc_2; + typedef CGALi::Circular_arc_2 Circular_arc_2; + typedef CGALi::Circular_arc_point_2 Circular_arc_point_2; + typedef CGALi::Line_arc_2 Line_arc_2; - - - - #define CGAL_Curved_Kernel_pred(Y,Z) typedef CircularFunctors::Y Y; \ - Y Z() const { return Y(); } + #define CGAL_Curved_Kernel_pred(Y,Z) \ + typedef CircularFunctors::Y Y; \ + Y Z() const { return Y(); } #define CGAL_Curved_Kernel_cons(Y,Z) CGAL_Curved_Kernel_pred(Y,Z) #include @@ -56,54 +53,40 @@ struct Curved_kernel_base: public LinearKernelBase template < class LinearKernel, class AlgebraicKernel > struct Curved_kernel - : // there should be a derivation from - // LinearKernel::Kernel_base to have types equalities for - // the Linearkernel types -// public CGALi::Curved_kernel_base,LinearKernel > - public Curved_kernel_type_equality_wrapper, - typename LinearKernel::template Base >::Type >, - Curved_kernel > + : public Curved_kernel_type_equality_wrapper + < + CGALi::Curved_kernel_base + < Curved_kernel, + typename LinearKernel::template + Base >::Type + >, + Curved_kernel + > { typedef Curved_kernel Self; - // typedef Self Linear_kernel; - // typedef LinearKernel Linear_kernel; // ? - typedef typename LinearKernel::template Base >::Type Linear_kernel; - typedef AlgebraicKernel Algebraic_kernel; + typedef typename LinearKernel::template + Base >::Type Linear_kernel; + typedef AlgebraicKernel Algebraic_kernel; - // typedef CGALi::Curved_kernel_base Kernel_base; - // typedef CGALi::Curved_kernel_base::Type > - // Kernel_base; - - - //Please remove this if you consider it to be sloppy + // for Lazy hexagons/bbox kernels + // Please remove this if you consider it to be sloppy struct Curved_tag{}; typedef Curved_tag Definition_tag; - //////////////////////////////////////////////////// - + // typedef typename LinearKernel::RT RT; typedef typename LinearKernel::FT FT; typedef typename Algebraic_kernel::Root_of_2 Root_of_2; - typedef typename Algebraic_kernel::Root_for_circles_2_2 Root_for_circles_2_2; + typedef typename Algebraic_kernel::Root_for_circles_2_2 Root_for_circles_2_2; typedef typename Algebraic_kernel::Polynomial_for_circles_2_2 - Polynomial_for_circles_2_2; - typedef typename Algebraic_kernel::Polynomial_1_2 Polynomial_1_2; + Polynomial_for_circles_2_2; + typedef typename Algebraic_kernel::Polynomial_1_2 Polynomial_1_2; - // public classes - typedef CGAL::Object Object_2; - typedef CGAL::Object Object_3; +// typedef CGAL::Object Object_2; +// typedef CGAL::Object Object_3; - // typedef typename Linear_kernel::Line_2 Line_2; - // typedef typename Linear_kernel::Circle_2 Circle_2; - // typedef typename Linear_kernel::Conic_2 Conic_2; - // typedef typename Linear_kernel::Point_2 Point_2; - - // typedef CGAL::Circular_arc_2 Circular_arc_2; - // typedef CGAL::Circular_arc_point_2 Circular_arc_point_2; - // typedef CGAL::Line_arc_2 Line_arc_2; - }; } // namespace CGAL