glibmm  2.32.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions
Gio::DataOutputStream Class Reference

An implementation of BufferedOutputStream that allows for high-level data manipulation of arbitrary data (including binary operations). More...

#include <giomm/dataoutputstream.h>

Inheritance diagram for Gio::DataOutputStream:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~DataOutputStream ()
GDataOutputStream* gobj ()
 Provides access to the underlying C GObject.
const GDataOutputStream* gobj () const
 Provides access to the underlying C GObject.
GDataOutputStream* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void set_byte_order (DataStreamByteOrder order)
 Sets the byte order of the data output stream to order.
DataStreamByteOrder get_byte_order () const
 Gets the byte order for the stream.
bool put_byte (guchar data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts a byte into the output stream.
bool put_byte (guchar data)
 non-cancellable version of put_byte()
bool put_int16 (gint16 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts a signed 16-bit integer into the output stream.
bool put_int16 (gint16 data)
 non-cancellable version of put_int16()
bool put_uint16 (guint16 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts an unsigned 16-bit integer into the output stream.
bool put_uint16 (guint16 data)
 non-cancellable version of put_uint16()
bool put_int32 (gint32 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts a signed 32-bit integer into the output stream.
bool put_int32 (gint32 data)
 non-cancellable version of put_int32()
bool put_uint32 (guint32 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts an unsigned 32-bit integer into the stream.
bool put_uint32 (guint32 data)
 non-cancellable version of put_uint32()
bool put_int64 (gint64 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts a signed 64-bit integer into the stream.
bool put_int64 (gint64 data)
 non-cancellable version of put_int64()
bool put_uint64 (guint64 data, const Glib::RefPtr< Cancellable >& cancellable)
 Puts an unsigned 64-bit integer into the stream.
bool put_uint64 (guint64 data)
 non-cancellable version of put_uint64()
bool put_string (std::string str, const Glib::RefPtr< Cancellable >& cancellable)
 Puts a string into the output stream.
bool put_string (std::string str)
 non-cancellable version of put_string()
Glib::PropertyProxy
< DataStreamByteOrder
property_byte_order ()
 The byte order.
Glib::PropertyProxy_ReadOnly
< DataStreamByteOrder
property_byte_order () const
 The byte order.
- Public Member Functions inherited from Gio::BufferedOutputStream
virtual ~BufferedOutputStream ()
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.
- Public Member Functions inherited from Gio::FilterOutputStream
virtual ~FilterOutputStream ()
Glib::RefPtr< OutputStreamget_base_stream ()
 Gets the base stream for the filter stream.
Glib::RefPtr< const OutputStreamget_base_stream () const
 Gets the base stream for the filter stream.
bool get_close_base_stream () const
 Returns whether the base stream will be closed when stream is closed.
void set_close_base_stream (bool close_base=true)
 Sets whether the base stream will be closed when stream is closed.
Glib::PropertyProxy_ReadOnly
< Glib::RefPtr< InputStream > > 
property_base_stream () const
 The underlying base stream on which the io ops will be done.
Glib::PropertyProxy_ReadOnly
< bool > 
property_close_base_stream () const
 If the base stream should be closed when the filter stream is closed.
- Public Member Functions inherited from Gio::OutputStream
virtual ~OutputStream ()
gssize write (const void* buffer, gsize count, const Glib::RefPtr< Cancellable >& cancellable)
 Tries to write count bytes from buffer into the stream.
gssize write (const void* buffer, gsize count)
 Tries to write count bytes from buffer into the stream.
gssize write (const std::string& buffer, const Glib::RefPtr< Cancellable >& cancellable)
 Tries to write count bytes from buffer into the stream.
gssize write (const std::string& buffer)
 Tries to write count bytes from buffer into the stream.
bool write_all (const void* buffer, gsize count, gsize& bytes_written, const Glib::RefPtr< Cancellable >& cancellable)
 Tries to write count bytes from buffer into the stream.
bool write_all (const void* buffer, gsize count, gsize& bytes_written)
 Tries to write count bytes from buffer into the stream.
bool write_all (const std::string& buffer, gsize& bytes_written, const Glib::RefPtr< Cancellable >& cancellable)
 Tries to write count bytes from buffer into the stream.
bool write_all (const std::string& buffer, gsize& bytes_written)
 Tries to write count bytes from buffer into the stream.
gssize splice (const Glib::RefPtr< InputStream >& source, const Glib::RefPtr< Cancellable >& cancellable, OutputStreamSpliceFlags flags=OUTPUT_STREAM_SPLICE_NONE)
 Splices an input stream into an output stream.
gssize splice (const Glib::RefPtr< InputStream >& source, OutputStreamSpliceFlags flags=OUTPUT_STREAM_SPLICE_NONE)
 Splices an input stream into an output stream.
bool flush (const Glib::RefPtr< Cancellable >& cancellable)
 Flushed any outstanding buffers in the stream.
bool flush ()
 Flushed any outstanding buffers in the stream.
bool close (const Glib::RefPtr< Cancellable >& cancellable)
 Closes the stream, releasing resources related to it.
bool close ()
 Closes the stream, releasing resources related to it.
void write_async (const void* buffer, gsize count, const SlotAsyncReady& slot, const Glib::RefPtr< Cancellable >& cancellable, int io_priority=Glib::PRIORITY_DEFAULT)
 Request an asynchronous write of count bytes from buffer into the stream.
void write_async (const void* buffer, gsize count, const SlotAsyncReady& slot, int io_priority=Glib::PRIORITY_DEFAULT)
 Request an asynchronous write of count bytes from buffer into the stream.
gssize write_finish (const Glib::RefPtr< AsyncResult >& result)
 Finishes a stream write operation.
void splice_async (const Glib::RefPtr< InputStream >& source, const SlotAsyncReady& slot, const Glib::RefPtr< Cancellable >& cancellable, OutputStreamSpliceFlags flags=OUTPUT_STREAM_SPLICE_NONE, int io_priority=Glib::PRIORITY_DEFAULT)
 Splices a stream asynchronously.
void splice_async (const Glib::RefPtr< InputStream >& source, const SlotAsyncReady& slot, OutputStreamSpliceFlags flags=OUTPUT_STREAM_SPLICE_NONE, int io_priority=Glib::PRIORITY_DEFAULT)
 Splices a stream asynchronously.
gssize splice_finish (const Glib::RefPtr< AsyncResult >& result)
 Finishes an asynchronous stream splice operation.
void flush_async (const SlotAsyncReady& slot, const Glib::RefPtr< Cancellable >& cancellable, int io_priority=Glib::PRIORITY_DEFAULT)
 Flushes a stream asynchronously.
void flush_async (const SlotAsyncReady& slot, int io_priority=Glib::PRIORITY_DEFAULT)
 Flushes a stream asynchronously.
bool flush_finish (const Glib::RefPtr< AsyncResult >& result)
 Finishes flushing an output stream.
void close_async (const SlotAsyncReady& slot, const Glib::RefPtr< Cancellable >& cancellable, int io_priority=Glib::PRIORITY_DEFAULT)
 Requests an asynchronous close of the stream, releasing resources related to it.
void close_async (const SlotAsyncReady& slot, int io_priority=Glib::PRIORITY_DEFAULT)
 Requests an asynchronous close of the stream, releasing resources related to it.
bool close_finish (const Glib::RefPtr< AsyncResult >& result)
 Closes an output stream.
- Public Member Functions inherited from Glib::Object
void* get_data (const QueryQuark& key)
void set_data (const Quark& key, void* data)
void set_data (const Quark& key, void* data, DestroyNotify notify)
void remove_data (const QueryQuark& quark)
void* steal_data (const QueryQuark& quark)
- Public Member Functions inherited from Glib::ObjectBase
void set_property_value (const Glib::ustring& property_name, const Glib::ValueBase&value)
 You probably want to use a specific property_*() accessor method instead.
void get_property_value (const Glib::ustring& property_name, Glib::ValueBase&value) const
 You probably want to use a specific property_*() accessor method instead.
template<class PropertyType >
void set_property (const Glib::ustring& property_name, const PropertyType&value)
 You probably want to use a specific property_*() accessor method instead.
template<class PropertyType >
void get_property (const Glib::ustring& property_name, PropertyType&value) const
 You probably want to use a specific property_*() accessor method instead.
void connect_property_changed (const Glib::ustring& property_name, const sigc::slot< void >& slot)
 You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.
sigc::connection connect_property_changed_with_return (const Glib::ustring& property_name, const sigc::slot< void >& slot)
 You can use the signal_changed() signal of the property proxy instead, but this is necessary when using the reduced API.
void freeze_notify ()
 Increases the freeze count on object.
void thaw_notify ()
 Reverts the effect of a previous call to freeze_notify().
virtual void reference () const
 Increment the reference count for this object.
virtual void unreference () const
 Decrement the reference count for this object.
GObject* gobj_copy () const
 Give a ref-ed copy to someone. Use for direct struct access.
- Public Member Functions inherited from sigc::trackable
 trackable (const trackable &src)
trackableoperator= (const trackable &src)
void add_destroy_notify_callback (void *data, func_destroy_notify func) const
void remove_destroy_notify_callback (void *data) const
void notify_callbacks ()

Static Public Member Functions

static Glib::RefPtr
< DataOutputStream
create (const Glib::RefPtr< OutputStream >& base_stream)
 Creates a new buffered output stream for a base stream.
- Static Public Member Functions inherited from Gio::BufferedOutputStream
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

 DataOutputStream (const Glib::RefPtr< OutputStream >& base_stream)
- Protected Member Functions inherited from Gio::BufferedOutputStream
 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::DataOutputStream
wrap (GDataOutputStream* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Detailed Description

An implementation of BufferedOutputStream that allows for high-level data manipulation of arbitrary data (including binary operations).

Since glibmm 2.16:

Constructor & Destructor Documentation

virtual Gio::DataOutputStream::~DataOutputStream ( )
virtual
Gio::DataOutputStream::DataOutputStream ( const Glib::RefPtr< OutputStream >&  base_stream)
explicitprotected

Member Function Documentation

static Glib::RefPtr<DataOutputStream> Gio::DataOutputStream::create ( const Glib::RefPtr< OutputStream >&  base_stream)
static

Creates a new buffered output stream for a base stream.

Parameters:
base_streamAn InputStream.
Returns:
an OutputStream for the given base stream.

Reimplemented from Gio::BufferedOutputStream.

DataStreamByteOrder Gio::DataOutputStream::get_byte_order ( ) const

Gets the byte order for the stream.

Returns:
The DataStreamByteOrder for the stream.
GDataOutputStream* Gio::DataOutputStream::gobj ( )
inline

Provides access to the underlying C GObject.

Reimplemented from Gio::BufferedOutputStream.

const GDataOutputStream* Gio::DataOutputStream::gobj ( ) const
inline

Provides access to the underlying C GObject.

Reimplemented from Gio::BufferedOutputStream.

GDataOutputStream* Gio::DataOutputStream::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::BufferedOutputStream.

Glib::PropertyProxy< DataStreamByteOrder > Gio::DataOutputStream::property_byte_order ( )

The byte order.

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< DataStreamByteOrder > Gio::DataOutputStream::property_byte_order ( ) const

The byte order.

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.
bool Gio::DataOutputStream::put_byte ( guchar  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts a byte into the output stream.

Parameters:
dataA #guchar.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_byte ( guchar  data)

non-cancellable version of put_byte()

bool Gio::DataOutputStream::put_int16 ( gint16  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts a signed 16-bit integer into the output stream.

Parameters:
dataA #gint16.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_int16 ( gint16  data)

non-cancellable version of put_int16()

bool Gio::DataOutputStream::put_int32 ( gint32  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts a signed 32-bit integer into the output stream.

Parameters:
dataA #gint32.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_int32 ( gint32  data)

non-cancellable version of put_int32()

bool Gio::DataOutputStream::put_int64 ( gint64  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts a signed 64-bit integer into the stream.

Parameters:
dataA #gint64.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_int64 ( gint64  data)

non-cancellable version of put_int64()

bool Gio::DataOutputStream::put_string ( std::string  str,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts a string into the output stream.

Parameters:
strA string.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if string was successfully added to the stream.
bool Gio::DataOutputStream::put_string ( std::string  str)

non-cancellable version of put_string()

bool Gio::DataOutputStream::put_uint16 ( guint16  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts an unsigned 16-bit integer into the output stream.

Parameters:
dataA #guint16.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_uint16 ( guint16  data)

non-cancellable version of put_uint16()

bool Gio::DataOutputStream::put_uint32 ( guint32  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts an unsigned 32-bit integer into the stream.

Parameters:
dataA #guint32.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_uint32 ( guint32  data)

non-cancellable version of put_uint32()

bool Gio::DataOutputStream::put_uint64 ( guint64  data,
const Glib::RefPtr< Cancellable >&  cancellable 
)

Puts an unsigned 64-bit integer into the stream.

Parameters:
dataA #guint64.
cancellableOptional Cancellable object, 0 to ignore.
Returns:
true if data was successfully added to the stream.
bool Gio::DataOutputStream::put_uint64 ( guint64  data)

non-cancellable version of put_uint64()

void Gio::DataOutputStream::set_byte_order ( DataStreamByteOrder  order)

Sets the byte order of the data output stream to order.

Parameters:
orderA DataStreamByteOrder.

Friends And Related Function Documentation

Glib::RefPtr< Gio::DataOutputStream > wrap ( GDataOutputStream *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters:
objectThe C instance.
take_copyFalse 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.