Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 2fbc6fbd332afd87175dad548cb7f4c2 > files > 274

mimetic-devel-0.9.6-1.fc12.i686.rpm

<HTML>
<HEAD>
<TITLE>mimetic 0.9.6: mimetic: codec_chain&lt; C, N &gt; Struct Template Reference</TITLE>
<LINK HREF="../doxygen.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">

<table bgcolor=lightblue>
<tr>
<td>
<a class="qindex" href="index.html">Main Page</a> &nbsp; 
<!--
<a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; 
-->
<a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; 
<a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; 
<a class="qindex" href="annotated.html">Compound List</a> &nbsp; 
<a class="qindex" href="examples.html">Examples</a> &nbsp; 
<!--
<a class="qindex" href="files.html">File List</a> &nbsp; 
<a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; 
<a class="qindex" href="functions.html">Compound Members</a> &nbsp; 
-->
</td>
</tr>
</table>








<!-- Generated by Doxygen 1.6.1 -->
  <div class="navpath"><a class="el" href="namespacemimetic.html">mimetic</a>::<a class="el" href="structmimetic_1_1codec__chain.html">codec_chain</a>
  </div>
<div class="contents">
<h1>codec_chain&lt; C, N &gt; Struct Template Reference</h1><!-- doxytag: class="mimetic::codec_chain" -->
<p>Defines a chain of codecs.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="codec__chain_8h_source.html">codec_chain.h</a>&gt;</code></p>

<p><a href="structmimetic_1_1codec__chain-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <b>count</b> =  1 + next_node_type::count
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1bf0d7a5f8f4f7cb46c1ab70772e6c0e"></a><!-- doxytag: member="mimetic::codec_chain::self_type" ref="a1bf0d7a5f8f4f7cb46c1ab70772e6c0e" args="" -->
typedef <a class="el" href="structmimetic_1_1codec__chain.html">codec_chain</a>&lt; C, N &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>self_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8510c20a1f53c8fca013df949274afe"></a><!-- doxytag: member="mimetic::codec_chain::content_type" ref="aa8510c20a1f53c8fca013df949274afe" args="" -->
typedef C&nbsp;</td><td class="memItemRight" valign="bottom"><b>content_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4cfe84b6f312ec6d29e58a78d8f999de"></a><!-- doxytag: member="mimetic::codec_chain::next_node_type" ref="a4cfe84b6f312ec6d29e58a78d8f999de" args="" -->
typedef N&nbsp;</td><td class="memItemRight" valign="bottom"><b>next_node_type</b></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba59ce42b6d1881633facea820cebbb4"></a><!-- doxytag: member="mimetic::codec_chain::codec_chain" ref="aba59ce42b6d1881633facea820cebbb4" args="(const content_type &amp;c)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>codec_chain</b> (const content_type &amp;c)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a060343b3ad91eeb9a66d03774bab65d9"></a><!-- doxytag: member="mimetic::codec_chain::codec_chain" ref="a060343b3ad91eeb9a66d03774bab65d9" args="(const content_type &amp;c, const next_node_type &amp;node)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>codec_chain</b> (const content_type &amp;c, const next_node_type &amp;node)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4684fc4b05e2be0d6b18de8ec563656e"></a><!-- doxytag: member="mimetic::codec_chain::codec_chain" ref="a4684fc4b05e2be0d6b18de8ec563656e" args="(const codec_chain &amp;node)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>codec_chain</b> (const <a class="el" href="structmimetic_1_1codec__chain.html">codec_chain</a> &amp;node)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4a946195eec009216d6dd12ef3925bb"></a><!-- doxytag: member="mimetic::codec_chain::codec_chain" ref="aa4a946195eec009216d6dd12ef3925bb" args="(const null_node &amp;)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>codec_chain</b> (const null_node &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a862958aa3c2b9bf36903f1f0f2e81c54"></a><!-- doxytag: member="mimetic::codec_chain::name" ref="a862958aa3c2b9bf36903f1f0f2e81c54" args="() const " -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><b>name</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa421c66b908fa4572f7e20d0c94302bf"></a><!-- doxytag: member="mimetic::codec_chain::process" ref="aa421c66b908fa4572f7e20d0c94302bf" args="(char c)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>process</b> (char c)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adac116554b543b7c4228c018a85882f5"></a><!-- doxytag: member="mimetic::codec_chain::flush" ref="adac116554b543b7c4228c018a85882f5" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>flush</b> ()</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a9480ad870d8abce8f97970dc150ddbc6"></a><!-- doxytag: member="mimetic::codec_chain::get_c" ref="a9480ad870d8abce8f97970dc150ddbc6" args="(int idx) const " -->
template&lt;typename Cn &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">const Cn &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>get_c</b> (int idx) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a448146bb7aafeb4e091032d6d316dab0"></a><!-- doxytag: member="mimetic::codec_chain::get_c" ref="a448146bb7aafeb4e091032d6d316dab0" args="(int idx) const " -->
const content_type &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>get_c</b> (int idx) const </td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a936f75138fca7b0f4e502d9f3da412c6"></a><!-- doxytag: member="mimetic::codec_chain::operator[]" ref="a936f75138fca7b0f4e502d9f3da412c6" args="(int idx) const " -->
template&lt;typename C1 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">const C1 &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator[]</b> (int idx) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab35594e336bf429679607b7afcd4c129"></a><!-- doxytag: member="mimetic::codec_chain::operator*" ref="ab35594e336bf429679607b7afcd4c129" args="()" -->
<a class="el" href="structmimetic_1_1codec__chain.html">self_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator*</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d05bfec966d0fe2251f260a391e7b95"></a><!-- doxytag: member="mimetic::codec_chain::operator=" ref="a7d05bfec966d0fe2251f260a391e7b95" args="(char c)" -->
<a class="el" href="structmimetic_1_1codec__chain.html">self_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (char c)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68c6d6abdde9fef27d6a4f2904212559"></a><!-- doxytag: member="mimetic::codec_chain::operator++" ref="a68c6d6abdde9fef27d6a4f2904212559" args="()" -->
<a class="el" href="structmimetic_1_1codec__chain.html">self_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator++</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4419c6af964a7de542db8474f8ef1091"></a><!-- doxytag: member="mimetic::codec_chain::operator++" ref="a4419c6af964a7de542db8474f8ef1091" args="(int)" -->
<a class="el" href="structmimetic_1_1codec__chain.html">self_type</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator++</b> (int)</td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="aca1cec1b96e5fbda63875e2d4e56c0c4"></a><!-- doxytag: member="mimetic::codec_chain::operator|" ref="aca1cec1b96e5fbda63875e2d4e56c0c4" args="(const TailC &amp;l)" -->
template&lt;typename TailC &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">push_back_node&lt; <a class="el" href="structmimetic_1_1codec__chain.html">self_type</a>, <br class="typebreak"/>
<a class="el" href="structmimetic_1_1codec__chain.html">codec_chain</a>&lt; TailC &gt;<br class="typebreak"/>
 &gt;::node_type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><b>operator|</b> (const TailC &amp;l)</td></tr>
<tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19f1ba228b90bf01c174be86c905a038"></a><!-- doxytag: member="mimetic::codec_chain::m_c" ref="a19f1ba228b90bf01c174be86c905a038" args="" -->
content_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_c</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae559b5e28781172b4fa92d34a466e805"></a><!-- doxytag: member="mimetic::codec_chain::m_next" ref="ae559b5e28781172b4fa92d34a466e805" args="" -->
next_node_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_next</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb41893ba19e889e56c559f25fc1a68a"></a><!-- doxytag: member="mimetic::codec_chain::m_name" ref="adb41893ba19e889e56c559f25fc1a68a" args="" -->
std::string&nbsp;</td><td class="memItemRight" valign="bottom"><b>m_name</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;typename C, typename N&gt;<br/>
 struct mimetic::codec_chain&lt; C, N &gt;</h3>

<p>Defines a chain of codecs. </p>
<p>Chain of codecs. <b>Don't use it directly use | operator instead</b>.</p>
<div class="fragment"><pre class="fragment">     <span class="comment">// converts test string to upper case, replaces LF chars with</span>
    <span class="comment">// CRLF and encodes it using quoted-printable codec</span>
    ToUpperCase tuc;
    Lf2CrLf l2c;
    QP::Encoder qp; 
    <span class="keywordtype">char</span> buf[MAXLEN]; 

    <span class="keywordtype">string</span> test(<span class="stringliteral">&quot;....some text here....&quot;</span>);
    code(test.begin(), test.end(), tuc | l2c | qp, buf);
</pre></div><dl class="warning"><dt><b>Warning:</b></dt><dd>Chainable codecs must derive from chainable_codec&lt;&gt; </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="namespacemimetic.html#af63c5b54aaf9a18a0d6a1fa50356156c" title="Encodes (beg, end] using cc codec.">encode</a> <a class="el" href="namespacemimetic.html#a879a396d03bab00cafb9e703d596a809" title="decodes (beg, end] using cc codec and write any">decode</a> </dd></dl>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="codec__chain_8h_source.html">codec_chain.h</a></li>
</ul>
</div>
</BODY>
</HTML>