Panda3D
Public Member Functions | Protected Member Functions

SubStreamBuf Class Reference

The streambuf object that implements ISubStream. More...

#include "subStreamBuf.h"

List of all members.

Public Member Functions

void close ()
void open (IStreamWrapper *source, streampos start, streampos end)
virtual streampos seekoff (streamoff off, ios_seekdir dir, ios_openmode mode)
 Implements seeking within the stream.
virtual streampos seekpos (streampos pos, ios_openmode mode)
 A variant on seekoff() to implement seeking within a stream.

Protected Member Functions

virtual int overflow (int c)
 Called by the system ostream implementation when its internal buffer is filled, plus one character.
virtual int sync ()
 Called by the system iostream implementation to implement a flush operation.
virtual int underflow ()
 Called by the system istream implementation when its internal buffer needs more characters.

Detailed Description

The streambuf object that implements ISubStream.

Definition at line 25 of file subStreamBuf.h.


Member Function Documentation

int SubStreamBuf::overflow ( int  c) [protected, virtual]

Called by the system ostream implementation when its internal buffer is filled, plus one character.

Definition at line 192 of file subStreamBuf.cxx.

streampos SubStreamBuf::seekoff ( streamoff  off,
ios_seekdir  dir,
ios_openmode  mode 
) [virtual]

Implements seeking within the stream.

Definition at line 115 of file subStreamBuf.cxx.

References IStreamWrapper::seek_gpos_eof().

Referenced by seekpos().

streampos SubStreamBuf::seekpos ( streampos  pos,
ios_openmode  mode 
) [virtual]

A variant on seekoff() to implement seeking within a stream.

The MSDN Library claims that it is only necessary to redefine seekoff(), and not seekpos() as well, as the default implementation of seekpos() is supposed to map to seekoff() exactly as I am doing here; but in fact it must do something else, because seeking didn't work on Windows until I redefined this function as well.

Definition at line 181 of file subStreamBuf.cxx.

References seekoff().

int SubStreamBuf::sync ( void  ) [protected, virtual]

Called by the system iostream implementation to implement a flush operation.

Definition at line 204 of file subStreamBuf.cxx.

int SubStreamBuf::underflow ( void  ) [protected, virtual]

Called by the system istream implementation when its internal buffer needs more characters.

Definition at line 218 of file subStreamBuf.cxx.

References IStreamWrapper::seek_read().


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations