📄 classposix__qextserialport.html
字号:
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="qiodevice.tag:" href="qiodevice.html#size">size</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual qint64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#6d5f7c00853102e7073120ddb4701f82">size</a> () const </td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="qextserialbase_8h.html#dc8078895cd941d755d46633b54d3e7f">StopBitsType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#253c4b9419d2f541ba93fe3e6f73e495">stopBits</a> () const </td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#a099923f1360a08c6b7072254fd056e6">translateError</a> (ulong error)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#3a425e78db628945a666c52aa8638d0f">ungetChar</a> (char c)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="qiodevice.tag:" href="qiodevice.html#waitForBytesWritten">waitForBytesWritten</a> (int msecs)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="qiodevice.tag:" href="qiodevice.html#waitForReadyRead">waitForReadyRead</a> (int msecs)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="qiodevice.tag:" href="qiodevice.html#write-2">write</a> (const QByteArray &byteArray)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="qiodevice.tag:" href="qiodevice.html#write">write</a> (const char *data, qint64 maxSize)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#12f6cdddbfd1b37109a39a0bcffb446d">~Posix_QextSerialPort</a> ()</td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual qint64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#73b99fe7198e7e94b13c13416a6b9fae">readData</a> (char *data, qint64 maxSize)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual qint64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#e8aabe89e479259b0b991dbd6b424f78">writeData</a> (const char *data, qint64 maxSize)</td></tr>
<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5">QextSerialBase::QueryMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#67f8a0fb2ce91824c1afc6c95e6b3c3a">_queryMode</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">ulong </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#31816951ba89902fa1dfdb6f18b80f41">lastErr</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QMutex * </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#0c7cf6443ad80a05d51daaca5d0102ab">mutex</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#7459f3818391091877c88595a48a950a">port</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">termios </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#4946a554d3cfcd190b4df72f6f44f6eb">Posix_CommConfig</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">timeval </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#e5813ea1fd76c8c5a8948c4085d3e84e">Posix_Copy_Timeout</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QFile * </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#c4fcc5ae9850c3bc9952a13e4ef82273">Posix_File</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">timeval </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#0a876397917fbf082b56ae43ab2b4b7b">Posix_Timeout</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structPortSettings.html">PortSettings</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a></td></tr>
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPosix__QextSerialPort.html#40543adb7293f5c3d51215c60a0a4bb3">init</a> ()</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<dl compact><dt><b>Version:</b></dt><dd>1.0.0 </dd></dl>
<dl compact><dt><b>Author:</b></dt><dd>Stefan Sander <p>
Michal Policht</dd></dl>
A cross-platform serial port class. This class encapsulates the POSIX portion of <a class="el" href="classQextSerialPort.html">QextSerialPort</a>. The user will be notified of errors and possible portability conflicts at run-time by default - this behavior can be turned off by defining _TTY_NOWARN_ (to turn off all warnings) or _TTY_NOWARN_PORT_ (to turn off portability warnings) in the project. Note that _TTY_NOWARN_ will also turn off portability warnings.
<p>
<hr><h2>Member Enumeration Documentation</h2>
<a class="anchor" name="bab21776f71ceb4989ad2326680143f5"></a><!-- doxytag: member="Posix_QextSerialPort::QueryMode" ref="bab21776f71ceb4989ad2326680143f5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5">QextSerialBase::QueryMode</a><code> [inherited]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="bab21776f71ceb4989ad2326680143f5be330e20a1dee9cf5920a417f70eecf0"></a><!-- doxytag: member="Polling" ref="bab21776f71ceb4989ad2326680143f5be330e20a1dee9cf5920a417f70eecf0" args="" -->Polling</em> </td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="bab21776f71ceb4989ad2326680143f517be3efd147aa1cbf72ce26c61325ccd"></a><!-- doxytag: member="EventDriven" ref="bab21776f71ceb4989ad2326680143f517be3efd147aa1cbf72ce26c61325ccd" args="" -->EventDriven</em> </td><td>
</td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classQextSerialPort.html#211f50c9fa3b22235b2dbfa0126c125a">QextSerialPort</a>.<div class="fragment"><pre class="fragment"><a name="l00154"></a>00154 {
<a name="l00155"></a>00155 <a class="code" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f5be330e20a1dee9cf5920a417f70eecf0">Polling</a>,
<a name="l00156"></a>00156 <a class="code" href="classQextSerialBase.html#bab21776f71ceb4989ad2326680143f517be3efd147aa1cbf72ce26c61325ccd">EventDriven</a>
<a name="l00157"></a>00157 };
</pre></div>
<p>
</div>
</div><p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="e6e0dda91cd654352c26686e88a416ff"></a><!-- doxytag: member="Posix_QextSerialPort::Posix_QextSerialPort" ref="e6e0dda91cd654352c26686e88a416ff" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Posix_QextSerialPort::Posix_QextSerialPort </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Default constructor. Note that the name of the device used by a <a class="el" href="classQextSerialPort.html">QextSerialPort</a> constructed with this constructor will be determined by defined constants, or lack thereof - the default behavior is the same as _TTY_LINUX_. Possible naming conventions and their associated constants are:<p>
<div class="fragment"><pre class="fragment">Constant Used By Naming Convention
---------- ------------- ------------------------
_TTY_WIN_ Windows COM1, COM2
_TTY_IRIX_ SGI/IRIX /dev/ttyf1, /dev/ttyf2
_TTY_HPUX_ HP-UX /dev/tty1p0, /dev/tty2p0
_TTY_SUN_ SunOS/Solaris /dev/ttya, /dev/ttyb
_TTY_DIGITAL_ Digital UNIX /dev/tty01, /dev/tty02
_TTY_FREEBSD_ FreeBSD /dev/ttyd0, /dev/ttyd1
_TTY_LINUX_ Linux /dev/ttyS0, /dev/ttyS1
<none> Linux /dev/ttyS0, /dev/ttyS1
</pre></div><p>
This constructor assigns the device name to the name of the first port on the specified system. See the other constructors if you need to open a different port. <div class="fragment"><pre class="fragment"><a name="l00042"></a>00042 : <a class="code" href="classQextSerialBase.html#ba0fc6d8b5c675c91ebff90fc6415748">QextSerialBase</a>()
<a name="l00043"></a>00043 {
<a name="l00044"></a>00044 <a class="code" href="classPosix__QextSerialPort.html#c4fcc5ae9850c3bc9952a13e4ef82273">Posix_File</a>=<span class="keyword">new</span> QFile();
<a name="l00045"></a>00045 }
</pre></div>
<p>
</div>
</div><p>
<a class="anchor" name="c409b3d891500be663894c9910749390"></a><!-- doxytag: member="Posix_QextSerialPort::Posix_QextSerialPort" ref="c409b3d891500be663894c9910749390" args="(const Posix_QextSerialPort &s)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Posix_QextSerialPort::Posix_QextSerialPort </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classPosix__QextSerialPort.html">Posix_QextSerialPort</a> & </td>
<td class="paramname"> <em>s</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Copy constructor. <div class="fragment"><pre class="fragment"><a name="l00052"></a>00052 : <a class="code" href="classQextSerialBase.html#ba0fc6d8b5c675c91ebff90fc6415748">QextSerialBase</a>(s.<a class="code" href="classQextSerialBase.html#7459f3818391091877c88595a48a950a">port</a>)
<a name="l00053"></a>00053 {
<a name="l00054"></a>00054 <a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#setOpenMode">setOpenMode</a>(s.<a class="codeRef" doxygen="qiodevice.tag:" href="qiodevice.html#openMode">openMode</a>());
<a name="l00055"></a>00055 <a class="code" href="classQextSerialBase.html#7459f3818391091877c88595a48a950a">port</a> = s.<a class="code" href="classQextSerialBase.html#7459f3818391091877c88595a48a950a">port</a>;
<a name="l00056"></a>00056 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>=s.<a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#be617f3545d6be4587e1a0700a0b0e5b">BaudRate</a>;
<a name="l00057"></a>00057 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#9ec9d5a304b2ac8d3a100d07bce7c0b6">DataBits</a>=s.<a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#9ec9d5a304b2ac8d3a100d07bce7c0b6">DataBits</a>;
<a name="l00058"></a>00058 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#8d0bfbdcb40e9e3919e3f9829ae72582">Parity</a>=s.<a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#8d0bfbdcb40e9e3919e3f9829ae72582">Parity</a>;
<a name="l00059"></a>00059 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#0752c70eb7e12f02ddf59739a056b04c">StopBits</a>=s.<a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#0752c70eb7e12f02ddf59739a056b04c">StopBits</a>;
<a name="l00060"></a>00060 <a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#10720f6217b8d8b90c326ea030c43e30">FlowControl</a>=s.<a class="code" href="classQextSerialBase.html#2d796e3080f78ff63e821f528439db57">Settings</a>.<a class="code" href="structPortSettings.html#10720f6217b8d8b90c326ea030c43e30">FlowControl</a>;
<a name="l00061"></a>00061 <a class="code" href="classQextSerialBase.html#31816951ba89902fa1dfdb6f18b80f41">lastErr</a>=s.<a class="code" href="classQextSerialBase.html#31816951ba89902fa1dfdb6f18b80f41">lastErr</a>;
<a name="l00062"></a>00062
<a name="l00063"></a>00063 <a class="code" href="classPosix__QextSerialPort.html#c4fcc5ae9850c3bc9952a13e4ef82273">Posix_File</a>=<span class="keyword">new</span> QFile();
<a name="l00064"></a>00064 <a class="code" href="classPosix__QextSerialPort.html#c4fcc5ae9850c3bc9952a13e4ef82273">Posix_File</a>=s.<a class="code" href="classPosix__QextSerialPort.html#c4fcc5ae9850c3bc9952a13e4ef82273">Posix_File</a>;
<a name="l00065"></a>00065 memcpy(&<a class="code" href="classPosix__QextSerialPort.html#0a876397917fbf082b56ae43ab2b4b7b">Posix_Timeout</a>, &s.<a class="code" href="classPosix__QextSerialPort.html#0a876397917fbf082b56ae43ab2b4b7b">Posix_Timeout</a>, <span class="keyword">sizeof</span>(<span class="keyword">struct</span> timeval));
<a name="l00066"></a>00066 memcpy(&<a class="code" href="classPosix__QextSerialPort.html#e5813ea1fd76c8c5a8948c4085d3e84e">Posix_Copy_Timeout</a>, &s.<a class="code" href="classPosix__QextSerialPort.html#e5813ea1fd76c8c5a8948c4085d3e84e">Posix_Copy_Timeout</a>, <span class="keyword">sizeof</span>(<span class="keyword">struct</span> timeval));
<a name="l00067"></a>00067 memcpy(&<a class="code" href="classPosix__QextSerialPort.html#4946a554d3cfcd190b4df72f6f44f6eb">Posix_CommConfig</a>, &s.<a class="code" href="classPosix__QextSerialPort.html#4946a554d3cfcd190b4df72f6f44f6eb">Posix_CommConfig</a>, <span class="keyword">sizeof</span>(<span class="keyword">struct</span> termios));
<a name="l00068"></a>00068 }
</pre></div>
<p>
</div>
</div><p>
<a class="anchor" name="68f82b42c6be8c39476fce07c1ff9099"></a><!-- doxytag: member="Posix_QextSerialPort::Posix_QextSerialPort" ref="68f82b42c6be8c39476fce07c1ff9099" args="(const QString &name, QextSerialBase::QueryMode mode=QextSerialBase::Polling)" -->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -