logo top
Main Page   Widgets   glibmm Namespaces   Book  

Gio::BufferedOutputStream Class Reference
[Stream Classes]

The buffered output stream implements FilterOutputStream and provides for buffered writes. More...

Inheritance diagram for Gio::BufferedOutputStream:

Inheritance graph
[legend]

List of all members.

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.

Static Public Member Functions

static Glib::RefPtr
<BufferedOutputStream
create (const Glib::RefPtr<OutputStream>& base_stream)
static Glib::RefPtr
<BufferedOutputStream
create_sized (const Glib::RefPtr<OutputStream>& base_stream, gsize size)

Protected Member Functions

 BufferedOutputStream (const Glib::RefPtr<OutputStream>& base_stream)
 BufferedOutputStream (const Glib::RefPtr<OutputStream>& base_stream, gsize 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.

Since glibmm 2.16:

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  size 
) [explicit, protected]


Member Function Documentation

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.

static Glib::RefPtr<BufferedOutputStream> Gio::BufferedOutputStream::create ( const Glib::RefPtr<OutputStream>&  base_stream  )  [static]

Reimplemented in Gio::DataOutputStream.

static Glib::RefPtr<BufferedOutputStream> Gio::BufferedOutputStream::create_sized ( const Glib::RefPtr<OutputStream>&  base_stream,
gsize  size 
) [static]

gsize Gio::BufferedOutputStream::get_buffer_size (  )  const

Gets the size of the buffer in the stream.

Returns:
The current size of the buffer.

void Gio::BufferedOutputStream::set_buffer_size ( gsize  size  ) 

Sets the size of the internal buffer to size.

Parameters:
size A gsize.

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.

bool Gio::BufferedOutputStream::get_auto_grow (  )  const

Checks if the buffer automatically grows as data is added.

Returns:
true if the stream's buffer automatically grows, false otherwise.


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.


The documentation for this class was generated from the following file:

Generated for glibmm 2.4 by Doxygen 1.5.3 © 1997-2001