1 // underlying io library -*- C++ -*-
3 // Copyright (C) 2000, 2001 Free Software Foundation, Inc.
5 // This file is part of the GNU ISO C++ Library. This library is free
6 // software; you can redistribute it and/or modify it under the
7 // terms of the GNU General Public License as published by the
8 // Free Software Foundation; either version 2, or (at your option)
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License along
17 // with this library; see the file COPYING. If not, write to the Free
18 // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
21 // As a special exception, you may use this file as part of a free software
22 // library without restriction. Specifically, if other files instantiate
23 // templates or use macros or inline functions from this file, or you compile
24 // this file and link it with other files to produce an executable, this
25 // file does not by itself cause the resulting executable to be covered by
26 // the GNU General Public License. This exception does not however
27 // invalidate any other reasons why the executable file might be covered by
28 // the GNU General Public License.
30 // c_io_stdio.h - Defines for using "C" stdio.h
32 #ifndef _CPP_IO_STDIO_H
33 #define _CPP_IO_STDIO_H 1
37 #include <bits/gthr.h>
42 typedef long streamoff;
43 typedef ptrdiff_t streamsize; // Signed integral type
44 #if _GLIBCPP_USE_WCHAR_T
45 typedef ptrdiff_t wstreamsize;
47 typedef fpos_t __c_streampos;
49 typedef __gthread_mutex_t __c_lock;
52 #define _GLIBCPP_BASIC_FILE_ENCAPSULATION 1
53 typedef FILE __c_file_type;
58 typedef short __int_type;
60 static const __int_type _S_boolalpha = 0x0001;
61 static const __int_type _S_dec = 0x0002;
62 static const __int_type _S_fixed = 0x0004;
63 static const __int_type _S_hex = 0x0008;
64 static const __int_type _S_internal = 0x0010;
65 static const __int_type _S_left = 0x0020;
66 static const __int_type _S_oct = 0x0040;
67 static const __int_type _S_right = 0x0080;
68 static const __int_type _S_scientific = 0x0100;
69 static const __int_type _S_showbase = 0x0200;
70 static const __int_type _S_showpoint = 0x0400;
71 static const __int_type _S_showpos = 0x0800;
72 static const __int_type _S_skipws = 0x1000;
73 static const __int_type _S_unitbuf = 0x2000;
74 static const __int_type _S_uppercase = 0x4000;
75 static const __int_type _S_adjustfield = 0x0020 | 0x0080 | 0x0010;
76 static const __int_type _S_basefield = 0x0002 | 0x0040 | 0x0008;
77 static const __int_type _S_floatfield = 0x0100 | 0x0004;
79 // 27.4.2.1.3 Type ios_base::iostate
80 static const __int_type _S_badbit = 0x01;
81 static const __int_type _S_eofbit = 0x02;
82 static const __int_type _S_failbit = 0x04;
84 // 27.4.2.1.4 Type openmode
85 static const __int_type _S_app = 0x01;
86 static const __int_type _S_ate = 0x02;
87 static const __int_type _S_bin = 0x04;
88 static const __int_type _S_in = 0x08;
89 static const __int_type _S_out = 0x10;
90 static const __int_type _S_trunc = 0x20;
94 #endif // _CPP_IO_STDIO_H