// Copyright (c) 2019 Tel-Aviv University (Israel). // All rights reserved. // // This file is part of CGAL (www.cgal.org). // // $URL: https://github.com/CGAL/cgal/blob/v5.2/Arrangement_on_surface_2/include/CGAL/graph_traits_dual_arrangement_2.h $ // $Id: graph_traits_dual_arrangement_2.h 254d60f 2019-10-19T15:23:19+02:00 Sébastien Loriot // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial // // Author(s) : Ron Wein // Ophir Setter // Sebastien Loriot // Efi Fogel #ifndef CGAL_GRAPH_TRAITS_DUAL_ARRANGEMENT_2_H #define CGAL_GRAPH_TRAITS_DUAL_ARRANGEMENT_2_H #include /*! \file * Definition of: * 1. the specialized Dual class, * 2. the specialized boost::graph_traits >class, * 3. The free functions required by the various graph concepts. */ // include this to avoid a VC15 warning #include #include #include #include namespace CGAL { // The specialized Dual class Dual > : public Dual_arrangement_on_surface > { public: typedef Arrangement_2 Arrangement; typedef typename Arrangement::Geometry_traits_2 Geometry_traits_2; typedef typename Arrangement::Topology_traits Topology_traits; private: typedef Dual_arrangement_on_surface Base; public: /*! Default constructor. */ Dual() : Base() {} /*! Constructor from an arrangement. */ Dual(const Arrangement& arr) : Base(arr) {} }; } namespace boost { // The specialized graph_traits class graph_traits > > : public CGAL::Graph_traits_dual_arr_on_surface_impl > {}; } namespace CGAL { // Templates of free functions that handle // graph_traits