# Gio::DataOutputStream Class Reference
[Stream Classes]

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:
[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.

## Static Public Member Functions

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

## Protected Member Functions

| DataOutputStream (const Glib::RefPtr< OutputStream >& base_stream)

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

## Member Function Documentation

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

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 | ) |

non-cancellable version of put_byte()

bool Gio::DataOutputStream::put_byte | ( | guchar | data,
|  | const Glib::RefPtr< Cancellable >& | cancellable |
| ) |  |  |

Puts a byte into the output stream.

Parameters:

  | data | A guchar.
  | cancellable | Optional Cancellable object, `0` to ignore.

Returns:
  `true` if data was successfully added to the stream.

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

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

Parameters:

  | data | A gint16.
  | cancellable | Optional 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:

  | data | A gint32.
  | cancellable | Optional 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:

  | data | A gint64.
  | cancellable | Optional 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 | ) |

non-cancellable version of put_string()

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

Puts a string into the output stream.

Parameters:

  | str | A string.
  | cancellable | Optional Cancellable object, `0` to ignore.

Returns:
  `true` if string was successfully added to the stream.

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

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

Parameters:

  | data | A guint16.
  | cancellable | Optional 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:

  | data | A guint32.
  | cancellable | Optional 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 | ) |

non-cancellable version of put_uint64()

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

Puts an unsigned 64-bit integer into the stream.

Parameters:

  | data | A guint64.
  | cancellable | Optional Cancellable object, `0` to ignore.

Returns:
  `true` if data was successfully added to the stream.

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

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

Parameters:

  | order | A 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:

  | 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.