BWAPI
SPAR/AIModule/BWTA/vendors/CGAL/CGAL/Boolean_set_operations_2/Gps_bfs_join_visitor.h
Go to the documentation of this file.
00001 // Copyright (c) 2005  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/Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_bfs_join_visitor.h $
00015 // $Id: Gps_bfs_join_visitor.h 48113 2009-02-17 16:21:43Z ophirset $
00016 // 
00017 //
00018 // Author(s)     : Baruch Zukerman <baruchzu@post.tau.ac.il>
00019 //                 Ophir Setter    <ophir.setter@cs.tau.ac.il>
00020 
00021 #ifndef CGAL_GPS_BFS_JOIN_VISITOR_H
00022 #define CGAL_GPS_BFS_JOIN_VISITOR_H
00023 
00024 #include <CGAL/Boolean_set_operations_2/Gps_bfs_base_visitor.h>
00025 
00026 CGAL_BEGIN_NAMESPACE
00027 
00028 template <class Arrangement_>
00029 class Gps_bfs_join_visitor : 
00030 public Gps_bfs_base_visitor<Arrangement_, Gps_bfs_join_visitor<Arrangement_> >
00031 {
00032   typedef  Arrangement_                                  Arrangement;
00033   typedef typename Arrangement::Face_iterator            Face_iterator;
00034   typedef typename Arrangement::Halfedge_iterator        Halfedge_iterator;
00035   typedef Gps_bfs_join_visitor<Arrangement>              Self;
00036   typedef Gps_bfs_base_visitor<Arrangement, Self>        Base;
00037   typedef typename Base::Edges_hash                      Edges_hash;
00038   typedef typename Base::Faces_hash                      Faces_hash;
00039 
00040 public:
00041 
00042   Gps_bfs_join_visitor(Edges_hash* edges_hash, Faces_hash* faces_hash, unsigned int n_pgn): 
00043     Base(edges_hash, faces_hash, n_pgn)
00044   {}
00045 
00047 
00052   bool contained_criteria(unsigned int ic)
00053   {
00054     // at least one polygon contains the face.
00055     return (ic > 0);
00056   }
00057 
00058   void after_scan(Arrangement&)
00059   {}
00060 
00061 };
00062 
00063 CGAL_END_NAMESPACE
00064 
00065 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines