home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / c++io.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  3KB  |  86 lines

  1. // underlying io library  -*- C++ -*-
  2.  
  3. // Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
  4. //
  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)
  9. // any later version.
  10.  
  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.
  15.  
  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,
  19. // USA.
  20.  
  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.
  29.  
  30. // c_io_stdio.h - Defines for using "C" stdio.h
  31.  
  32. #ifndef _C_IO_STDIO_H
  33. #define _C_IO_STDIO_H 1
  34.  
  35. #include <cstdio>
  36. #include <cstddef>
  37. #include <bits/gthr.h>
  38.  
  39. namespace std 
  40. {
  41.   typedef __gthread_mutex_t __c_lock;
  42.  
  43.   // for basic_file.h
  44.   typedef FILE __c_file;
  45.  
  46.   // for ios_base.h
  47.   struct __ios_flags
  48.   {
  49.     typedef short __int_type;
  50.  
  51.     static const __int_type _S_boolalpha =    0x0001;
  52.     static const __int_type _S_dec =        0x0002;
  53.     static const __int_type _S_fixed =         0x0004;
  54.     static const __int_type _S_hex =        0x0008;
  55.     static const __int_type _S_internal =     0x0010;
  56.     static const __int_type _S_left =       0x0020;
  57.     static const __int_type _S_oct =        0x0040;
  58.     static const __int_type _S_right =        0x0080;
  59.     static const __int_type _S_scientific =    0x0100;
  60.     static const __int_type _S_showbase =       0x0200;
  61.     static const __int_type _S_showpoint =    0x0400;
  62.     static const __int_type _S_showpos =    0x0800;
  63.     static const __int_type _S_skipws =        0x1000;
  64.     static const __int_type _S_unitbuf =    0x2000;
  65.     static const __int_type _S_uppercase =    0x4000;
  66.     static const __int_type _S_adjustfield =    0x0020 | 0x0080 | 0x0010;
  67.     static const __int_type _S_basefield =    0x0002 | 0x0040 | 0x0008;
  68.     static const __int_type _S_floatfield =    0x0100 | 0x0004;
  69.  
  70.     // 27.4.2.1.3  Type ios_base::iostate
  71.     static const __int_type _S_badbit =        0x01;
  72.     static const __int_type _S_eofbit =        0x02;
  73.     static const __int_type _S_failbit =           0x04;
  74.  
  75.     // 27.4.2.1.4  Type openmode
  76.     static const __int_type _S_app =        0x01;
  77.     static const __int_type _S_ate =        0x02;
  78.     static const __int_type _S_bin =        0x04;
  79.     static const __int_type _S_in =        0x08;
  80.     static const __int_type _S_out =        0x10;
  81.     static const __int_type _S_trunc =        0x20;
  82.   };
  83. }
  84.  
  85. #endif
  86.