![]() |
OGRE-Next 3.0.0
Object-Oriented Graphics Rendering Engine
|
General purpose class used for encapsulating the reading and writing of data. More...
#include <OgreDataStream.h>
Public Types | |
enum | AccessMode { READ = 1 , WRITE = 2 } |
Public Member Functions | |
DataStream (const String &name, uint16 accessMode=READ) | |
Constructor for creating named streams. | |
DataStream (uint16 accessMode=READ) | |
Constructor for creating unnamed streams. | |
virtual | ~DataStream () |
virtual void | close ()=0 |
Close the stream; this makes further operations invalid. | |
virtual bool | eof () const =0 |
Returns true if the stream has reached the end. | |
uint16 | getAccessMode () const |
Gets the access mode of the stream. | |
virtual String | getAsString () |
Returns a String containing the entire stream. | |
virtual String | getLine (bool trimAfter=true) |
Returns a String containing the next line of data, optionally trimmed for whitespace. | |
const String & | getName () |
Returns the name of the stream, if it has one. | |
virtual bool | isReadable () const |
Reports whether this stream is readable. | |
virtual bool | isWriteable () const |
Reports whether this stream is writeable. | |
template<typename T> | |
DataStream & | operator>> (T &val) |
virtual size_t | read (void *buf, size_t count)=0 |
Read the requisite number of bytes from the stream, stopping at the end of the file. | |
virtual size_t | readLine (char *buf, size_t maxCount, const String &delim="\n") |
Get a single line from the stream. | |
virtual void | seek (size_t pos)=0 |
Repositions the read point to a specified byte. | |
size_t | size () const |
Returns the total size of the data to be read from the stream, or 0 if this is indeterminate for this stream. | |
virtual void | skip (long count)=0 |
Skip a defined number of bytes. | |
virtual size_t | skipLine (const String &delim="\n") |
Skip a single line from the stream. | |
virtual size_t | tell () const =0 |
Returns the current byte offset from beginning. | |
virtual size_t | write (const void *buf, size_t count) |
Write the requisite number of bytes from the stream (only applicable to streams that are not read-only) | |
General purpose class used for encapsulating the reading and writing of data.
Constructor for creating unnamed streams.
References READ.
Referenced by Ogre::MemoryDataStream::MemoryDataStream(), Ogre::MemoryDataStream::MemoryDataStream(), and operator>>().
Constructor for creating named streams.
References READ.
|
inlinevirtual |
|
pure virtual |
Close the stream; this makes further operations invalid.
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
pure virtual |
Returns true if the stream has reached the end.
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
inline |
Gets the access mode of the stream.
|
virtual |
|
virtual |
Returns a String containing the next line of data, optionally trimmed for whitespace.
trimAfter | If true, the line is trimmed for whitespace (as in String.trim(true,true)) |
|
inline |
Returns the name of the stream, if it has one.
|
inlinevirtual |
Reports whether this stream is readable.
References READ.
|
inlinevirtual |
Reports whether this stream is writeable.
References WRITE.
DataStream & Ogre::DataStream::operator>> | ( | T & | val | ) |
References DataStream().
|
pure virtual |
Read the requisite number of bytes from the stream, stopping at the end of the file.
buf | Reference to a buffer pointer |
count | Number of bytes to read |
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
virtual |
Get a single line from the stream.
buf | Reference to a buffer pointer |
maxCount | The maximum length of data to be read, excluding the terminating character |
delim | The delimiter to stop at |
Reimplemented in Ogre::FileStreamDataStream, and Ogre::MemoryDataStream.
|
pure virtual |
Repositions the read point to a specified byte.
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
inline |
Returns the total size of the data to be read from the stream, or 0 if this is indeterminate for this stream.
Referenced by Ogre::FileStreamDataStream::FileStreamDataStream(), Ogre::FileStreamDataStream::FileStreamDataStream(), Ogre::MemoryDataStream::MemoryDataStream(), Ogre::MemoryDataStream::MemoryDataStream(), Ogre::MemoryDataStream::MemoryDataStream(), and Ogre::MemoryDataStream::MemoryDataStream().
|
pure virtual |
Skip a defined number of bytes.
This can also be a negative value, in which case the file pointer rewinds a defined number of bytes.
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
virtual |
Skip a single line from the stream.
delim | The delimiter(s) to stop at |
Reimplemented in Ogre::MemoryDataStream.
|
pure virtual |
Returns the current byte offset from beginning.
Implemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.
|
inlinevirtual |
Write the requisite number of bytes from the stream (only applicable to streams that are not read-only)
buf | Pointer to a buffer containing the bytes to write |
count | Number of bytes to write |
Reimplemented in Ogre::DeflateStream, Ogre::FileHandleDataStream, Ogre::FileStreamDataStream, Ogre::MemoryDataStream, and Ogre::ZipDataStream.