home *** CD-ROM | disk | FTP | other *** search
- /* stdiostream.h -- class stdiobuf and stdiostream declarations
-
- Copyright (c) 1990, 1991 by Borland International
- All rights reserved
-
- NOTE: These are inefficient and obsolete. Use the standard classes and
- functions in <fstream.h> instead.
- */
-
- #ifndef __cplusplus
- #error Must use C++ for the type stdiostream.
- #endif
-
- #ifndef __STDSTREAM_H
- #define __STDSTREAM_H
-
- #if !defined( __DEFS_H )
- #include <_defs.h>
- #endif
-
- #if !defined( __IOSTREAM_H )
- #include <iostream.h>
- #endif
-
- #if !defined( __STDIO_H )
- #include <stdio.h>
- #endif
-
- #pragma option -Vo-
-
- _CLASSDEF(stdiobuf)
- _CLASSDEF(stdiostream)
-
- class _CLASSTYPE stdiobuf : public streambuf {
- public:
- _Cdecl stdiobuf(FILE *);
- FILE * _Cdecl stdiofile();
- _Cdecl ~stdiobuf();
-
- virtual int _Cdecl overflow(int=EOF);
- virtual int _Cdecl pbackfail(int);
- virtual int _Cdecl sync();
- virtual streampos _Cdecl seekoff(streamoff, ios::seek_dir, int);
- virtual int _Cdecl underflow();
-
- private:
- FILE * sio;
- char lahead[2];
- };
- inline FILE * _Cdecl stdiobuf::stdiofile() { return sio; }
-
-
- class _CLASSTYPE stdiostream : public ios {
- public:
- _Cdecl stdiostream(FILE *);
- _Cdecl ~stdiostream();
- stdiobuf * _Cdecl rdbuf();
-
- private:
- stdiobuf buf;
- };
- inline stdiobuf * _Cdecl stdiostream::rdbuf() { return &buf; }
-
- #pragma option -Vo.
-
- #endif
-