From b376e9f1bc7c69b118010e47b81bd3a446b649f7 Mon Sep 17 00:00:00 2001 From: Eric Berberich Date: Tue, 10 Feb 2009 13:40:07 +0000 Subject: [PATCH] move to exp branch --- .../IO/Algebraic_surface_3_iostream.h | 203 ------------------ 1 file changed, 203 deletions(-) delete mode 100644 Algebraic_kernel_d/include/CGAL/Algebraic_kernel_d/IO/Algebraic_surface_3_iostream.h diff --git a/Algebraic_kernel_d/include/CGAL/Algebraic_kernel_d/IO/Algebraic_surface_3_iostream.h b/Algebraic_kernel_d/include/CGAL/Algebraic_kernel_d/IO/Algebraic_surface_3_iostream.h deleted file mode 100644 index 1290dd68de2..00000000000 --- a/Algebraic_kernel_d/include/CGAL/Algebraic_kernel_d/IO/Algebraic_surface_3_iostream.h +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright (c) 2003-2008 Max-Planck-Institute Saarbruecken (Germany), -// and Tel-Aviv University (Israel). 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 Lesser General Public License as -// published by the Free Software Foundation; version 2.1 of the License. -// See the file LICENSE.LGPL distributed with CGAL. -// -// 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$ -// -// -// Author(s) : Eric Berberich - -#ifndef CGAL_ALGEBRAIC_KERNEL_D_ALGEBRAIC_SURFACE_3_IOSTREAM_H -#define CGAL_ALGEBRAIC_KERNEL_D_ALGEBRAIC_SURFACE_3_IOSTREAM_H 1 - -/*! \file include/CGAL/Algebraic_kernel_d/IO/Algebraic_surface_3_iostream.h - * \brief IO operator for Algebraic_surface_3 - */ - -#include -#include - -#include -//#include - -#include - -#include - -CGAL_BEGIN_NAMESPACE - -/*! \brief extracts a trivariate polynomial from a stream - */ -template < class Coefficient > -void input_polynomial_3( - std::istream& is, - CGAL::Polynomial< CGAL::Polynomial< CGAL::Polynomial< Coefficient > > >& p) { - - CGAL_precondition(CGAL::get_mode(is) != CGAL::IO::PRETTY); - - //! type of defining polynomial - typedef typename - CGAL::Polynomial_type_generator< Coefficient, 3 >::Type Poly_coeff_3; - - Poly_coeff_3 input_poly; - - switch (CGAL::get_mode(is)) { - case CGAL::IO::ASCII: - char c; - is >> c; - if (c == 'P' || c == 'p') { - is >> input_poly; - } - break; - case ::CGAL::IO::BINARY: - CGAL_error_msg("Binary input for Algebraic_surface_3 not implemented"); - break; - default: - CGAL_error_msg("Pretty input for Algebraic_surface_3 not allowed"); - break; - } - - p = input_poly; - - return; -} - -#if 0 - -template< class ArithmeticKernel > -class Benchmark_rep< CGAL::Algebraic_surface_3< ArithmeticKernel > > { - const CGAL::Algebraic_surface_3< ArithmeticKernel >& t; -public: - //! initialize with a const reference to \a t. - Benchmark_rep( const CGAL::Algebraic_surface_3< ArithmeticKernel >& tt) : - t(tt) { - } - - //! perform the output, calls \c operator\<\< by default. - std::ostream& operator()( std::ostream& out) const { - CGAL_error_msg("Benchmark output for Algebraic_surface_3 not implemented"); - return out << "Algebraic_surface_3(" -#if 0 - << bmformat( CGAL::coefficient(t.f(), 2,0,0) ) << "," - << bmformat( CGAL::coefficient(t.f(), 1,1,0) ) << "," - << bmformat( CGAL::coefficient(t.f(), 1,0,1) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,2,0) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,1,1) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,0,2) ) << "," - << bmformat( CGAL::coefficient(t.f(), 1,0,0) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,1,0) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,0,1) ) << "," - << bmformat( CGAL::coefficient(t.f(), 0,0,0) ) -#endif - << ")"; - } -}; - -#endif - -/*! \brief inserts \a quadric into output stream \a os - * \relates Quadric_3 - */ -template < class ArithmeticKernel > -std::ostream& operator<<( - std::ostream& os, - const CGAL::Algebraic_surface_3< ArithmeticKernel >& surface) { - - switch (CGAL::get_mode(os)) { - case CGAL::IO::PRETTY: - os << surface.f(); - break; - case CGAL::IO::ASCII: - // write only polynomial (P). We do not know interpolation points (I) - os << "P "; - os << surface.f(); - break; - case CGAL::IO::BINARY: - CGAL_error_msg("Binary output for Algebraic_surface_3 not implemented"); - break; - default: - break; - } - - return os; -} - - -/*! \brief extracts an algebraic surface from the input - * stream \a is and stores it in \a surface - */ -template < class ArithmeticKernel > -std::istream& operator>>( - std::istream& is, - CGAL::Algebraic_surface_3< ArithmeticKernel >& surface) { - - typedef ArithmeticKernel Arithmetic_kernel; - - //! type of integer - typedef typename Arithmetic_kernel::Integer Integer; - - //! type of defining polynomial - typedef typename - CGAL::Polynomial_type_generator< Integer, 3 >::Type Poly_int_3; - - Poly_int_3 input_poly; - - CGAL::input_polynomial_3< Integer >(is, input_poly); - - surface = Algebraic_surface_3< ArithmeticKernel >(input_poly); - - return is; -} - - -template < class ArithmeticKernel, class OutputIterator > -bool read_file(const char *filename, OutputIterator result) { - - typedef ArithmeticKernel Arithmetic_kernel; - - //! type of integer - typedef typename Arithmetic_kernel::Integer Integer; - - //! type of defining polynomial - typedef typename - CGAL::Polynomial_type_generator< Integer, 3 >::Type Poly_int_3; - - std::ifstream file(filename); - - if (!file) { - return false; - } - - std::string header; - file >> header; - - int n = atoi(header.c_str()); - Poly_int_3 p; - std::vector< Poly_int_3 > temp; - for (int i = 0; i < n; i++) { - CGAL::input_polynomial_3< Integer >(file, p); - //*result++ = p; - temp.push_back(p); - } - - std::copy(temp.begin(), temp.end(), result); - - file.close(); - return true; -} - -CGAL_END_NAMESPACE - -#endif // CGAL_ALGEBRAIC_KERNEL_D_ALGEBRAIC_SURFACE_3_IOSTREAM_H -// EOF