//  iomanip : headerfile for the free standard C++ library
//  
//  Copyright (C) 1999 by the free standard C++ Library Team
//                        see AUTHORS for more details
//
//  Homepage : http://www.inf.fu-berlin.de/~mkrueger/fscl/
//
//  This library is free software; you can redistribute it and/or
//  modify it under the terms of the GNU Library General Public
//  License as published by the Free Software Foundation; either	
//  version 2 of the License, or (at your option) any later version.
//
//  This library is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
//  Library General Public License for more details.
//  You should have received a copy of the GNU Library General Public
//  License along with this library; if not, write to the Free
//  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
//  version : 0.1 last modified : 17.09.99


#ifndef __CPP_IOMANIP
#define __CPP_IOMANIP

#include<cstddef>
#include<new>

#include<ios>

namespace std {
	
	// Types T1, T2, ... are unspecified
	// implementation types
	
	typedef void T1;
	typedef void T2;
	typedef void T3;
	typedef void T4;
	typedef void T5;
	typedef void T6;
	
	T1 resetiosflags(ios_base::fmtflags mask)
	{
		curfmt.flags &= ~mask;
	}
	

	T3 setbase(int base)
	{
		curfmt.base = base;
	}

	T2 setiosflags  (ios_base::fmtflags mask)
	{
		if (mask & ios_base::hex)
			setbase(16);

		if (mask & ios_base::oct)
			setbase(8);

		if (mask & ios_base::dec)
			setbase(10);

		curfmt.flags |= mask;
	}

/*	
	template<charT>
	T4 setfill(charT c)
	{
		curfmt.fill = (int)c;
	}
*/	
	T5 setprecision(int n)
	{
		curfmt.prec = n;
	}
	
	T6 setw(int n)
	{
		curfmt.width = n;
	}
}

#endif
