Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
Advanced Tools Module Reference Guide
Rogue Wave web site:  Home Page  |  Main Documentation Page

RWChainedMemoryStreambuf

Module:  Advanced Tools   Package:  Streams


RWChainedMemoryStreambuf std::streambuf

Local Index

Members

Header File

#include <rw/stream/RWChainedMemoryStreambuf.h>

Description

Class RWChainedMemoryStreambuf implements the iostreams std::streambuf interface. It provides increased performance characteristic over using classes strstreambuf or stringbuf, because it uses efficient internal data structures and reduces the amount of data copying. In addition RWChainedMemoryStreambuf can be used to store binary data and will return the number of bytes currently being stored. RWChainedMemoryStreambuf creates a linked list of buffers, so that data is not copied as the number of characters is increased.

Member Typedefs

typedef char char_type                             char_type 
typedef streambuf::char_type                     traits_type 

Public Constructor

RWChainedMemoryStreambuf();

Public Destructor

virtual
~RWChainedMemoryStreambuf();

Public Member Functions

void 
clear();
int 
in_avail() const;
RWSize 
num_avail() const;
int 
out_waiting() const;
RWChainedMemoryStreambuf(const char_type* s, RWSize len);
char_type* 
str();

Protected Member Functions

virtual int_type
overflow(int_type c = traits_type::eof());
virtual int 
overflow(int c=EOF); 
virtual int_type
pbackfail(int_type c = traits_type::eof());
virtual int 
pbackfail(int c= EOF);
virtual pos_type
seekoff(off_type off, ios_base::seekdir way, 
     ios_base::openmode which = ios_base::in | ios_base::out);
virtual streampos
seekoff(streamoff offset, ios::seek_dir dir, 
        int mode= ios::in | ios::out);
virtual pos_type
seekpos(pos_type sp, ios_base::openmode 
        which = ios_base::in | ios_base::out);
virtual streampos
seekpos(streampos, int mode= ios::in | ios::out);
virtual int 
showmanyc();
virtual int 
sync(); 
virtual int_type 
underflow();
virtual int 
underflow();
virtual streamsize 
xsgetn(char_type* s, streamsize n);
virtual int 
xsgetn(char_type* s, int n);
virtual streamsize
xsputn(const char_type* s, streamsize n);
virtual int 
xsputn(const char_type* s, int n);


Previous fileTop of DocumentContentsIndex pageNext file

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.