27#ifndef NIDAS_UTIL_TERMIOS_H
28#define NIDAS_UTIL_TERMIOS_H
43namespace nidas {
namespace util {
67 Termios(
int fd,
const std::string& devname);
76 void apply(
int fd,
const std::string& devname);
81 void set(
const struct termios*);
86 const struct termios*
get();
A class providing get/set methods into a termios structure.
Definition Termios.h:48
bool getRaw() const
Definition Termios.cc:335
void apply(int fd, const std::string &devname)
Set the termios options on a serial port.
Definition Termios.cc:104
void set(const struct termios *)
Set all Termios parameters from the contents of struct termios.
Definition Termios.cc:115
tcflag_t & iflag()
Definition Termios.h:151
Termios()
Default constructor: 9600 n81, no flow control, canonical input, output.
Definition Termios.cc:78
void setDataBits(int val)
Set number of data bits to 5,6,7 or 8.
Definition Termios.cc:209
const struct termios * get()
Get a const pointer to the internal struct termios.
Definition Termios.cc:110
void setRawTimeout(unsigned char val)
Definition Termios.cc:349
void setRaw(bool val)
Sets termios options for raw or non-raw(cooked) mode.
Definition Termios.cc:307
int getDataBits() const
Definition Termios.cc:227
unsigned char _rawlen
Definition Termios.h:171
unsigned char getRawLength() const
Definition Termios.cc:356
int getBaudRate() const
Definition Termios.cc:166
parity
Definition Termios.h:91
@ ODD
Definition Termios.h:91
@ EVEN
Definition Termios.h:91
@ NONE
Definition Termios.h:91
parity getParity() const
Definition Termios.cc:201
tcflag_t getIflag() const
Definition Termios.h:157
cc_t * cc()
Definition Termios.h:155
tcflag_t & cflag()
Definition Termios.h:153
std::string getParityString() const
Definition Termios.cc:367
unsigned char _rawtimeout
Definition Termios.h:173
struct termios _tio
Definition Termios.h:169
bool setBaudRate(int val)
Definition Termios.cc:145
void setFlowControl(flowcontrol val)
Set flow control to NOFLOWCONTROL, HARDWARE or SOFTWARE.
Definition Termios.cc:273
enum flowcontrol flowcontrol
Definition Termios.h:119
tcflag_t & oflag()
Definition Termios.h:152
int getStopBits() const
Definition Termios.cc:248
unsigned char getRawTimeout() const
Definition Termios.cc:362
static struct nidas::util::Termios::baudtable bauds[]
Definition Termios.cc:42
void setStopBits(int val)
Set number of stop bits, to 1 or 2.
Definition Termios.cc:239
bool getLocal() const
Definition Termios.cc:267
flowcontrol getFlowControl() const
Definition Termios.cc:298
flowcontrol
HARDWARE flow control is CTSRTS.
Definition Termios.h:118
@ SOFTWARE
Definition Termios.h:118
@ NOFLOWCONTROL
Definition Termios.h:118
@ HARDWARE
Definition Termios.h:118
std::string getFlowControlString() const
Definition Termios.cc:376
virtual ~Termios()
Definition Termios.h:69
void setParity(enum parity val)
Definition Termios.cc:176
void setDefaultTermios()
Definition Termios.cc:124
void setLocal(bool val)
If local, then ignore carrier detect modem control line.
Definition Termios.cc:255
void setRawLength(unsigned char val)
Definition Termios.cc:342
tcflag_t getOflag() const
Definition Termios.h:158
tcflag_t & lflag()
Definition Termios.h:154
Root namespace for the NCAR In-Situ Data Acquisition Software.
Definition A2DConverter.h:31
int rate
Definition Termios.h:162
unsigned int cbaud
Definition Termios.h:161
int fd
Definition twod.c:56