|
|
1.1 ! root 1: /*ident "@(#)ctrans:incl/strstream.h 1.1.1.1" */ ! 2: /************************************************************************** ! 3: Copyright (c) 1984 AT&T ! 4: All Rights Reserved ! 5: ! 6: THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T ! 7: ! 8: The copyright notice above does not evidence any ! 9: actual or intended publication of such source code. ! 10: ! 11: *****************************************************************************/ ! 12: #ifndef STRSTREAMH ! 13: #define STRSTREAMH ! 14: ! 15: #include <iostream.h> ! 16: class strstreambuf : public streambuf ! 17: { ! 18: public: ! 19: strstreambuf() ; ! 20: strstreambuf(int) ; ! 21: strstreambuf(void* (*a)(long), void (*f)(void*)) ; ! 22: strstreambuf(char* b, int size, char* pstart = 0 ) ; ! 23: strstreambuf(unsigned char* b, int size, unsigned char* pstart = 0 ) ; ! 24: void freeze(int n=1) ; ! 25: char* str() ; ! 26: ~strstreambuf() ; ! 27: ! 28: public: /* virtuals */ ! 29: virtual int doallocate() ; ! 30: virtual int overflow(int) ; ! 31: virtual int underflow() ; ! 32: virtual streambuf* ! 33: setbuf(char* p, int l) ; ! 34: virtual streampos ! 35: seekoff(streamoff,ios::seek_dir,int) ; ! 36: ! 37: private: ! 38: void init(char*,int,char*) ; ! 39: ! 40: void* (*afct)(long) ; ! 41: void (*ffct)(void*) ; ! 42: int ignore_oflow ; ! 43: int froozen ; ! 44: int auto_extend ; ! 45: ! 46: public: ! 47: } ; ! 48: ! 49: class strstreambase : public virtual ios { ! 50: public: ! 51: strstreambuf* rdbuf() ; ! 52: protected: ! 53: strstreambase(char*, int, char*) ; ! 54: strstreambase() ; ! 55: ~strstreambase() ; ! 56: private: ! 57: strstreambuf buf ; ! 58: } ; ! 59: ! 60: class istrstream : public strstreambase, public istream { ! 61: public: ! 62: istrstream(char* str); ! 63: istrstream(char* str, int size ) ; ! 64: ~istrstream() ; ! 65: } ; ! 66: ! 67: class ostrstream : public strstreambase, public ostream { ! 68: public: ! 69: ostrstream(char* str, int size, int=ios::out) ; ! 70: ostrstream() ; ! 71: ~ostrstream() ; ! 72: char* str() ; ! 73: int pcount() ; ! 74: } ; ! 75: ! 76: ! 77: class strstream : public strstreambase, public iostream { ! 78: public: ! 79: strstream() ; ! 80: strstream(char* str, int size, int mode) ; ! 81: ~strstream() ; ! 82: char* str() ; ! 83: } ; ! 84: ! 85: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.