<!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.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Proton DotNet: Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder&lt; T &gt; Interface Template 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="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">Proton DotNet
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<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>
<!-- 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 id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceApache.html">Apache</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid.html">Qpid</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton.html">Proton</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec.html">Codec</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders.html">Encoders</a></li><li class="navelem"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1IPrimitiveTypeEncoder.html">IPrimitiveTypeEncoder</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1IPrimitiveTypeEncoder-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder&lt; T &gt; Interface Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Interface for an type encoders that handle primitive types  
 <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1IPrimitiveTypeEncoder.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder&lt; T &gt;:</div>
<div class="dyncontent">
 <div class="center">
  <img src="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1IPrimitiveTypeEncoder.png" usemap="#Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder_3C_20T_20_3E_map" alt=""/>
  <map id="Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder_3C_20T_20_3E_map" name="Apache.Qpid.Proton.Codec.Encoders.IPrimitiveTypeEncoder_3C_20T_20_3E_map">
<area href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html" title="Defines an interface for an encoder of a specific type." alt="Apache.Qpid.Proton.Codec.ITypeEncoder" shape="rect" coords="0,0,433,24"/>
<area href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractPrimitiveTypeEncoder.html" alt="Apache.Qpid.Proton.Codec.Encoders.AbstractPrimitiveTypeEncoder&lt; T &gt;" shape="rect" coords="0,112,433,136"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html">Apache.Qpid.Proton.Codec.ITypeEncoder</a></td></tr>
<tr class="memitem:af7378827e3a7b609f93641cfcf5f2392 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#af7378827e3a7b609f93641cfcf5f2392">WriteType</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, object value)</td></tr>
<tr class="memdesc:af7378827e3a7b609f93641cfcf5f2392 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes the given value into the provided buffer.  <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#af7378827e3a7b609f93641cfcf5f2392">More...</a><br /></td></tr>
<tr class="separator:af7378827e3a7b609f93641cfcf5f2392 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb55fccbca6bf2f53a5c5458ca98eafc inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#aeb55fccbca6bf2f53a5c5458ca98eafc">WriteArray</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, Array value)</td></tr>
<tr class="memdesc:aeb55fccbca6bf2f53a5c5458ca98eafc inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes a full array encoding of the given array elements into the provided buffer.  <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#aeb55fccbca6bf2f53a5c5458ca98eafc">More...</a><br /></td></tr>
<tr class="separator:aeb55fccbca6bf2f53a5c5458ca98eafc inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93a73c8de26e0e95defd007610ba7f67 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#a93a73c8de26e0e95defd007610ba7f67">WriteRawArray</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, Array values)</td></tr>
<tr class="memdesc:a93a73c8de26e0e95defd007610ba7f67 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes only the individual elements of the given array into the provided buffer  <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#a93a73c8de26e0e95defd007610ba7f67">More...</a><br /></td></tr>
<tr class="separator:a93a73c8de26e0e95defd007610ba7f67 inherit pub_methods_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td colspan="2" onclick="javascript:toggleInherit('properties_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html">Apache.Qpid.Proton.Codec.ITypeEncoder</a></td></tr>
<tr class="memitem:a2e7b977436dabac77fcbeaf44c040b20 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="memItemLeft" align="right" valign="top">Type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#a2e7b977436dabac77fcbeaf44c040b20">EncodesType</a><code> [get]</code></td></tr>
<tr class="memdesc:a2e7b977436dabac77fcbeaf44c040b20 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">The Type that this decoder can write.  <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder.html#a2e7b977436dabac77fcbeaf44c040b20">More...</a><br /></td></tr>
<tr class="separator:a2e7b977436dabac77fcbeaf44c040b20 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1ITypeEncoder"><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>Interface for an type encoders that handle primitive types </p>
</div><hr/>The documentation for this interface was generated from the following file:<ul>
<li>src/Proton/Codec/Encoders/IPrimitiveTypeEncoder.cs</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
