<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.11"/> <title>glibmm: Glib::ByteArray Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">glibmm  <span id="projectnumber">2.60.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.11 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceGlib.html">Glib</a></li><li class="navelem"><a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-methods">Static Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#related">Related Functions</a> | <a href="classGlib_1_1ByteArray-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">Glib::ByteArray Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div> </div><!--header--> <div class="contents"> <p><a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> - Arrays of bytes. <a href="classGlib_1_1ByteArray.html#details">More...</a></p> <p><code>#include <glibmm/bytearray.h></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:a678a5be5a84fcdda890432d60dc84679"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a678a5be5a84fcdda890432d60dc84679">SlotCompare</a> = <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">sigc::slot</a>< int, const guint8*, const guint8* ></td></tr> <tr class="memdesc:a678a5be5a84fcdda890432d60dc84679"><td class="mdescLeft"> </td><td class="mdescRight">A Slot type to compare two elements in the array. <a href="#a678a5be5a84fcdda890432d60dc84679">More...</a><br /></td></tr> <tr class="separator:a678a5be5a84fcdda890432d60dc84679"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a01d939c43678669bb9f61d1528b15d96"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a01d939c43678669bb9f61d1528b15d96">reference</a> () const </td></tr> <tr class="memdesc:a01d939c43678669bb9f61d1528b15d96"><td class="mdescLeft"> </td><td class="mdescRight">Increment the reference count for this object. <a href="#a01d939c43678669bb9f61d1528b15d96">More...</a><br /></td></tr> <tr class="separator:a01d939c43678669bb9f61d1528b15d96"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abb2240977d9c126d9aee2657741111c8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#abb2240977d9c126d9aee2657741111c8">unreference</a> () const </td></tr> <tr class="memdesc:abb2240977d9c126d9aee2657741111c8"><td class="mdescLeft"> </td><td class="mdescRight">Decrement the reference count for this object. <a href="#abb2240977d9c126d9aee2657741111c8">More...</a><br /></td></tr> <tr class="separator:abb2240977d9c126d9aee2657741111c8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af8e95da64dfe78b19784b00267f264cf"><td class="memItemLeft" align="right" valign="top">GByteArray* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#af8e95da64dfe78b19784b00267f264cf">gobj</a> ()</td></tr> <tr class="memdesc:af8e95da64dfe78b19784b00267f264cf"><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C instance. <a href="#af8e95da64dfe78b19784b00267f264cf">More...</a><br /></td></tr> <tr class="separator:af8e95da64dfe78b19784b00267f264cf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adbe31fb532c0548bbd1a50d0f35d0c2a"><td class="memItemLeft" align="right" valign="top">const GByteArray* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#adbe31fb532c0548bbd1a50d0f35d0c2a">gobj</a> () const </td></tr> <tr class="memdesc:adbe31fb532c0548bbd1a50d0f35d0c2a"><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C instance. <a href="#adbe31fb532c0548bbd1a50d0f35d0c2a">More...</a><br /></td></tr> <tr class="separator:adbe31fb532c0548bbd1a50d0f35d0c2a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5d65be6eae741b19ea9ea394a8b19fb6"><td class="memItemLeft" align="right" valign="top">GByteArray* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a5d65be6eae741b19ea9ea394a8b19fb6">gobj_copy</a> () const </td></tr> <tr class="memdesc:a5d65be6eae741b19ea9ea394a8b19fb6"><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. <a href="#a5d65be6eae741b19ea9ea394a8b19fb6">More...</a><br /></td></tr> <tr class="separator:a5d65be6eae741b19ea9ea394a8b19fb6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af59ef590ec9140286bf256d9dfedb281"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#af59ef590ec9140286bf256d9dfedb281">ByteArray</a> ()=delete</td></tr> <tr class="separator:af59ef590ec9140286bf256d9dfedb281"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acd829681671420dd78775713ab972643"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#acd829681671420dd78775713ab972643">ByteArray</a> (const <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>&)=delete</td></tr> <tr class="separator:acd829681671420dd78775713ab972643"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac6d60c93ecae84c3e44b54a36f936794"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>& </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#ac6d60c93ecae84c3e44b54a36f936794">operator=</a> (const <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>&)=delete</td></tr> <tr class="separator:ac6d60c93ecae84c3e44b54a36f936794"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5bf314792ac5753ff0bc8d825f093a40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a5bf314792ac5753ff0bc8d825f093a40">append</a> (const guint8* data, guint len)</td></tr> <tr class="memdesc:a5bf314792ac5753ff0bc8d825f093a40"><td class="mdescLeft"> </td><td class="mdescRight">Adds the given bytes to the end of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. <a href="#a5bf314792ac5753ff0bc8d825f093a40">More...</a><br /></td></tr> <tr class="separator:a5bf314792ac5753ff0bc8d825f093a40"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aca57aae24d5ed23813d38abdae6af3ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#aca57aae24d5ed23813d38abdae6af3ce">prepend</a> (const guint8* data, guint len)</td></tr> <tr class="memdesc:aca57aae24d5ed23813d38abdae6af3ce"><td class="mdescLeft"> </td><td class="mdescRight">Adds the given data to the start of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. <a href="#aca57aae24d5ed23813d38abdae6af3ce">More...</a><br /></td></tr> <tr class="separator:aca57aae24d5ed23813d38abdae6af3ce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac39c5854b2ab72b17fccad2963fe810c"><td class="memItemLeft" align="right" valign="top">guint </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#ac39c5854b2ab72b17fccad2963fe810c">size</a> () const </td></tr> <tr class="memdesc:ac39c5854b2ab72b17fccad2963fe810c"><td class="mdescLeft"> </td><td class="mdescRight">Gets the size of the byte array. <a href="#ac39c5854b2ab72b17fccad2963fe810c">More...</a><br /></td></tr> <tr class="separator:ac39c5854b2ab72b17fccad2963fe810c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae6e9a064864b81d781ff0499da5912c2"><td class="memItemLeft" align="right" valign="top">guint8* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#ae6e9a064864b81d781ff0499da5912c2">get_data</a> ()</td></tr> <tr class="memdesc:ae6e9a064864b81d781ff0499da5912c2"><td class="mdescLeft"> </td><td class="mdescRight">Gets the data of the byte array. <a href="#ae6e9a064864b81d781ff0499da5912c2">More...</a><br /></td></tr> <tr class="separator:ae6e9a064864b81d781ff0499da5912c2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad176ed0e7f1e4c8ad1c150c320d34e0c"><td class="memItemLeft" align="right" valign="top">const guint8* </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#ad176ed0e7f1e4c8ad1c150c320d34e0c">get_data</a> () const </td></tr> <tr class="memdesc:ad176ed0e7f1e4c8ad1c150c320d34e0c"><td class="mdescLeft"> </td><td class="mdescRight">Gets the data of the byte array. <a href="#ad176ed0e7f1e4c8ad1c150c320d34e0c">More...</a><br /></td></tr> <tr class="separator:ad176ed0e7f1e4c8ad1c150c320d34e0c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad62b7f4de65f816560ba04cfe9b346a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#ad62b7f4de65f816560ba04cfe9b346a8">remove_index</a> (guint index)</td></tr> <tr class="memdesc:ad62b7f4de65f816560ba04cfe9b346a8"><td class="mdescLeft"> </td><td class="mdescRight">Removes the byte at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. <a href="#ad62b7f4de65f816560ba04cfe9b346a8">More...</a><br /></td></tr> <tr class="separator:ad62b7f4de65f816560ba04cfe9b346a8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a18377d30910414004a16010ec9c76a8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a18377d30910414004a16010ec9c76a8c">remove_index_fast</a> (guint index)</td></tr> <tr class="memdesc:a18377d30910414004a16010ec9c76a8c"><td class="mdescLeft"> </td><td class="mdescRight">Removes the byte at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. <a href="#a18377d30910414004a16010ec9c76a8c">More...</a><br /></td></tr> <tr class="separator:a18377d30910414004a16010ec9c76a8c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5c223288ca94990f6afabe344c0c3ae6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a5c223288ca94990f6afabe344c0c3ae6">remove_range</a> (guint index, guint length)</td></tr> <tr class="memdesc:a5c223288ca94990f6afabe344c0c3ae6"><td class="mdescLeft"> </td><td class="mdescRight">Removes the given number of bytes starting at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. <a href="#a5c223288ca94990f6afabe344c0c3ae6">More...</a><br /></td></tr> <tr class="separator:a5c223288ca94990f6afabe344c0c3ae6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af04d56e13e7d198440ecb62bb88c5c0f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#af04d56e13e7d198440ecb62bb88c5c0f">sort</a> (const <a class="el" href="classGlib_1_1ByteArray.html#a678a5be5a84fcdda890432d60dc84679">SlotCompare</a>& slot)</td></tr> <tr class="memdesc:af04d56e13e7d198440ecb62bb88c5c0f"><td class="mdescLeft"> </td><td class="mdescRight">Like g_byte_array_sort(), but the comparison function takes an extra user data argument. <a href="#af04d56e13e7d198440ecb62bb88c5c0f">More...</a><br /></td></tr> <tr class="separator:af04d56e13e7d198440ecb62bb88c5c0f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a75236ebc3491ebae5bf5e9f9dadb3341"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a75236ebc3491ebae5bf5e9f9dadb3341">set_size</a> (guint length)</td></tr> <tr class="memdesc:a75236ebc3491ebae5bf5e9f9dadb3341"><td class="mdescLeft"> </td><td class="mdescRight">Sets the size of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>, expanding it if necessary. <a href="#a75236ebc3491ebae5bf5e9f9dadb3341">More...</a><br /></td></tr> <tr class="separator:a75236ebc3491ebae5bf5e9f9dadb3341"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a> Static Public Member Functions</h2></td></tr> <tr class="memitem:a12eec4a6cd60db3371ecc0dd93c6dd30"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#a12eec4a6cd60db3371ecc0dd93c6dd30">create</a> ()</td></tr> <tr class="memdesc:a12eec4a6cd60db3371ecc0dd93c6dd30"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> with a reference count of 1. <a href="#a12eec4a6cd60db3371ecc0dd93c6dd30">More...</a><br /></td></tr> <tr class="separator:a12eec4a6cd60db3371ecc0dd93c6dd30"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr class="memitem:aa75e7f74d050aac45806ddeb4d0b2e33"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#aa75e7f74d050aac45806ddeb4d0b2e33">operator delete</a> (void*, std::size_t)</td></tr> <tr class="separator:aa75e7f74d050aac45806ddeb4d0b2e33"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a> Related Functions</h2></td></tr> <tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p> </td></tr> <tr class="memitem:aa99add90374a6f4c13eb5ab04ebe95c1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">Glib::ByteArray</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ByteArray.html#aa99add90374a6f4c13eb5ab04ebe95c1">wrap</a> (GByteArray* object, bool take_copy=false)</td></tr> <tr class="memdesc:aa99add90374a6f4c13eb5ab04ebe95c1"><td class="mdescLeft"> </td><td class="mdescRight">A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. <a href="#aa99add90374a6f4c13eb5ab04ebe95c1">More...</a><br /></td></tr> <tr class="separator:aa99add90374a6f4c13eb5ab04ebe95c1"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p><a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> - Arrays of bytes. </p> <p><a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> is a mutable array of bytes, to provide arrays of bytes which grow automatically as elements are added.</p> <p>To create a new <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> use <a class="el" href="classGlib_1_1ByteArray.html#a12eec4a6cd60db3371ecc0dd93c6dd30" title="Creates a new ByteArray with a reference count of 1. ">create()</a>. To add elements to a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>, use <a class="el" href="classGlib_1_1ByteArray.html#a5bf314792ac5753ff0bc8d825f093a40" title="Adds the given bytes to the end of the ByteArray. ">append()</a>, and <a class="el" href="classGlib_1_1ByteArray.html#aca57aae24d5ed23813d38abdae6af3ce" title="Adds the given data to the start of the ByteArray. ">prepend()</a>.</p> <p>To set the size of a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>, use <a class="el" href="classGlib_1_1ByteArray.html#a75236ebc3491ebae5bf5e9f9dadb3341" title="Sets the size of the ByteArray, expanding it if necessary. ">set_size()</a>.</p> <dl class="since_2_36"><dt><b><a class="el" href="since_2_36.html#_since_2_36000001">Since glibmm 2.36:</a></b></dt><dd></dd></dl> </div><h2 class="groupheader">Member Typedef Documentation</h2> <a class="anchor" id="a678a5be5a84fcdda890432d60dc84679"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">using <a class="el" href="classGlib_1_1ByteArray.html#a678a5be5a84fcdda890432d60dc84679">Glib::ByteArray::SlotCompare</a> = <a class="elRef" href="../../../libsigc++-2.0/reference/html/classsigc_1_1slot.html">sigc::slot</a><int, const guint8*, const guint8*></td> </tr> </table> </div><div class="memdoc"> <p>A Slot type to compare two elements in the array. </p> <p>The slot should return -1 if the first value is less than the second, 0 if they are equal and 1 if the first value is greater than the second.</p> <p>Slot Prototype:</p> <p><code> int compare(const guint8* first, const guint8* second); </code> </p> </div> </div> <h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="af59ef590ec9140286bf256d9dfedb281"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Glib::ByteArray::ByteArray </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">delete</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="acd829681671420dd78775713ab972643"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Glib::ByteArray::ByteArray </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>& </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">delete</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="a5bf314792ac5753ff0bc8d825f093a40"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::append </td> <td>(</td> <td class="paramtype">const guint8 * </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Adds the given bytes to the end of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </p> <p>The array will grow in size automatically if necessary.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">data</td><td>The byte data to be added. </td></tr> <tr><td class="paramname">len</td><td>The number of bytes to add. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="a12eec4a6cd60db3371ecc0dd93c6dd30"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::create </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Creates a new <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a> with a reference count of 1. </p> <dl class="section return"><dt>Returns</dt><dd>The new <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="ae6e9a064864b81d781ff0499da5912c2"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">guint8* Glib::ByteArray::get_data </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Gets the data of the byte array. </p> <dl class="section return"><dt>Returns</dt><dd>The data. </dd></dl> <dl class="since_2_36"><dt><b><a class="el" href="since_2_36.html#_since_2_36000003">Since glibmm 2.36:</a></b></dt><dd></dd></dl> </div> </div> <a class="anchor" id="ad176ed0e7f1e4c8ad1c150c320d34e0c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const guint8* Glib::ByteArray::get_data </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Gets the data of the byte array. </p> <dl class="section return"><dt>Returns</dt><dd>The data. </dd></dl> <dl class="since_2_36"><dt><b><a class="el" href="since_2_36.html#_since_2_36000004">Since glibmm 2.36:</a></b></dt><dd></dd></dl> </div> </div> <a class="anchor" id="af8e95da64dfe78b19784b00267f264cf"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GByteArray* Glib::ByteArray::gobj </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Provides access to the underlying C instance. </p> </div> </div> <a class="anchor" id="adbe31fb532c0548bbd1a50d0f35d0c2a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GByteArray* Glib::ByteArray::gobj </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Provides access to the underlying C instance. </p> </div> </div> <a class="anchor" id="a5d65be6eae741b19ea9ea394a8b19fb6"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GByteArray* Glib::ByteArray::gobj_copy </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. </p> </div> </div> <a class="anchor" id="aa75e7f74d050aac45806ddeb4d0b2e33"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void Glib::ByteArray::operator delete </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::size_t </td> <td class="paramname"> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="ac6d60c93ecae84c3e44b54a36f936794"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>& Glib::ByteArray::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>& </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">delete</span></span> </td> </tr> </table> </div><div class="memdoc"> </div> </div> <a class="anchor" id="aca57aae24d5ed23813d38abdae6af3ce"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::prepend </td> <td>(</td> <td class="paramtype">const guint8 * </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Adds the given data to the start of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </p> <p>The array will grow in size automatically if necessary.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">data</td><td>The byte data to be added. </td></tr> <tr><td class="paramname">len</td><td>The number of bytes to add. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="a01d939c43678669bb9f61d1528b15d96"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Glib::ByteArray::reference </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Increment the reference count for this object. </p> <p>You should never need to do this manually - use the object via a <a class="el" href="classGlib_1_1RefPtr.html" title="RefPtr<> is a reference-counting shared smartpointer. ">RefPtr</a> instead. </p> </div> </div> <a class="anchor" id="ad62b7f4de65f816560ba04cfe9b346a8"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::remove_index </td> <td>(</td> <td class="paramtype">guint </td> <td class="paramname"><em>index</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Removes the byte at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </p> <p>The following bytes are moved down one place.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">index</td><td>The index of the byte to remove. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="a18377d30910414004a16010ec9c76a8c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::remove_index_fast </td> <td>(</td> <td class="paramtype">guint </td> <td class="paramname"><em>index</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Removes the byte at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </p> <p>The last element in the array is used to fill in the space, so this function does not preserve the order of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. But it is faster than g_byte_array_remove_index().</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">index</td><td>The index of the byte to remove. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="a5c223288ca94990f6afabe344c0c3ae6"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::remove_range </td> <td>(</td> <td class="paramtype">guint </td> <td class="paramname"><em>index</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">guint </td> <td class="paramname"><em>length</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Removes the given number of bytes starting at the given index from a <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </p> <p>The following elements are moved to close the gap.</p> <dl class="since_2_4"><dt><b><a class="el" href="since_2_4.html#_since_2_4000001">Since glibmm 2.4:</a></b></dt><dd></dd></dl> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">index</td><td>The index of the first byte to remove. </td></tr> <tr><td class="paramname">length</td><td>The number of bytes to remove. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="a75236ebc3491ebae5bf5e9f9dadb3341"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a><<a class="el" href="classGlib_1_1ByteArray.html">ByteArray</a>> Glib::ByteArray::set_size </td> <td>(</td> <td class="paramtype">guint </td> <td class="paramname"><em>length</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Sets the size of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>, expanding it if necessary. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">length</td><td>The new size of the <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classGlib_1_1ByteArray.html" title="ByteArray - Arrays of bytes. ">ByteArray</a>. </dd></dl> </div> </div> <a class="anchor" id="ac39c5854b2ab72b17fccad2963fe810c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">guint Glib::ByteArray::size </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Gets the size of the byte array. </p> <dl class="section return"><dt>Returns</dt><dd>The size. </dd></dl> <dl class="since_2_36"><dt><b><a class="el" href="since_2_36.html#_since_2_36000002">Since glibmm 2.36:</a></b></dt><dd></dd></dl> </div> </div> <a class="anchor" id="af04d56e13e7d198440ecb62bb88c5c0f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Glib::ByteArray::sort </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ByteArray.html#a678a5be5a84fcdda890432d60dc84679">SlotCompare</a>& </td> <td class="paramname"><em>slot</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Like g_byte_array_sort(), but the comparison function takes an extra user data argument. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">slot</td><td>Comparison function. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="abb2240977d9c126d9aee2657741111c8"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Glib::ByteArray::unreference </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Decrement the reference count for this object. </p> <p>You should never need to do this manually - use the object via a <a class="el" href="classGlib_1_1RefPtr.html" title="RefPtr<> is a reference-counting shared smartpointer. ">RefPtr</a> instead. </p> </div> </div> <h2 class="groupheader">Friends And Related Function Documentation</h2> <a class="anchor" id="aa99add90374a6f4c13eb5ab04ebe95c1"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>< <a class="el" href="classGlib_1_1ByteArray.html">Glib::ByteArray</a> > wrap </td> <td>(</td> <td class="paramtype">GByteArray * </td> <td class="paramname"><em>object</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>take_copy</em> = <code>false</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">related</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">object</td><td>The C instance. </td></tr> <tr><td class="paramname">take_copy</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A C++ instance that wraps this C instance. </dd></dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Tue Mar 19 2019 09:56:45 for glibmm by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.11 </small></address> </body> </html>