⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 classwin__qextserialport.html

📁 qt下 第三方串口类 最新版本 1.2
💻 HTML
📖 第 1 页 / 共 5 页
字号:
          <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="l00102"></a>00102                                                                                                                        {
<a name="l00103"></a>00103     <a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>=INVALID_HANDLE_VALUE;
<a name="l00104"></a>00104     <a class="code" href="classQextSerialBase.html#1c9f83f00f0ea53ee06b757e197cdf64">setPortName</a>(name);
<a name="l00105"></a>00105     <a class="code" href="classWin__QextSerialPort.html#a5578e4862e3743da2a923f082f821d6">setBaudRate</a>(settings.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>);
<a name="l00106"></a>00106     <a class="code" href="classWin__QextSerialPort.html#33168191b03365b429b8413f6286f4c8">setDataBits</a>(settings.<a class="code" href="structPortSettings.html#9ec9d5a304b2ac8d3a100d07bce7c0b6">DataBits</a>);
<a name="l00107"></a>00107     <a class="code" href="classWin__QextSerialPort.html#67fc083cb06b6b1872fc4360cd599821">setStopBits</a>(settings.<a class="code" href="structPortSettings.html#0752c70eb7e12f02ddf59739a056b04c">StopBits</a>);
<a name="l00108"></a>00108     <a class="code" href="classWin__QextSerialPort.html#bae5c88ee4e09908766febede36a682a">setParity</a>(settings.<a class="code" href="structPortSettings.html#8d0bfbdcb40e9e3919e3f9829ae72582">Parity</a>);
<a name="l00109"></a>00109     <a class="code" href="classWin__QextSerialPort.html#7660b3b66f45ce087ea14572e753f44d">setFlowControl</a>(settings.<a class="code" href="structPortSettings.html#10720f6217b8d8b90c326ea030c43e30">FlowControl</a>);
<a name="l00110"></a>00110     <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="l00111"></a>00111     <a class="code" href="classQextSerialBase.html#bd8e3b9a5028f9c2645ba89c0fc08a6b">setQueryMode</a>(mode);
<a name="l00112"></a>00112     <a class="code" href="classWin__QextSerialPort.html#187315696bdc6ccb5d07c24ba6c4555f">init</a>();
<a name="l00113"></a>00113 }
</pre></div>
<p>

</div>
</div><p>
<a class="anchor" name="6700be65cee973991ccf77a6afdf131a"></a><!-- doxytag: member="Win_QextSerialPort::~Win_QextSerialPort" ref="6700be65cee973991ccf77a6afdf131a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Win_QextSerialPort::~Win_QextSerialPort           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Standard destructor. <div class="fragment"><pre class="fragment"><a name="l00131"></a>00131                                         {
<a name="l00132"></a>00132     <span class="keywordflow">if</span> (<a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#isOpen">isOpen</a>()) {
<a name="l00133"></a>00133         <a class="code" href="classWin__QextSerialPort.html#fd2a4f6a94c877e5ae2dbf742af61b1d">close</a>();
<a name="l00134"></a>00134     }
<a name="l00135"></a>00135     CloseHandle(<a class="code" href="classWin__QextSerialPort.html#016eb4cecee3028d8bfa66146d262400">overlap</a>.hEvent);
<a name="l00136"></a>00136     <span class="keyword">delete</span> <a class="code" href="classWin__QextSerialPort.html#9edfed65b7763c69d775a181c361e461">overlapThread</a>;
<a name="l00137"></a>00137     <span class="keyword">delete</span> <a class="code" href="classWin__QextSerialPort.html#9dc5b1cba88ecda500921baf1cbe61a0">bytesToWriteLock</a>; 
<a name="l00138"></a>00138 }
</pre></div>
<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="573bd8fdf0ea5e4fb6caddc13a0ed5eb"></a><!-- doxytag: member="Win_QextSerialPort::atEnd" ref="573bd8fdf0ea5e4fb6caddc13a0ed5eb" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool QextSerialBase::atEnd           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function will return true if the input buffer is empty (or on error), and false otherwise. Call <a class="el" href="classQextSerialBase.html#e4029cb49127422b7e76586930366b05">QextSerialBase::lastError()</a> for error information. <div class="fragment"><pre class="fragment"><a name="l00164"></a>00164 {
<a name="l00165"></a>00165     <span class="keywordflow">if</span> (<a class="code" href="classQextSerialBase.html#86fc9d6239b7d136a9d80b93a727e093">size</a>()) {
<a name="l00166"></a>00166         <span class="keywordflow">return</span> <span class="keyword">true</span>;
<a name="l00167"></a>00167     }
<a name="l00168"></a>00168     <span class="keywordflow">return</span> <span class="keyword">false</span>;
<a name="l00169"></a>00169 }
</pre></div>
<p>

</div>
</div><p>
<a class="anchor" name="6d6eeab48cad2fa2adbebb23920c661a"></a><!-- doxytag: member="Win_QextSerialPort::baudRate" ref="6d6eeab48cad2fa2adbebb23920c661a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="qextserialbase_8h.html#6f031169a6a9b150b5af707bb23cf010">BaudRateType</a> QextSerialBase::baudRate           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the baud rate of the serial port. For a list of possible return values see the definition of the enum BaudRateType. <div class="fragment"><pre class="fragment"><a name="l00103"></a>00103 {
<a name="l00104"></a>00104     <span class="keywordflow">return</span> <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>;
<a name="l00105"></a>00105 }
</pre></div>
<p>

</div>
</div><p>
<a class="anchor" name="8c76fa901fd01f97f57addad088c3e2c"></a><!-- doxytag: member="Win_QextSerialPort::bytesAvailable" ref="8c76fa901fd01f97f57addad088c3e2c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">qint64 Win_QextSerialPort::bytesAvailable           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the number of bytes waiting in the port's receive queue. This function will return 0 if the port is not currently open, or -1 on error. Error information can be retrieved by calling Win_QextSerialPort::getLastError(). 
<p>
Implements <a class="el" href="classQextSerialBase.html#7e130a0ba5a0a9ba95ce5f75a5e2c526">QextSerialBase</a>.<div class="fragment"><pre class="fragment"><a name="l00287"></a>00287                                           {
<a name="l00288"></a>00288     LOCK_MUTEX();
<a name="l00289"></a>00289     <span class="keywordflow">if</span> (<a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#isOpen">isOpen</a>()) {
<a name="l00290"></a>00290         DWORD Errors;
<a name="l00291"></a>00291         COMSTAT Status;
<a name="l00292"></a>00292         <span class="keywordtype">bool</span> success=ClearCommError(<a class="code" href="classWin__QextSerialPort.html#f6dae6bb1c6b51e766e551bc11f1721d">Win_Handle</a>, &amp;Errors, &amp;Status);
<a name="l00293"></a>00293         <a class="code" href="classWin__QextSerialPort.html#bf215448e265ab0bc8d06cb05e0f7778">translateError</a>(Errors);
<a name="l00294"></a>00294         <span class="keywordflow">if</span> (success) {
<a name="l00295"></a>00295             <a class="code" href="classQextSerialBase.html#31816951ba89902fa1dfdb6f18b80f41">lastErr</a>=E_NO_ERROR;
<a name="l00296"></a>00296             UNLOCK_MUTEX();
<a name="l00297"></a>00297             <span class="keywordflow">return</span> Status.cbInQue + <a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#bytesAvailable">QIODevice::bytesAvailable</a>();
<a name="l00298"></a>00298         }
<a name="l00299"></a>00299         UNLOCK_MUTEX();
<a name="l00300"></a>00300         <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>)-1;
<a name="l00301"></a>00301     }
<a name="l00302"></a>00302     UNLOCK_MUTEX();
<a name="l00303"></a>00303     <span class="keywordflow">return</span> 0;
<a name="l00304"></a>00304 }
</pre></div>
<p>

</div>
</div><p>
<a class="anchor" name="11e2e2dc7c1756a12b268eef058f0237"></a><!-- doxytag: member="Win_QextSerialPort::bytesToWrite" ref="11e2e2dc7c1756a12b268eef058f0237" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">qint64 Win_QextSerialPort::bytesToWrite           </td>
          <td>(</td>
          <td class="paramname">          </td>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -