BWAPI
|
00001 // Copyright (c) 2006 Tel-Aviv University (Israel). 00002 // All rights reserved. 00003 // 00004 // This file is part of CGAL (www.cgal.org); you may redistribute it under 00005 // the terms of the Q Public License version 1.0. 00006 // See the file LICENSE.QPL distributed with CGAL. 00007 // 00008 // Licensees holding a valid commercial license may use this file in 00009 // accordance with the commercial license agreement provided with the software. 00010 // 00011 // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00012 // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00013 // 00014 // $URL: svn+ssh://scm.gforge.inria.fr/svn/cgal/branches/CGAL-3.5-branch/Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_batched_pl_helper.h $ 00015 // $Id: Arr_bounded_planar_batched_pl_helper.h 40377 2007-09-19 11:05:08Z ophirset $ 00016 // 00017 // 00018 // Author(s) : Baruch Zukerman <baruchzu@post.tau.ac.il> 00019 // Ron Wein <wein@post.tau.ac.il> 00020 00021 #ifndef CGAL_ARR_BOUNDED_PLANAR_BATCHED_PL_HELPER_H 00022 #define CGAL_ARR_BOUNDED_PLANAR_BATCHED_PL_HELPER_H 00023 00028 CGAL_BEGIN_NAMESPACE 00029 00030 #include <CGAL/Sweep_line_empty_visitor.h> 00031 00037 template <class Traits_, class Arrangement_> 00038 class Arr_bounded_planar_batched_pl_helper 00039 { 00040 public: 00041 00042 typedef Traits_ Traits_2; 00043 typedef Arrangement_ Arrangement_2; 00044 00045 typedef typename Arrangement_2::Face_const_handle Face_const_handle; 00046 00047 typedef Sweep_line_empty_visitor<Traits_2> Base_visitor; 00048 typedef typename Base_visitor::Event Event; 00049 typedef typename Base_visitor::Subcurve Subcurve; 00050 00051 protected: 00052 00053 typedef typename Arrangement_2::Topology_traits Topology_traits; 00054 00055 // Data members: 00056 const Topology_traits *m_top_traits; // The topology-traits class. 00057 Face_const_handle m_unb_face; // The unbounded arrangement face. 00058 00059 public: 00060 00065 Arr_bounded_planar_batched_pl_helper (const Arrangement_2 *arr) : 00066 m_top_traits (arr->topology_traits()) 00067 {} 00068 00070 00071 00072 /* A notification issued before the sweep process starts. */ 00073 void before_sweep () 00074 { 00075 // Get the unbounded face. 00076 m_unb_face = Face_const_handle (m_top_traits->unbounded_face()); 00077 } 00078 00083 void after_handle_event (Event* /* event */) 00084 { 00085 return; 00086 } 00088 00090 Face_const_handle top_face () const 00091 { 00092 return (m_unb_face); 00093 } 00094 }; 00095 00096 CGAL_END_NAMESPACE 00097 00098 #endif