📄 classwin__qextserialport.html
字号:
<p>
</div>
</div><p>
<a class="anchor" name="a2968038a33b91c0f21e43f2a267a35c"></a><!-- doxytag: member="Win_QextSerialPort::Win_QextSerialPort" ref="a2968038a33b91c0f21e43f2a267a35c" args="(Win_QextSerialPort const &s)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Win_QextSerialPort::Win_QextSerialPort </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classWin__QextSerialPort.html">Win_QextSerialPort</a> const & </td>
<td class="paramname"> <em>s</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<a class="el" href="classWin__QextSerialPort.html#a2968038a33b91c0f21e43f2a267a35c">Win_QextSerialPort::Win_QextSerialPort(const Win_QextSerialPort&)</a> Copy constructor. <div class="fragment"><pre class="fragment"><a name="l00043"></a>00043 :
<a name="l00044"></a>00044 <a class="code" href="classQextSerialBase.html#ba0fc6d8b5c675c91ebff90fc6415748">QextSerialBase</a>(s.port)
<a name="l00045"></a>00045 {
<a name="l00046"></a>00046 <a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>=INVALID_HANDLE_VALUE;
<a name="l00047"></a>00047 <a class="code" href="classQextSerialBase.html#67f8a0fb2ce91824c1afc6c95e6b3c3a">_queryMode</a> = s._queryMode;
<a name="l00048"></a>00048 <a class="code" href="classWin__QextSerialPort.html#8e701bb9ef9ca4ff414b0cc89788fcab">_bytesToWrite</a> = s._bytesToWrite;
<a name="l00049"></a>00049 <a class="code" href="classWin__QextSerialPort.html#9dc5b1cba88ecda500921baf1cbe61a0">bytesToWriteLock</a> = <span class="keyword">new</span> QReadWriteLock;
<a name="l00050"></a>00050 <a class="code" href="classWin__QextSerialPort.html#9edfed65b7763c69d775a181c361e461">overlapThread</a> = <span class="keyword">new</span> <a class="code" href="classWin__QextSerialPort.html#8fce0c43e9f2c96af30e69cb4f8047cf">Win_QextSerialThread</a>(<span class="keyword">this</span>);
<a name="l00051"></a>00051 memcpy(& <a class="code" href="classWin__QextSerialPort.html#016eb4cecee3028d8bfa66146d262400">overlap</a>, & s.overlap, <span class="keyword">sizeof</span>(OVERLAPPED));
<a name="l00052"></a>00052 memcpy(& <a class="code" href="classWin__QextSerialPort.html#6ecb45970bd21691c3dc70d17b12e6be">overlapWrite</a>, & s.overlapWrite, <span class="keyword">sizeof</span>(OVERLAPPED));
<a name="l00053"></a>00053 <a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#setOpenMode">setOpenMode</a>(s.openMode());
<a name="l00054"></a>00054 <a class="code" href="classQextSerialBase.html#31816951ba89902fa1dfdb6f18b80f41">lastErr</a>=s.lastErr;
<a name="l00055"></a>00055 <a class="code" href="classQextSerialBase.html#7459f3818391091877c88595a48a950a">port</a> = s.port;
<a name="l00056"></a>00056 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#10720f6217b8d8b90c326ea030c43e30">FlowControl</a>=s.Settings.FlowControl;
<a name="l00057"></a>00057 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#8d0bfbdcb40e9e3919e3f9829ae72582">Parity</a>=s.Settings.Parity;
<a name="l00058"></a>00058 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#9ec9d5a304b2ac8d3a100d07bce7c0b6">DataBits</a>=s.Settings.DataBits;
<a name="l00059"></a>00059 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#0752c70eb7e12f02ddf59739a056b04c">StopBits</a>=s.Settings.StopBits;
<a name="l00060"></a>00060 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>=s.Settings.BaudRate;
<a name="l00061"></a>00061 <a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>=s.Win_Handle;
<a name="l00062"></a>00062 memcpy(&<a class="code" href="classWin__QextSerialPort.html#a51a3047aa92b01531219215bb415dbb">Win_CommConfig</a>, &s.Win_CommConfig, <span class="keyword">sizeof</span>(COMMCONFIG));
<a name="l00063"></a>00063 memcpy(&<a class="code" href="classWin__QextSerialPort.html#a3909dbcf96493e43d79e075e626d68b">Win_CommTimeouts</a>, &s.Win_CommTimeouts, <span class="keyword">sizeof</span>(COMMTIMEOUTS));
<a name="l00064"></a>00064 <span class="keywordflow">if</span> (s.overlapThread->isRunning())
<a name="l00065"></a>00065 <a class="code" href="classWin__QextSerialPort.html#9edfed65b7763c69d775a181c361e461">overlapThread</a>->start();
<a name="l00066"></a>00066 }
</pre></div>
<p>
</div>
</div><p>
<a class="anchor" name="ecb3e9c31c2156b9cc40de40a1603da4"></a><!-- doxytag: member="Win_QextSerialPort::Win_QextSerialPort" ref="ecb3e9c31c2156b9cc40de40a1603da4" args="(const QString &name, QextSerialBase::QueryMode mode=QextSerialBase::Polling)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Win_QextSerialPort::Win_QextSerialPort </td>
<td>(</td>
<td class="paramtype">const QString & </td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5">QextSerialBase::QueryMode</a> </td>
<td class="paramname"> <em>mode</em> = <code>QextSerialBase::Polling</code></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<div class="fragment"><pre class="fragment"><a name="l00074"></a>00074 :
<a name="l00075"></a>00075 <a class="code" href="classQextSerialBase.html#ba0fc6d8b5c675c91ebff90fc6415748">QextSerialBase</a>(name)
<a name="l00076"></a>00076 {
<a name="l00077"></a>00077 <a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>=INVALID_HANDLE_VALUE;
<a name="l00078"></a>00078 <a class="code" href="classQextSerialBase.html#bd8e3b9a5028f9c2645ba89c0fc08a6b">setQueryMode</a>(mode);
<a name="l00079"></a>00079 <a class="code" href="classWin__QextSerialPort.html#187315696bdc6ccb5d07c24ba6c4555f">init</a>();
<a name="l00080"></a>00080 }
</pre></div>
<p>
</div>
</div><p>
<a class="anchor" name="3680b356503229374962e1fc7e7d7d74"></a><!-- doxytag: member="Win_QextSerialPort::Win_QextSerialPort" ref="3680b356503229374962e1fc7e7d7d74" args="(const PortSettings &settings, QextSerialBase::QueryMode mode=QextSerialBase::Polling)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Win_QextSerialPort::Win_QextSerialPort </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structPortSettings.html">PortSettings</a> & </td>
<td class="paramname"> <em>settings</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5">QextSerialBase::QueryMode</a> </td>
<td class="paramname"> <em>mode</em> = <code>QextSerialBase::Polling</code></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<div class="fragment"><pre class="fragment"><a name="l00086"></a>00086 {
<a name="l00087"></a>00087 <a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>=INVALID_HANDLE_VALUE;
<a name="l00088"></a>00088 <a class="code" href="classWin__QextSerialPort.html#a5578e4862e3743da2a923f082f821d6">setBaudRate</a>(settings.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>);
<a name="l00089"></a>00089 <a class="code" href="classWin__QextSerialPort.html#33168191b03365b429b8413f6286f4c8">setDataBits</a>(settings.<a class="code" href="structPortSettings.html#9ec9d5a304b2ac8d3a100d07bce7c0b6">DataBits</a>);
<a name="l00090"></a>00090 <a class="code" href="classWin__QextSerialPort.html#67fc083cb06b6b1872fc4360cd599821">setStopBits</a>(settings.<a class="code" href="structPortSettings.html#0752c70eb7e12f02ddf59739a056b04c">StopBits</a>);
<a name="l00091"></a>00091 <a class="code" href="classWin__QextSerialPort.html#bae5c88ee4e09908766febede36a682a">setParity</a>(settings.<a class="code" href="structPortSettings.html#8d0bfbdcb40e9e3919e3f9829ae72582">Parity</a>);
<a name="l00092"></a>00092 <a class="code" href="classWin__QextSerialPort.html#7660b3b66f45ce087ea14572e753f44d">setFlowControl</a>(settings.<a class="code" href="structPortSettings.html#10720f6217b8d8b90c326ea030c43e30">FlowControl</a>);
<a name="l00093"></a>00093 <a class="code" href="classWin__QextSerialPort.html#40f1d5f9474e35c227e2d7ac681bb9a7">setTimeout</a>(settings.<a class="code" href="structPortSettings.html#159ca543549b3b872917fc4ef0757b60">Timeout_Sec</a>, settings.<a class="code" href="structPortSettings.html#c1b008038ad143262a2ee18247fe2c39">Timeout_Millisec</a>);
<a name="l00094"></a>00094 <a class="code" href="classQextSerialBase.html#bd8e3b9a5028f9c2645ba89c0fc08a6b">setQueryMode</a>(mode);
<a name="l00095"></a>00095 <a class="code" href="classWin__QextSerialPort.html#187315696bdc6ccb5d07c24ba6c4555f">init</a>();
<a name="l00096"></a>00096 }
</pre></div>
<p>
</div>
</div><p>
<a class="anchor" name="94cda3ec4eade1a810ae3250e2f445b8"></a><!-- doxytag: member="Win_QextSerialPort::Win_QextSerialPort" ref="94cda3ec4eade1a810ae3250e2f445b8" args="(const QString &name, const PortSettings &settings, QextSerialBase::QueryMode mode=QextSerialBase::Polling)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Win_QextSerialPort::Win_QextSerialPort </td>
<td>(</td>
<td class="paramtype">const QString & </td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structPortSettings.html">PortSettings</a> & </td>
<td class="paramname"> <em>settings</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5">QextSerialBase::QueryMode</a> </td>
<td class="paramname"> <em>mode</em> = <code>QextSerialBase::Polling</code></td><td> </td>
</tr>
<tr>
<td></td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -