Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
158 KeyOz 1
 
2
/*!
3
\class QextSerialPort
4
\version 1.0.0
5
\author Stefan Sander
6
 
7
A cross-platform serial port class.
8
This class encapsulates a serial port on both POSIX and Windows systems.  The user will be
9
notified of errors and possible portability conflicts at run-time by default - this behavior can
10
be turned off by defining _TTY_NOWARN_ (to turn off all warnings) or _TTY_NOWARN_PORT_ (to turn
11
off portability warnings) in the project.
12
 
13
\note
14
On Windows NT/2000/XP this class uses Win32 serial port functions by default.  The user may
15
select POSIX behavior under NT, 2000, or XP ONLY by defining _TTY_POSIX_ in the project. I can
16
make no guarantees as to the quality of POSIX support under NT/2000 however.
17
 
18
*/
19
 
20
#include <stdio.h>
21
#include "qextserialport.h"
22
 
23
/*!
24
\fn QextSerialPort::QextSerialPort()
25
Default constructor.  Note that the naming convention used by a QextSerialPort constructed with
26
this constructor will be determined by #defined constants, or lack thereof - the default behavior
27
is the same as _TTY_LINUX_.  Possible naming conventions and their associated constants are:
28
 
29
\verbatim
30
 
31
Constant         Used By         Naming Convention
32
----------       -------------   ------------------------
33
_TTY_WIN_        Windows         COM1, COM2
34
_TTY_IRIX_       SGI/IRIX        /dev/ttyf1, /dev/ttyf2
35
_TTY_HPUX_       HP-UX           /dev/tty1p0, /dev/tty2p0
36
_TTY_SUN_        SunOS/Solaris   /dev/ttya, /dev/ttyb
37
_TTY_DIGITAL_    Digital UNIX    /dev/tty01, /dev/tty02
38
_TTY_FREEBSD_    FreeBSD         /dev/ttyd0, /dev/ttyd1
39
_TTY_LINUX_      Linux           /dev/ttyS0, /dev/ttyS1
40
<none>           Linux           /dev/ttyS0, /dev/ttyS1
41
\endverbatim
42
 
43
The object will be associated with the first port in the system, e.g. COM1 on Windows systems.
44
See the other constructors if you need to use a port other than the first.
45
*/
46
QextSerialPort::QextSerialPort()
47
 : QextBaseType()
48
{}
49
 
50
/*!
51
\fn QextSerialPort::QextSerialPort(const QString & name)
52
Constructs a serial port attached to the port specified by name.
53
name is the name of the device, which is windowsystem-specific,
54
e.g."COM1" or "/dev/ttyS0".
55
*/
56
QextSerialPort::QextSerialPort(const QString & name)
57
 : QextBaseType(name)
58
{}
59
 
60
/*!
61
\fn QextSerialPort::QextSerialPort(PortSettings const& settings)
62
Constructs a port with default name and settings specified by the settings parameter.
63
*/
64
QextSerialPort::QextSerialPort(PortSettings const& settings)
65
 : QextBaseType(settings)
66
{}
67
 
68
/*!
69
\fn QextSerialPort::QextSerialPort(const QString & name, PortSettings const& settings)
70
Constructs a port with the name and settings specified.
71
*/
72
QextSerialPort::QextSerialPort(const QString & name, PortSettings const& settings)
73
 : QextBaseType(name, settings)
74
{}
75
 
76
/*!
77
\fn QextSerialPort::QextSerialPort(const QextSerialPort& s)
78
Copy constructor.
79
*/
80
QextSerialPort::QextSerialPort(const QextSerialPort& s)
81
 : QextBaseType(s)
82
{}
83
 
84
/*!
85
\fn QextSerialPort& QextSerialPort::operator=(const QextSerialPort& s)
86
Overrides the = operator.
87
*/
88
QextSerialPort& QextSerialPort::operator=(const QextSerialPort& s)
89
{
90
    return (QextSerialPort&)QextBaseType::operator=(s);
91
}
92
 
93
/*!
94
\fn QextSerialPort::~QextSerialPort()
95
Standard destructor.
96
*/
97
QextSerialPort::~QextSerialPort()
98
{}