// Copyright (c) 1997 ETH Zurich (Switzerland). // All rights reserved. // // This file is part of CGAL (www.cgal.org). // You can redistribute it and/or modify it under the terms of the GNU // 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$ // SPDX-License-Identifier: GPL-3.0+ // // // Author(s) : Lutz Kettner #ifndef CGAL_IO_SCAN_OFF_H #define CGAL_IO_SCAN_OFF_H 1 #include #include #include #include namespace CGAL { template < class Traits, class Items, template < class T, class I, class A> class HDS, class Alloc> void scan_OFF( std::istream& in, Polyhedron_3& P, File_header_OFF& header) { // reads a polyhedron from `in' and appends it to P. // Returns also the File_header_OFF structure of the object. typedef Polyhedron_3 Polyhedron; typedef typename Polyhedron::HalfedgeDS HalfedgeDS; typedef Polyhedron_scan_OFF Scanner; Scanner scanner( in, header.verbose()); P.delegate(scanner); header = scanner.header(); } template < class Traits, class Items, template < class T, class I, class A> class HDS, class Alloc> void scan_OFF( std::istream& in, Polyhedron_3& P, bool verbose = false) { // reads a polyhedron from `in' and appends it to P. typedef Polyhedron_3 Polyhedron; typedef typename Polyhedron::HalfedgeDS HalfedgeDS; typedef Polyhedron_scan_OFF Scanner; Scanner scanner( in, verbose); P.delegate(scanner); } } //namespace CGAL #endif // CGAL_IO_SCAN_OFF_H // // EOF //