StreamWriter Class Reference
StreamWriter implements buffered writes to IO objects.
#include <Stream.h>
List of all members.
Public Member Functions |
| ~StreamWriter (void) |
| StreamWriter (void) |
void | init (IO *io, bool open, size_t bufferSize=DefaultBufferSize) |
| Initalize the writer.
|
void | open (size_t bufferSize=DefaultBufferSize) |
| Open the IO object.
|
void | close (bool doFlush=true) |
| Close the IO object.
|
void | flush (void) |
| Flush the memory buffer.
|
void | seek (offset_type offset, Mode whence) |
| Set the file offset.
|
offset_type | tell (void) |
| Get the current file offset.
|
size_t | write (const void *buf, size_t nbytes) |
| Write data.
|
template<typename TYPE > |
bool | put_le (TYPE value) |
| Write little endian data.
|
template<typename TYPE > |
bool | put_be (TYPE value) |
| Write little endian data.
|
bool | put_str (const char *str, size_t length=static_cast< size_t >(-1)) |
| Write a string.
|
bool | copy (IO *io, offset_type offset, offset_type length) |
| Copy data from an IO object.
|
bool | copy (IO::Location &location) |
| Copy data from an IO object.
|
bool | copy (StreamReader &stream, offset_type length) |
| Copy data from an ReaderStream.
|
Detailed Description
Definition at line 204 of file Stream.h.
Constructor & Destructor Documentation
StreamWriter::~StreamWriter |
( |
void |
|
) |
|
StreamWriter::StreamWriter |
( |
void |
|
) |
|
Member Function Documentation
void StreamWriter::close |
( |
bool |
doFlush = true |
) |
|
This method flushs any buffered data if doFlush is true and then closes the underlying IO object.
This method copies the next length bytes from stream
- Parameters:
-
| stream | the source stream |
| length | the number of bytes to copy |
- Returns:
- true for success
This method copies the data pointed to by location.
- Parameters:
-
| location | the location of the data |
- Returns:
- true for success
This method copies length bytes for io at offset.
- Parameters:
-
| io | the source IO object |
| offset | the byte offset to source data |
| length | the number of bytes to copy |
- Returns:
- true for success
void StreamWriter::flush |
( |
void |
|
) |
|
This method wirtes any buffered data to the IO object.
void StreamWriter::init |
( |
IO * |
io, |
|
|
bool |
open, |
|
|
size_t |
bufferSize = DefaultBufferSize | |
|
) |
| | |
This method binds the stream to a IO object.
- Parameters:
-
| io | the destination IO object |
| open | if true init() will call open() |
| bufferSize | the buffer size that is passed to open() |
void StreamWriter::open |
( |
size_t |
bufferSize = DefaultBufferSize |
) |
|
This method opens the underlying IO object,
- Parameters:
-
| bufferSize | the size of buffered writes |
template<typename TYPE >
bool StreamWriter::put_be |
( |
TYPE |
value |
) |
[inline] |
template<typename TYPE >
bool StreamWriter::put_le |
( |
TYPE |
value |
) |
[inline] |
This method writes sizeof(TYPE) bytes in little endian format.
- Parameters:
-
- Returns:
- true for success
Definition at line 283 of file Stream.h.
References HOST_IS_BIG_ENDIAN, and write().
bool StreamWriter::put_str |
( |
const char * |
str, |
|
|
size_t |
length = static_cast< size_t >(-1) | |
|
) |
| | |
This method writes the string with given length.
- Parameters:
-
| str | the source string |
| length | the number of bytes to write if length is -1 put_str() uses the null terminator length. |
- Returns:
- true for success
This method flushs any beffered data then sets the file offset. See Mode for offset origin.
- Parameters:
-
| offset | number bytes to move |
| whence | the origin of movement |
This method get the current file offset.
size_t StreamWriter::write |
( |
const void * |
buf, |
|
|
size_t |
nbytes | |
|
) |
| | |
This method writes nbytes from the given buffer.
- Parameters:
-
| buf | the source buffer |
| nbytes | the number of bytes to write |
- Returns:
- the number bytes actually written
Referenced by put_be(), and put_le().
The documentation for this class was generated from the following file: