~ubuntu-branches/ubuntu/intrepid/asio/intrepid

« back to all changes in this revision

Viewing changes to doc/examples/a00022.html

  • Committer: Bazaar Package Importer
  • Author(s): Simon Richter
  • Date: 2007-09-07 11:10:41 UTC
  • Revision ID: james.westby@ubuntu.com-20070907111041-f0uwhs0llvzj9ah5
Tags: upstream-0.3.8~rc3
ImportĀ upstreamĀ versionĀ 0.3.8~rc3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<HTML>
 
2
  <HEAD>
 
3
    <TITLE>asio Examples: services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt; Class Template Reference</TITLE>
 
4
    <LINK HREF="asio.css" REL="stylesheet" TYPE="text/css">
 
5
    <LINK HREF="tabs.css" REL="stylesheet" TYPE="text/css">
 
6
  </HEAD>
 
7
  <BODY BGCOLOR="#FFFFFF">
 
8
    <DIV CLASS="qindex">
 
9
      <TABLE BORDER="0" WIDTH="100%">
 
10
        <TR>
 
11
          <TD ALIGN="LEFT">
 
12
            <B>asio 0.3.8rc3</B>
 
13
          </TD>
 
14
          <TD ALIGN="RIGHT">
 
15
            <A CLASS="qindex" HREF="../index.html">Home</A> |
 
16
            <A CLASS="qindex" HREF="../reference/index.html">Reference</A> |
 
17
            <A CLASS="qindex" HREF="../tutorial/index.html">Tutorial</A> |
 
18
            <A CLASS="qindex" HREF="../examples/index.html">Examples</A> |
 
19
            <A CLASS="qindex" HREF="../design/index.html">Design</A>
 
20
          </TD>
 
21
        </TR>
 
22
      </TABLE>
 
23
    </DIV>
 
24
    <DIV CLASS="qindex">
 
25
      <TABLE BORDER="0" WIDTH="100%">
 
26
        <TR>
 
27
          <TD ALIGN="LEFT">
 
28
            <B>Examples</B>
 
29
          </TD>
 
30
          <TD ALIGN="RIGHT">
 
31
          </TD>
 
32
        </TR>
 
33
      </TABLE>
 
34
    </DIV>
 
35
<!-- Generated by Doxygen 1.5.1 -->
 
36
<div class="nav">
 
37
<a class="el" href="a00062.html">services</a>::<a class="el" href="a00020.html">stream_socket_service</a>::<a class="el" href="a00022.html">receive_handler</a></div>
 
38
<h1>services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt; Class Template Reference</h1><!-- doxytag: class="services::stream_socket_service::receive_handler" -->Collaboration diagram for services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt;:<p><center><img src="a00133.png" border="0" usemap="#a00134" alt="Collaboration graph"></center>
 
39
<map name="a00134">
 
40
<area href="a00001.html" shape="rect" coords="177,138,478,298" alt="">
 
41
<area href="a00003.html" shape="rect" coords="236,8,420,88" alt="">
 
42
</map>
 
43
<a href="a00135.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
 
44
<h3>template&lt;typename Protocol&gt;<br>
 
45
template&lt;typename Handler&gt;<br>
 
46
 class services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt;</h3>
 
47
 
 
48
Handler to wrap asynchronous receive completion. 
 
49
<p>
 
50
 
 
51
<p>
 
52
Definition at line <a class="el" href="a00092.html#l00297">297</a> of file <a class="el" href="a00092.html">stream_socket_service.hpp</a>.<table border="0" cellpadding="0" cellspacing="0">
 
53
<tr><td></td></tr>
 
54
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
 
55
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00022.html#94b26fc1c94dfd3a981d38f634aa1127">receive_handler</a> (Handler h, <a class="el" href="a00001.html">logger</a> &amp;l)</td></tr>
 
56
 
 
57
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00022.html#ad46e5d5389de2817a29fdd6fd7b6ad2">operator()</a> (const <a class="elRef" doxygen="asio.doxytags:../reference/" href="../reference/a00030.html">asio::error_code</a> &amp;e, std::size_t bytes_transferred)</td></tr>
 
58
 
 
59
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
 
60
<tr><td class="memItemLeft" nowrap align="right" valign="top">Handler&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00022.html#2be0adb4aadfb86088f42ba9afbea323">handler_</a></td></tr>
 
61
 
 
62
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00001.html">logger</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00022.html#70416a0b6243a363c120cb1392bbcf16">logger_</a></td></tr>
 
63
 
 
64
</table>
 
65
<hr><h2>Constructor &amp; Destructor Documentation</h2>
 
66
<a class="anchor" name="94b26fc1c94dfd3a981d38f634aa1127"></a><!-- doxytag: member="services::stream_socket_service::receive_handler::receive_handler" ref="94b26fc1c94dfd3a981d38f634aa1127" args="(Handler h, logger &amp;l)" -->
 
67
<div class="memitem">
 
68
<div class="memproto">
 
69
<div class="memtemplate">
 
70
template&lt;typename Protocol&gt; </div>
 
71
<div class="memtemplate">
 
72
template&lt;typename Handler&gt; </div>
 
73
      <table class="memname">
 
74
        <tr>
 
75
          <td class="memname"><a class="el" href="a00020.html">services::stream_socket_service</a>&lt; Protocol &gt;::<a class="el" href="a00022.html">receive_handler</a>&lt; Handler &gt;::<a class="el" href="a00022.html">receive_handler</a>           </td>
 
76
          <td>(</td>
 
77
          <td class="paramtype">Handler&nbsp;</td>
 
78
          <td class="paramname"> <em>h</em>, </td>
 
79
        </tr>
 
80
        <tr>
 
81
          <td class="paramkey"></td>
 
82
          <td></td>
 
83
          <td class="paramtype"><a class="el" href="a00001.html">logger</a> &amp;&nbsp;</td>
 
84
          <td class="paramname"> <em>l</em></td><td>&nbsp;</td>
 
85
        </tr>
 
86
        <tr>
 
87
          <td></td>
 
88
          <td>)</td>
 
89
          <td></td><td></td><td width="100%"></td>
 
90
        </tr>
 
91
      </table>
 
92
</div>
 
93
<div class="memdoc">
 
94
 
 
95
<p>
 
96
 
 
97
<p>
 
98
Definition at line <a class="el" href="a00092.html#l00300">300</a> of file <a class="el" href="a00092.html">stream_socket_service.hpp</a>.<div class="fragment"><pre class="fragment"><a name="l00301"></a>00301       : <a class="code" href="a00022.html#2be0adb4aadfb86088f42ba9afbea323">handler_</a>(h),
 
99
<a name="l00302"></a>00302         <a class="code" href="a00022.html#70416a0b6243a363c120cb1392bbcf16">logger_</a>(l)
 
100
<a name="l00303"></a>00303     {
 
101
<a name="l00304"></a>00304     }
 
102
</pre></div>
 
103
<p>
 
104
 
 
105
</div>
 
106
</div><p>
 
107
<hr><h2>Member Function Documentation</h2>
 
108
<a class="anchor" name="ad46e5d5389de2817a29fdd6fd7b6ad2"></a><!-- doxytag: member="services::stream_socket_service::receive_handler::operator()" ref="ad46e5d5389de2817a29fdd6fd7b6ad2" args="(const asio::error_code &amp;e, std::size_t bytes_transferred)" -->
 
109
<div class="memitem">
 
110
<div class="memproto">
 
111
<div class="memtemplate">
 
112
template&lt;typename Protocol&gt; </div>
 
113
<div class="memtemplate">
 
114
template&lt;typename Handler&gt; </div>
 
115
      <table class="memname">
 
116
        <tr>
 
117
          <td class="memname">void <a class="el" href="a00020.html">services::stream_socket_service</a>&lt; Protocol &gt;::<a class="el" href="a00022.html">receive_handler</a>&lt; Handler &gt;::operator()           </td>
 
118
          <td>(</td>
 
119
          <td class="paramtype">const <a class="elRef" doxygen="asio.doxytags:../reference/" href="../reference/a00030.html">asio::error_code</a> &amp;&nbsp;</td>
 
120
          <td class="paramname"> <em>e</em>, </td>
 
121
        </tr>
 
122
        <tr>
 
123
          <td class="paramkey"></td>
 
124
          <td></td>
 
125
          <td class="paramtype">std::size_t&nbsp;</td>
 
126
          <td class="paramname"> <em>bytes_transferred</em></td><td>&nbsp;</td>
 
127
        </tr>
 
128
        <tr>
 
129
          <td></td>
 
130
          <td>)</td>
 
131
          <td></td><td></td><td width="100%"></td>
 
132
        </tr>
 
133
      </table>
 
134
</div>
 
135
<div class="memdoc">
 
136
 
 
137
<p>
 
138
 
 
139
<p>
 
140
Definition at line <a class="el" href="a00092.html#l00306">306</a> of file <a class="el" href="a00092.html">stream_socket_service.hpp</a>.<div class="fragment"><pre class="fragment"><a name="l00308"></a>00308     {
 
141
<a name="l00309"></a>00309       <span class="keywordflow">if</span> (e)
 
142
<a name="l00310"></a>00310       {
 
143
<a name="l00311"></a>00311         std::string msg = <span class="stringliteral">"Asynchronous receive failed: "</span>;
 
144
<a name="l00312"></a>00312         msg += e.message();
 
145
<a name="l00313"></a>00313         <a class="code" href="a00022.html#70416a0b6243a363c120cb1392bbcf16">logger_</a>.log(msg);
 
146
<a name="l00314"></a>00314       }
 
147
<a name="l00315"></a>00315       <span class="keywordflow">else</span>
 
148
<a name="l00316"></a>00316       {
 
149
<a name="l00317"></a>00317         <a class="code" href="a00022.html#70416a0b6243a363c120cb1392bbcf16">logger_</a>.log(<span class="stringliteral">"Asynchronous receive succeeded"</span>);
 
150
<a name="l00318"></a>00318       }
 
151
<a name="l00319"></a>00319 
 
152
<a name="l00320"></a>00320       <a class="code" href="a00022.html#2be0adb4aadfb86088f42ba9afbea323">handler_</a>(e, bytes_transferred);
 
153
<a name="l00321"></a>00321     }
 
154
</pre></div>
 
155
<p>
 
156
 
 
157
</div>
 
158
</div><p>
 
159
<hr><h2>Member Data Documentation</h2>
 
160
<a class="anchor" name="2be0adb4aadfb86088f42ba9afbea323"></a><!-- doxytag: member="services::stream_socket_service::receive_handler::handler_" ref="2be0adb4aadfb86088f42ba9afbea323" args="" -->
 
161
<div class="memitem">
 
162
<div class="memproto">
 
163
<div class="memtemplate">
 
164
template&lt;typename Protocol&gt; </div>
 
165
<div class="memtemplate">
 
166
template&lt;typename Handler&gt; </div>
 
167
      <table class="memname">
 
168
        <tr>
 
169
          <td class="memname">Handler <a class="el" href="a00020.html">services::stream_socket_service</a>&lt; Protocol &gt;::<a class="el" href="a00022.html">receive_handler</a>&lt; Handler &gt;::<a class="el" href="a00022.html#2be0adb4aadfb86088f42ba9afbea323">handler_</a><code> [private]</code>          </td>
 
170
        </tr>
 
171
      </table>
 
172
</div>
 
173
<div class="memdoc">
 
174
 
 
175
<p>
 
176
 
 
177
<p>
 
178
Definition at line <a class="el" href="a00092.html#l00324">324</a> of file <a class="el" href="a00092.html">stream_socket_service.hpp</a>.
 
179
<p>
 
180
Referenced by <a class="el" href="a00092.html#l00306">services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt;::operator()()</a>.
 
181
</div>
 
182
</div><p>
 
183
<a class="anchor" name="70416a0b6243a363c120cb1392bbcf16"></a><!-- doxytag: member="services::stream_socket_service::receive_handler::logger_" ref="70416a0b6243a363c120cb1392bbcf16" args="" -->
 
184
<div class="memitem">
 
185
<div class="memproto">
 
186
<div class="memtemplate">
 
187
template&lt;typename Protocol&gt; </div>
 
188
<div class="memtemplate">
 
189
template&lt;typename Handler&gt; </div>
 
190
      <table class="memname">
 
191
        <tr>
 
192
          <td class="memname"><a class="el" href="a00001.html">logger</a>&amp; <a class="el" href="a00020.html">services::stream_socket_service</a>&lt; Protocol &gt;::<a class="el" href="a00022.html">receive_handler</a>&lt; Handler &gt;::<a class="el" href="a00022.html#70416a0b6243a363c120cb1392bbcf16">logger_</a><code> [private]</code>          </td>
 
193
        </tr>
 
194
      </table>
 
195
</div>
 
196
<div class="memdoc">
 
197
 
 
198
<p>
 
199
 
 
200
<p>
 
201
Definition at line <a class="el" href="a00092.html#l00325">325</a> of file <a class="el" href="a00092.html">stream_socket_service.hpp</a>.
 
202
<p>
 
203
Referenced by <a class="el" href="a00092.html#l00306">services::stream_socket_service&lt; Protocol &gt;::receive_handler&lt; Handler &gt;::operator()()</a>.
 
204
</div>
 
205
</div><p>
 
206
<hr>The documentation for this class was generated from the following file:<ul>
 
207
<li>services/<a class="el" href="a00092.html">stream_socket_service.hpp</a></ul>
 
208
    <DIV CLASS="qindex">
 
209
      <TABLE BORDER="0" WIDTH="100%">
 
210
        <TR>
 
211
          <TD ALIGN="LEFT">
 
212
            <B>asio 0.3.8rc3</B>
 
213
          </TD>
 
214
          <TD ALIGN="RIGHT">
 
215
            <A CLASS="qindex" HREF="../index.html">Home</A> |
 
216
            <A CLASS="qindex" HREF="../reference/index.html">Reference</A> |
 
217
            <A CLASS="qindex" HREF="../tutorial/index.html">Tutorial</A> |
 
218
            <A CLASS="qindex" HREF="../examples/index.html">Examples</A> |
 
219
            <A CLASS="qindex" HREF="../design/index.html">Design</A>
 
220
          </TD>
 
221
        </TR>
 
222
      </TABLE>
 
223
    </DIV>
 
224
  </BODY>
 
225
</HTML>