glibmm: Gio::BufferedOutputStream Class Reference
The buffered output stream implements FilterOutputStream and provides for buffered writes. More...
#include <giomm/bufferedoutputstream.h>

Public Member Functions | |
| virtual | ~BufferedOutputStream () |
| GBufferedOutputStream* | gobj () |
| Provides access to the underlying C GObject. | |
| const GBufferedOutputStream* | gobj () const |
| Provides access to the underlying C GObject. | |
| GBufferedOutputStream* | gobj_copy () |
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
| gsize | get_buffer_size () const |
| Gets the size of the buffer in the stream. | |
| void | set_buffer_size (gsize size) |
| Sets the size of the internal buffer to size. | |
| void | set_auto_grow (bool auto_grow=true) |
| Sets whether or not the stream's buffer should automatically grow. | |
| bool | get_auto_grow () const |
| Checks if the buffer automatically grows as data is added. | |
| Glib::PropertyProxy< guint > | property_buffer_size () |
| The size of the backend buffer. | |
| Glib::PropertyProxy_ReadOnly < guint > | property_buffer_size () const |
| The size of the backend buffer. | |
| Glib::PropertyProxy< bool > | property_auto_grow () |
| Whether the buffer should automatically grow. | |
| Glib::PropertyProxy_ReadOnly < bool > | property_auto_grow () const |
| Whether the buffer should automatically grow. | |
Static Public Member Functions | |
| static Glib::RefPtr < BufferedOutputStream > | create (const Glib::RefPtr< OutputStream >& base_stream) |
| Creates a new buffered output stream for a base stream. | |
| static Glib::RefPtr < BufferedOutputStream > | create_sized (const Glib::RefPtr< OutputStream >& base_stream, gsize buffer_size) |
| Creates a new buffered output stream with a given buffer size. | |
Protected Member Functions | |
| BufferedOutputStream (const Glib::RefPtr< OutputStream >& base_stream) | |
| BufferedOutputStream (const Glib::RefPtr< OutputStream >& base_stream, gsize buffer_size) | |
Related Functions | |
(Note that these are not member functions.) | |
| Glib::RefPtr < Gio::BufferedOutputStream > | wrap (GBufferedOutputStream* object, bool take_copy=false) |
| A Glib::wrap() method for this object. | |
Detailed Description
The buffered output stream implements FilterOutputStream and provides for buffered writes.
By default, BufferedOutputStream's buffer size is set at 4 kilobytes, but you can specify this to the constructor.
To get the size of a buffer within a buffered input stream, use get_buffer_size(). To change the size of a buffered output stream's buffer, use set_buffer_size(). Note that the buffer's size cannot be reduced below the size of the data within the buffer.
Constructor & Destructor Documentation
| virtual Gio::BufferedOutputStream::~BufferedOutputStream | ( | ) | [virtual] |
| Gio::BufferedOutputStream::BufferedOutputStream | ( | const Glib::RefPtr< OutputStream >& | base_stream | ) | [explicit, protected] |
| Gio::BufferedOutputStream::BufferedOutputStream | ( | const Glib::RefPtr< OutputStream >& | base_stream, |
| gsize | buffer_size | ||
| ) | [explicit, protected] |
Member Function Documentation
| static Glib::RefPtr<BufferedOutputStream> Gio::BufferedOutputStream::create | ( | const Glib::RefPtr< OutputStream >& | base_stream | ) | [static] |
Creates a new buffered output stream for a base stream.
- Parameters:
-
base_stream An InputStream.
- Returns:
- an OutputStream for the given base stream.
Reimplemented in Gio::DataOutputStream.
| static Glib::RefPtr<BufferedOutputStream> Gio::BufferedOutputStream::create_sized | ( | const Glib::RefPtr< OutputStream >& | base_stream, |
| gsize | buffer_size | ||
| ) | [static] |
Creates a new buffered output stream with a given buffer size.
- Parameters:
-
base_stream An InputStream. size A size.
- Returns:
- an OutputStream with an internal buffer set to size.
| bool Gio::BufferedOutputStream::get_auto_grow | ( | ) | const |
Checks if the buffer automatically grows as data is added.
- Returns:
trueif the stream's buffer automatically grows,falseotherwise.
| gsize Gio::BufferedOutputStream::get_buffer_size | ( | ) | const |
Gets the size of the buffer in the stream.
- Returns:
- The current size of the buffer.
| GBufferedOutputStream* Gio::BufferedOutputStream::gobj | ( | ) | [inline] |
Provides access to the underlying C GObject.
Reimplemented from Gio::FilterOutputStream.
Reimplemented in Gio::DataOutputStream.
| const GBufferedOutputStream* Gio::BufferedOutputStream::gobj | ( | ) | const [inline] |
Provides access to the underlying C GObject.
Reimplemented from Gio::FilterOutputStream.
Reimplemented in Gio::DataOutputStream.
| GBufferedOutputStream* Gio::BufferedOutputStream::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
Reimplemented from Gio::FilterOutputStream.
Reimplemented in Gio::DataOutputStream.
Whether the buffer should automatically grow.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
- Returns:
- A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
| Glib::PropertyProxy_ReadOnly< bool > Gio::BufferedOutputStream::property_auto_grow | ( | ) | const |
Whether the buffer should automatically grow.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
- Returns:
- A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
The size of the backend buffer.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
- Returns:
- A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
| Glib::PropertyProxy_ReadOnly< guint > Gio::BufferedOutputStream::property_buffer_size | ( | ) | const |
The size of the backend buffer.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
- Returns:
- A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
| void Gio::BufferedOutputStream::set_auto_grow | ( | bool | auto_grow = true | ) |
Sets whether or not the stream's buffer should automatically grow.
If auto_grow is true, then each write will just make the buffer larger, and you must manually flush the buffer to actually write out the data to the underlying stream.
- Parameters:
-
auto_grow A bool.
| void Gio::BufferedOutputStream::set_buffer_size | ( | gsize | size | ) |
Sets the size of the internal buffer to size.
- Parameters:
-
size A #gsize.
Friends And Related Function Documentation
| Glib::RefPtr< Gio::BufferedOutputStream > wrap | ( | GBufferedOutputStream * | object, |
| bool | take_copy = false |
||
| ) | [related] |
A Glib::wrap() method for this object.
- Parameters:
-
object The C instance. take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
- Returns:
- A C++ instance that wraps this C instance.
