blob: 6534de36843db10dbcf8b06f7454d66b32b8d603 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Geode Native C++ Reference: apache::geode::client::PdxWrapper 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.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">Apache Geode Native C++ Reference
&#160;<span id="projectnumber">1.13.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00775.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">apache::geode::client::PdxWrapper Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The <a class="el" href="a00775.html" title="The PdxWrapper class allows domain classes to be used in Region operations.">PdxWrapper</a> class allows domain classes to be used in <a class="el" href="a00815.html" title="This class manages subregions and cached data.">Region</a> operations.
<a href="a00775.html#details">More...</a></p>
<p>Inherits <a class="el" href="a00763.html">apache::geode::client::PdxSerializable</a>.</p>
<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:a2114af134386f7928edd520c6c661bd8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#a2114af134386f7928edd520c6c661bd8">fromData</a> (<a class="el" href="a00759.html">PdxReader</a> &amp;input) override</td></tr>
<tr class="memdesc:a2114af134386f7928edd520c6c661bd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deserialize this object. <a href="#a2114af134386f7928edd520c6c661bd8">More...</a><br /></td></tr>
<tr class="separator:a2114af134386f7928edd520c6c661bd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0d9d060427b87890e07dbe8a1aec65d"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#af0d9d060427b87890e07dbe8a1aec65d">getClassName</a> () const override</td></tr>
<tr class="memdesc:af0d9d060427b87890e07dbe8a1aec65d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Type for the Object. <a href="#af0d9d060427b87890e07dbe8a1aec65d">More...</a><br /></td></tr>
<tr class="separator:af0d9d060427b87890e07dbe8a1aec65d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a423d42e2950769acfa96441ef4fa6d22"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; void &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#a423d42e2950769acfa96441ef4fa6d22">getObject</a> ()</td></tr>
<tr class="memdesc:a423d42e2950769acfa96441ef4fa6d22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the pointer to the user object which is deserialized with a <a class="el" href="a00767.html" title="The PdxSerializer class allows domain classes to be serialized and deserialized as PDXs without modif...">PdxSerializer</a>. <a href="#a423d42e2950769acfa96441ef4fa6d22">More...</a><br /></td></tr>
<tr class="separator:a423d42e2950769acfa96441ef4fa6d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c2b24f33cd3b6b3a16ffab25aa9af28"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#a1c2b24f33cd3b6b3a16ffab25aa9af28">hashcode</a> () const override</td></tr>
<tr class="memdesc:a1c2b24f33cd3b6b3a16ffab25aa9af28"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the hashcode for this key. <a href="#a1c2b24f33cd3b6b3a16ffab25aa9af28">More...</a><br /></td></tr>
<tr class="separator:a1c2b24f33cd3b6b3a16ffab25aa9af28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1e74dde03eb0d3fb17752bfdcd347ef"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00855.html#aa1e74dde03eb0d3fb17752bfdcd347ef">objectSize</a> () const</td></tr>
<tr class="memdesc:aa1e74dde03eb0d3fb17752bfdcd347ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">return the size in bytes of the instance being serialized. <a href="#aa1e74dde03eb0d3fb17752bfdcd347ef">More...</a><br /></td></tr>
<tr class="separator:aa1e74dde03eb0d3fb17752bfdcd347ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaef3ddf82d18e028bd16afacd1dcd886"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#aaef3ddf82d18e028bd16afacd1dcd886">operator==</a> (const <a class="el" href="a00339.html">CacheableKey</a> &amp;other) const override</td></tr>
<tr class="memdesc:aaef3ddf82d18e028bd16afacd1dcd886"><td class="mdescLeft">&#160;</td><td class="mdescRight">return true if this key matches other. <a href="#aaef3ddf82d18e028bd16afacd1dcd886">More...</a><br /></td></tr>
<tr class="separator:aaef3ddf82d18e028bd16afacd1dcd886"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae11e9a9fa0c6f30071701646eeb67d94"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#ae11e9a9fa0c6f30071701646eeb67d94">PdxWrapper</a> (std::shared_ptr&lt; void &gt; userObject, std::string className)</td></tr>
<tr class="memdesc:ae11e9a9fa0c6f30071701646eeb67d94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor which takes the address of the user object to contain for PDX serialization. <a href="#ae11e9a9fa0c6f30071701646eeb67d94">More...</a><br /></td></tr>
<tr class="separator:ae11e9a9fa0c6f30071701646eeb67d94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5654644f2922525e3815569e3ca14ab0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#a5654644f2922525e3815569e3ca14ab0">toData</a> (<a class="el" href="a00779.html">PdxWriter</a> &amp;output) const override</td></tr>
<tr class="memdesc:a5654644f2922525e3815569e3ca14ab0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize this object in Geode PDX format. <a href="#a5654644f2922525e3815569e3ca14ab0">More...</a><br /></td></tr>
<tr class="separator:a5654644f2922525e3815569e3ca14ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59316ed8601f54dfc1a0d71795d09ac4"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00775.html#a59316ed8601f54dfc1a0d71795d09ac4">toString</a> () const override</td></tr>
<tr class="memdesc:a59316ed8601f54dfc1a0d71795d09ac4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Display this object as 'string', which depends on the implementation in the subclasses. <a href="#a59316ed8601f54dfc1a0d71795d09ac4">More...</a><br /></td></tr>
<tr class="separator:a59316ed8601f54dfc1a0d71795d09ac4"><td class="memSeparator" colspan="2">&#160;</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:a562c8827c49b9808ca4a601a48b944b6"><td class="memTemplParams" colspan="2">template&lt;class _T &gt; </td></tr>
<tr class="memitem:a562c8827c49b9808ca4a601a48b944b6"><td class="memTemplItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="a00339.html">CacheableKey</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00339.html#a562c8827c49b9808ca4a601a48b944b6">create</a> (_T value)</td></tr>
<tr class="memdesc:a562c8827c49b9808ca4a601a48b944b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Factory method that creates the key type that matches the type of value. <a href="#a562c8827c49b9808ca4a601a48b944b6">More...</a><br /></td></tr>
<tr class="separator:a562c8827c49b9808ca4a601a48b944b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6b42b5b55a798df561f9031e2b4f602"><td class="memTemplParams" colspan="2">template&lt;class _T &gt; </td></tr>
<tr class="memitem:ac6b42b5b55a798df561f9031e2b4f602"><td class="memTemplItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="a00855.html">Serializable</a> &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00855.html#ac6b42b5b55a798df561f9031e2b4f602">create</a> (_T value)</td></tr>
<tr class="memdesc:ac6b42b5b55a798df561f9031e2b4f602"><td class="mdescLeft">&#160;</td><td class="mdescRight">Factory method that creates the <a class="el" href="a00855.html" title="This base class is the superclass of all user objects in the cache that can be serialized.">Serializable</a> object that matches the type of value. <a href="#ac6b42b5b55a798df561f9031e2b4f602">More...</a><br /></td></tr>
<tr class="separator:ac6b42b5b55a798df561f9031e2b4f602"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The <a class="el" href="a00775.html" title="The PdxWrapper class allows domain classes to be used in Region operations.">PdxWrapper</a> class allows domain classes to be used in <a class="el" href="a00815.html" title="This class manages subregions and cached data.">Region</a> operations. </p>
<p>A user domain object should be wrapped in an instance of a <a class="el" href="a00775.html" title="The PdxWrapper class allows domain classes to be used in Region operations.">PdxWrapper</a> with a <a class="el" href="a00767.html" title="The PdxSerializer class allows domain classes to be serialized and deserialized as PDXs without modif...">PdxSerializer</a> registered that can handle the user domain class. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ae11e9a9fa0c6f30071701646eeb67d94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae11e9a9fa0c6f30071701646eeb67d94">&#9670;&nbsp;</a></span>PdxWrapper()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">apache::geode::client::PdxWrapper::PdxWrapper </td>
<td>(</td>
<td class="paramtype">std::shared_ptr&lt; void &gt;&#160;</td>
<td class="paramname"><em>userObject</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>className</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor which takes the address of the user object to contain for PDX serialization. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">userObject</td><td>the void pointer to an instance of a user object - NOTE: <a class="el" href="a00775.html" title="The PdxWrapper class allows domain classes to be used in Region operations.">PdxWrapper</a> takes ownership. </td></tr>
<tr><td class="paramname">className</td><td>the fully qualified class name to map this user object to the Java side. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a562c8827c49b9808ca4a601a48b944b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a562c8827c49b9808ca4a601a48b944b6">&#9670;&nbsp;</a></span>create() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class _T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::shared_ptr&lt;<a class="el" href="a00339.html">CacheableKey</a>&gt; apache::geode::client::CacheableKey::create </td>
<td>(</td>
<td class="paramtype">_T&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Factory method that creates the key type that matches the type of value. </p>
<p>For user defined derivations of <a class="el" href="a00339.html" title="Represents a cacheable key.">CacheableKey</a>, the method <a class="el" href="a00339.html#a562c8827c49b9808ca4a601a48b944b6" title="Factory method that creates the key type that matches the type of value.">apache::geode::client::CacheableKey::create</a> may be overloaded. </p>
</div>
</div>
<a id="ac6b42b5b55a798df561f9031e2b4f602"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6b42b5b55a798df561f9031e2b4f602">&#9670;&nbsp;</a></span>create() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class _T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::shared_ptr&lt;<a class="el" href="a00855.html">Serializable</a>&gt; apache::geode::client::Serializable::create </td>
<td>(</td>
<td class="paramtype">_T&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Factory method that creates the <a class="el" href="a00855.html" title="This base class is the superclass of all user objects in the cache that can be serialized.">Serializable</a> object that matches the type of value. </p>
<p>For user defined derivations of <a class="el" href="a00855.html" title="This base class is the superclass of all user objects in the cache that can be serialized.">Serializable</a>, the method <a class="el" href="a00855.html#ac6b42b5b55a798df561f9031e2b4f602" title="Factory method that creates the Serializable object that matches the type of value.">apache::geode::client::Serializable::create</a> may be overloaded. </p>
</div>
</div>
<a id="a2114af134386f7928edd520c6c661bd8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2114af134386f7928edd520c6c661bd8">&#9670;&nbsp;</a></span>fromData()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void apache::geode::client::PdxWrapper::fromData </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00759.html">PdxReader</a> &amp;&#160;</td>
<td class="paramname"><em>input</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Deserialize this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname"><a class="el" href="a00759.html" title="A PdxReader will be passed to PdxSerializable.fromData or during deserialization of a PDX.">PdxReader</a></td><td>to deserialize the PDX object </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="a00763.html#aa2429785803446f892d6669d7ebab795">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
<a id="af0d9d060427b87890e07dbe8a1aec65d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0d9d060427b87890e07dbe8a1aec65d">&#9670;&nbsp;</a></span>getClassName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; apache::geode::client::PdxWrapper::getClassName </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the Type for the Object. </p>
<p>Equivalent to the C# Type-&gt;GetType() API. </p>
<p>Implements <a class="el" href="a00763.html#acb3cecbfb02d3983c04551850ba7b84c">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
<a id="a423d42e2950769acfa96441ef4fa6d22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a423d42e2950769acfa96441ef4fa6d22">&#9670;&nbsp;</a></span>getObject()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt;void&gt; apache::geode::client::PdxWrapper::getObject </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the pointer to the user object which is deserialized with a <a class="el" href="a00767.html" title="The PdxSerializer class allows domain classes to be serialized and deserialized as PDXs without modif...">PdxSerializer</a>. </p>
<p>User code (such as in <a class="el" href="a00767.html" title="The PdxSerializer class allows domain classes to be serialized and deserialized as PDXs without modif...">PdxSerializer</a>) should cast it to a pointer of the known user class. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">detach</td><td>if set to true will release ownership of the object and future calls to <a class="el" href="a00775.html#a423d42e2950769acfa96441ef4fa6d22" title="Returns the pointer to the user object which is deserialized with a PdxSerializer.">getObject()</a> return nullptr. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a1c2b24f33cd3b6b3a16ffab25aa9af28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1c2b24f33cd3b6b3a16ffab25aa9af28">&#9670;&nbsp;</a></span>hashcode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int32_t apache::geode::client::PdxWrapper::hashcode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return the hashcode for this key. </p>
<p>Reimplemented from <a class="el" href="a00763.html#a68fb65d907f98893391d0c46c7685f22">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
<a id="aa1e74dde03eb0d3fb17752bfdcd347ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1e74dde03eb0d3fb17752bfdcd347ef">&#9670;&nbsp;</a></span>objectSize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual size_t apache::geode::client::Serializable::objectSize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return the size in bytes of the instance being serialized. </p>
<p>This is used to determine whether the cache is using up more physical memory than it has been configured to use. The method can return zero if the user does not require the ability to control cache memory utilization. Note that you must implement this only if you use the HeapLRU feature. </p>
<p>Reimplemented in <a class="el" href="a00751.html#a147bbc2fa40218981d1e4c9a0eaed512">apache::geode::client::PdxInstance</a>, <a class="el" href="a00359.html#afaac3e6c0601e799b224243dd293a50d">apache::geode::client::CacheableString</a>, <a class="el" href="a00331.html#a7eaa7d097c0761ea913ead9f3817ba6d">apache::geode::client::CacheableEnum</a>, and <a class="el" href="a00327.html#ae5c6cd45fdfc3c547899456cb6f4c129">apache::geode::client::CacheableDate</a>.</p>
</div>
</div>
<a id="aaef3ddf82d18e028bd16afacd1dcd886"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaef3ddf82d18e028bd16afacd1dcd886">&#9670;&nbsp;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool apache::geode::client::PdxWrapper::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="a00339.html">CacheableKey</a> &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>return true if this key matches other. </p>
<p>Reimplemented from <a class="el" href="a00763.html#ab8fb2a61f8b949dd511efb60a08d2950">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
<a id="a5654644f2922525e3815569e3ca14ab0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5654644f2922525e3815569e3ca14ab0">&#9670;&nbsp;</a></span>toData()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void apache::geode::client::PdxWrapper::toData </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00779.html">PdxWriter</a> &amp;&#160;</td>
<td class="paramname"><em>output</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Serialize this object in Geode PDX format. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname"><a class="el" href="a00779.html" title="A PdxWriter will be passed to PdxSerializable.toData when it is serializing the domain class.">PdxWriter</a></td><td>to serialize the PDX object </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="a00763.html#a28894ac9e842832bcb336915ae3983e0">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
<a id="a59316ed8601f54dfc1a0d71795d09ac4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59316ed8601f54dfc1a0d71795d09ac4">&#9670;&nbsp;</a></span>toString()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string apache::geode::client::PdxWrapper::toString </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Display this object as 'string', which depends on the implementation in the subclasses. </p>
<p>The default implementation renders the classname. </p>
<p>Reimplemented from <a class="el" href="a00763.html#a0bf1fbe334bc15e8869fbb33decfc8aa">apache::geode::client::PdxSerializable</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<HR><address style="align: right;"><small>Apache Geode C++ Cache API Documentation</small></address>