📄 class_redirector.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>Crypto++: Redirector Class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.5.2 --><div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul></div><h1>Redirector Class Reference</h1><!-- doxytag: class="Redirector" --><!-- doxytag: inherits="CustomSignalPropagation< Sink >" --><code>#include <<a class="el" href="filters_8h-source.html">filters.h</a>></code><p><p>Inheritance diagram for Redirector:<p><center><img src="class_redirector.png" usemap="#Redirector_map" border="0" alt=""></center><map name="Redirector_map"><area href="class_custom_signal_propagation.html" alt="CustomSignalPropagation< Sink >" shape="rect" coords="107,280,311,304"><area href="class_custom_flush_propagation.html" alt="CustomFlushPropagation< Sink >" shape="rect" coords="107,224,311,248"><area href="class_sink.html" alt="Sink" shape="rect" coords="107,168,311,192"><area href="class_buffered_transformation.html" alt="BufferedTransformation" shape="rect" coords="107,112,311,136"><area href="class_algorithm.html" alt="Algorithm" shape="rect" coords="0,56,204,80"><area href="class_waitable.html" alt="Waitable" shape="rect" coords="214,56,418,80"><area href="class_clonable.html" alt="Clonable" shape="rect" coords="0,0,204,24"></map><a href="class_redirector-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>Redirect input to another <a class="el" href="class_buffered_transformation.html" title="interface for buffered transformations">BufferedTransformation</a> without owning it. <p><p>Definition at line <a class="el" href="filters_8h-source.html#l00394">394</a> of file <a class="el" href="filters_8h-source.html">filters.h</a>.<table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Public Types</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67">Behavior</a> { <a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de671ca858a44d042173d50b058a34c3403c">DATA_ONLY</a> = 0x00, <a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67469c499eec32b53d40476c7ff7bb20d0">PASS_SIGNALS</a> = 0x01, <a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67619f260cb40cef8ab7a1bef2dfd568e1">PASS_WAIT_OBJECTS</a> = 0x02, <a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de679bedf58acdacc835d476e8783c169c2f">PASS_EVERYTHING</a> = PASS_SIGNALS | PASS_WAIT_OBJECTS }</td></tr><tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d88cbf0d8971aa96eeaeff78dc743c25"></a><!-- doxytag: member="Redirector::Redirector" ref="d88cbf0d8971aa96eeaeff78dc743c25" args="()" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#d88cbf0d8971aa96eeaeff78dc743c25">Redirector</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ce7d175c4cf620add11915dcbe447fb"></a><!-- doxytag: member="Redirector::Redirector" ref="0ce7d175c4cf620add11915dcbe447fb" args="(BufferedTransformation &target, Behavior behavior=PASS_EVERYTHING)" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#0ce7d175c4cf620add11915dcbe447fb">Redirector</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &target, <a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67">Behavior</a> behavior=PASS_EVERYTHING)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="890fae5ac4297b1c06c6f93252a0f92c"></a><!-- doxytag: member="Redirector::Redirect" ref="890fae5ac4297b1c06c6f93252a0f92c" args="(BufferedTransformation &target)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#890fae5ac4297b1c06c6f93252a0f92c">Redirect</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &target)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="72b5a632f5d66cd3943fa4eed1563956"></a><!-- doxytag: member="Redirector::StopRedirection" ref="72b5a632f5d66cd3943fa4eed1563956" args="()" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#72b5a632f5d66cd3943fa4eed1563956">StopRedirection</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3a8e0ac74e391ed8397aa5aff5fd0d17"></a><!-- doxytag: member="Redirector::GetBehavior" ref="3a8e0ac74e391ed8397aa5aff5fd0d17" args="()" --><a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67">Behavior</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#3a8e0ac74e391ed8397aa5aff5fd0d17">GetBehavior</a> ()</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c72d36b260e828760dc1a02d2f735eb9"></a><!-- doxytag: member="Redirector::SetBehavior" ref="c72d36b260e828760dc1a02d2f735eb9" args="(Behavior behavior)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#c72d36b260e828760dc1a02d2f735eb9">SetBehavior</a> (<a class="el" href="class_redirector.html#2de79d5742280aa614c218c7b950de67">Behavior</a> behavior)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="47ceefd50d8a6e30b1daf16e10c84436"></a><!-- doxytag: member="Redirector::GetPassSignals" ref="47ceefd50d8a6e30b1daf16e10c84436" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#47ceefd50d8a6e30b1daf16e10c84436">GetPassSignals</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6b9b95451ee988541efe376f2ccb11fe"></a><!-- doxytag: member="Redirector::SetPassSignals" ref="6b9b95451ee988541efe376f2ccb11fe" args="(bool pass)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#6b9b95451ee988541efe376f2ccb11fe">SetPassSignals</a> (bool pass)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4abad53f185a07bdaa8d575483154501"></a><!-- doxytag: member="Redirector::GetPassWaitObjects" ref="4abad53f185a07bdaa8d575483154501" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#4abad53f185a07bdaa8d575483154501">GetPassWaitObjects</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="41f0adf8f3bc547609d95b67bb0ef404"></a><!-- doxytag: member="Redirector::SetPassWaitObjects" ref="41f0adf8f3bc547609d95b67bb0ef404" args="(bool pass)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#41f0adf8f3bc547609d95b67bb0ef404">SetPassWaitObjects</a> (bool pass)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ee0003a41e0fbebe12ff2b4d9f19559"></a><!-- doxytag: member="Redirector::CanModifyInput" ref="2ee0003a41e0fbebe12ff2b4d9f19559" args="() const" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#2ee0003a41e0fbebe12ff2b4d9f19559">CanModifyInput</a> () const</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f5fe25d9b6e17ec878e8f2b188702736"></a><!-- doxytag: member="Redirector::Initialize" ref="f5fe25d9b6e17ec878e8f2b188702736" args="(const NameValuePairs &parameters, int propagation)" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#f5fe25d9b6e17ec878e8f2b188702736">Initialize</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &parameters, int propagation)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">initialize or reinitialize this object <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">byte * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#09afd32c22cc2d4ef9ddc8650b8657f5">CreatePutSpace</a> (size_t &size)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">request space which can be written into by the caller, and then used as input to <a class="el" href="class_buffered_transformation.html#e70658b0d271f8e114ac6c3cc9774ede" title="input a byte for processing">Put()</a> <a href="#09afd32c22cc2d4ef9ddc8650b8657f5"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#d58b58c62b2b5b1100f13ae8bdb8dd14">Put2</a> (const byte *begin, size_t length, int messageEnd, bool blocking)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">input multiple bytes for blocking or non-blocking processing <a href="#d58b58c62b2b5b1100f13ae8bdb8dd14"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#201243b803642ebfd392579953e75e92">Flush</a> (bool hardFlush, int propagation=-1, bool blocking=true)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">flush buffered input and/or output <a href="#201243b803642ebfd392579953e75e92"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#34c42c1730d031f486e5d285c6dc3314">MessageSeriesEnd</a> (int propagation=-1, bool blocking=true)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">mark end of a series of messages <a href="#34c42c1730d031f486e5d285c6dc3314"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6e882384f0214dfc148abf38955ec0e5"></a><!-- doxytag: member="Redirector::ChannelCreatePutSpace" ref="6e882384f0214dfc148abf38955ec0e5" args="(const std::string &channel, size_t &size)" -->byte * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#6e882384f0214dfc148abf38955ec0e5">ChannelCreatePutSpace</a> (const std::string &channel, size_t &size)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd6d9e39c8d0f95d99b41129f1c97dae"></a><!-- doxytag: member="Redirector::ChannelPut2" ref="cd6d9e39c8d0f95d99b41129f1c97dae" args="(const std::string &channel, const byte *begin, size_t length, int messageEnd, bool blocking)" -->size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#cd6d9e39c8d0f95d99b41129f1c97dae">ChannelPut2</a> (const std::string &channel, const byte *begin, size_t length, int messageEnd, bool blocking)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a39d3ce8654aede6c9473129125dffc7"></a><!-- doxytag: member="Redirector::ChannelPutModifiable2" ref="a39d3ce8654aede6c9473129125dffc7" args="(const std::string &channel, byte *begin, size_t length, int messageEnd, bool blocking)" -->size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#a39d3ce8654aede6c9473129125dffc7">ChannelPutModifiable2</a> (const std::string &channel, byte *begin, size_t length, int messageEnd, bool blocking)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9dde3ac97812d4ba31245f46192cb627"></a><!-- doxytag: member="Redirector::ChannelFlush" ref="9dde3ac97812d4ba31245f46192cb627" args="(const std::string &channel, bool completeFlush, int propagation=-1, bool blocking=true)" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#9dde3ac97812d4ba31245f46192cb627">ChannelFlush</a> (const std::string &channel, bool completeFlush, int propagation=-1, bool blocking=true)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="827e4af441934015de54ceb14334503d"></a><!-- doxytag: member="Redirector::ChannelMessageSeriesEnd" ref="827e4af441934015de54ceb14334503d" args="(const std::string &channel, int propagation=-1, bool blocking=true)" -->bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#827e4af441934015de54ceb14334503d">ChannelMessageSeriesEnd</a> (const std::string &channel, int propagation=-1, bool blocking=true)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="421073132346b5dc66750520cd859c94"></a><!-- doxytag: member="Redirector::GetMaxWaitObjectCount" ref="421073132346b5dc66750520cd859c94" args="() const" -->unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#421073132346b5dc66750520cd859c94">GetMaxWaitObjectCount</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">maximum number of wait objects that this object can return <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_redirector.html#c0dc5f63f7a57af37f819aa9251a78bf">GetWaitObjects</a> (<a class="el" href="class_wait_object_container.html">WaitObjectContainer</a> &container, <a class="el" href="class_call_stack.html">CallStack</a> const &callStack)</td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -