LRAUV  revA
UartStream Class Reference

Implements both InStream and OutStream for the LPC3XXX Standard UART. More...

#include <UartStream.h>

Inheritance diagram for UartStream:
Collaboration diagram for UartStream:

Public Types

enum  Baudrate {
  B_50, B_75, B_110, B_134,
  B_150, B_200, B_300, B_600,
  B_1200, B_1800, B_2400, B_4800,
  B_9600, B_19200, B_38400, B_57600,
  B_115200, B_230400
}
 Baudrates as per termios. More...
 
enum  UartId {
  NOT_UART, UART1_TX0, UART2_TX1, UART3_S1,
  UART4_S2, UART5_S0, UART6_S3, UART7_TX2,
  UART_A0, UART_A1, UART_A2, UART_A3,
  UART_A4, UART_A5, UART_A6, UART_A7,
  UART_B0, UART_B1, UART_B2, UART_B3,
  UART_B4, UART_B5, UART_B6, UART_B7
}
 UARTS. More...
 
enum  UartError {
  OK = 0, BUFFER_FULL, TIMEOUT, CANNOT_OPEN_SERIAL_PORT,
  CANNOT_GET_DEVICE_SETTINGS, BAD_BAUD_RATE_FOR_PORT, BAD_PARAMETERS_FOR_PORT, PORT_NOT_OPEN,
  WRITE_CHAR_LOST
}
 UART Errors. More...
 

Public Member Functions

 UartStream (const ConfigURI &uartCfg, const ConfigURI &baudCfg, const double timeoutSec, Logger &logger, size_t bufferSize=1, bool blocking=false)
 Constructor. More...
 
 ~UartStream ()
 Destructor. More...
 
const char * getName ()
 Returns uart name. More...
 
UartStreamopen ()
 
UartStreamopenAtBaudrate (UartStream::Baudrate baud)
 
OutStreamwrite (const char *data, size_t length=0xFFFFFFFF)
 If length is unspecified, strlen is used to determine the length. More...
 
UartStreamreadLine (char *buf, size_t bufsize)
 Fills buffer until: buffer size is exceeded, CR, LF, or ETX character is received, or the serial timeout has expired. More...
 
UartStreamreadLines (char *buf, size_t bufsize, size_t lines)
 Fills buffer with given number of lines (CR/LF) until buffer size is exceeded or timeout has expired or ETX character is received. More...
 
InStreamread (char *buf, size_t num)
 reads num bytes from stream to the buffer More...
 
UartStreamreadUntil (char *buf, size_t num, const unsigned char match, bool flushUntil=false)
 
UartStreamreadUntil (char *buf, size_t num, const char *match, unsigned int matchLen, bool flushUntil=false)
 
UartStreamreadUntil (char *buf, size_t num, const unsigned char *match, unsigned int matchLen, bool flushUntil=false)
 
size_t canReadUntil (const unsigned char match)
 
size_t canReadUntil (const char *match, int matchLen=0, int maxCheck=0)
 
size_t canReadUntil (const unsigned char *match, int matchLen=0, int maxCheck=0)
 
UartStreamflushCRLF ()
 Flushes CR and LF characters out of the buffer until there are no more characters. More...
 
UartStreamflush (int num=-1)
 Flushes any characters out of the buffer until there are no more characters, or if num is positive, until the specified number of characters are flushed. More...
 
UartStreamclose ()
 
UartStreamsetStartTimeout (const double timeout)
 
UartStreamresetStartTimeout ()
 
const char * uartIdToString (UartId uart)
 
UartStream::UartError getError ()
 
bool hasError ()
 
const char * errorString ()
 
virtual bool eof ()
 Indicates if the end of file has been reached. More...
 
virtual bool isReadable ()
 indicates whether the stream can actually be read from. More...
 
virtual bool isWritable ()
 indicates whether the stream can actually be written to. More...
 
void waitForBufferEmpty ()
 
size_t dataAvailable ()
 
size_t dataBuffered ()
 
void setDebug (bool debugOn)
 
void enableUART (void)
 
void disableUART (void)
 
void fillInBuffer ()
 
- Public Member Functions inherited from InStream
virtual ~InStream ()
 Destructor. More...
 
InStreamreadChar (signed char &value)
 reads a single byte to the input buffer/stream More...
 
InStreamreadCharHex (signed char &byte)
 reads a single unsigned char from the input buffer/stream as 2 hex chars More...
 
InStreamreadUCharHex (unsigned char &byte)
 reads a single unsigned char from the input buffer/stream as 2 hex chars More...
 
virtual InStreamreadLine (char *buf, unsigned int bufsize)
 
InStreamreadShort (short &value)
 reads a single short from the input buffer/stream More...
 
InStreamreadShort (unsigned short &value)
 reads a single short from the input buffer/stream More...
 
InStreamreadShortHex (short &word)
 reads a single short from the input buffer/stream as 4 hex chars More...
 
InStreamreadUShortHex (unsigned short &value)
 reads a single unsigned short from the input buffer/stream as 4 hex chars More...
 
InStreamreadUShortCompact (unsigned short &value)
 reads an unsigned short integer as 1 to 3 bytes, encoded as follows: xxxxxxx0 - 7 bit value, encoded in 1 byte xxxxxx01+1byte - 14 bit value, encoded in 2 bytes xxxxx011+2bytes - 16 bit value, encoded in 3 bytes More...
 
InStreamreadInt24 (int &medInt)
 reads a 3-byte integer to the input buffer/stream only works on little-endian machines! More...
 
InStreamreadInt (int &value)
 reads a 4-byte integer to the input buffer/stream More...
 
InStreamreadLongLong (long long &value)
 reads a 8-byte integer to the input buffer/stream More...
 
InStreamreadLongLongCompact (long long &value)
 reads a signed long long integer as 1 to 9 bytes, encoded as follows: 0xxxxxxx - 7 bit value, encoded in 1 byte 10xxxxxx+1byte - 14 bit value, encoded in 2 bytes 110xxxxx+2bytes - 21 bit value, encoded in 3 bytes 1110xxxx+3bytes - 28 bit value, encoded in 4 bytes 11110xxx+4bytes - 35 bit value, encoded in 5 bytes 111110xx+5bytes - 42 bit value, encoded in 6 bytes 1111110x+6bytes - 49 bit value, encoded in 7 bytes 11111110+7bytes - 56 bit value, encoded in 8 bytes 11111111+8bytes - 64 bit value, encoded in 9 bytes More...
 
InStreamreadFloat (float &value)
 reads a 4-byte float to the input buffer/stream More...
 
InStreamreadFloat2 (float &value)
 reads a 2-byte float to the input buffer/stream More...
 
InStreamreadFloat3 (float &value)
 reads a 3-byte float to the input buffer/stream More...
 
InStreamreadDouble (double &value)
 reads a 8-byte double to the input buffer/stream More...
 
virtual InStreamreadUntil (char *buf, unsigned int num, unsigned char match)
 
size_t bytesRead ()
 Indicates the number of bytes read in the last operation. More...
 
size_t getBytesRead ()
 Indicates the number of bytes read in the last operation. More...
 
size_t getTotalBytesRead ()
 Indicates the total number of bytes read;. More...
 
- Public Member Functions inherited from OutStream
virtual ~OutStream ()
 Destructor. More...
 
virtual OutStreamwriteHex (const char *buffer, size_t num)
 writes num bytes from buffer to the output buffer/stream as hex chars More...
 
virtual OutStreamwrite (const char *buffer)
 writes zero-terminated buffer to the output buffer/stream More...
 
virtual OutStreamwriteHex (const char *buffer)
 writes zero-terminated buffer to the output buffer/stream More...
 
OutStreamoperator<< (const Str buffer)
 write a Str, using stream operator More...
 
OutStreamoperator<< (const char buffer[])
 write a Str, using stream operator More...
 
OutStreamoperator<< (const char byte)
 write a Str, using stream operator More...
 
OutStreamoperator<< (const signed char byte)
 write a Str, using stream operator More...
 
OutStreamoperator<< (const unsigned char byte)
 write a Str, using stream operator More...
 
OutStreamoperator<< (const int number)
 write a Str, using stream operator More...
 
OutStreamwriteChar (const signed char value)
 writes a single byte to the output buffer/stream More...
 
OutStreamwriteCharHex (const signed char byte)
 writes a single signed char to the output buffer/stream as 2 hex chars More...
 
OutStreamwriteUCharHex (const unsigned char byte)
 writes a single unsigned char to the output buffer/stream as 2 hex chars More...
 
OutStreamwriteInteger (const int number, const unsigned int radix=10)
 writes an integer as a base-radix string More...
 
OutStreamwriteNumber (const double number, const unsigned int radix=10)
 
OutStreamwriteShort (const short value)
 writes a single short to the output buffer/stream More...
 
OutStreamwriteShortHex (const short word)
 writes a single short to the output buffer/stream as 4 hex chars More...
 
OutStreamwriteUShortHex (const unsigned short word)
 writes a single unsigned short to the output buffer/stream as 4 hex chars More...
 
OutStreamwriteUShortCompact (const unsigned short &value)
 writes an unsigned short integer as 1 to 3 bytes, encoded as follows: xxxxxxx0 - 7 bit value, encoded in 1 byte xxxxxx01+1byte - 14 bit value, encoded in 2 bytes xxxxx011+2bytes - 16 bit value, encoded in 3 bytes More...
 
OutStreamwriteInt24 (const int medInt)
 writes a 3-byte integer to the output buffer/stream only works on little-endian machines! More...
 
OutStreamwriteInt (const int value)
 writes a 4-byte integer to the output buffer/stream More...
 
OutStreamwriteLongLong (const long long value)
 writes a 8-byte integer to the output buffer/stream More...
 
OutStreamwriteLongLongCompact (const long long &value)
 writes a signed long long integer as 1 to 9 bytes, encoded as follows: 0xxxxxxx - 7 bit value, encoded in 1 byte 10xxxxxx+1byte - 14 bit value, encoded in 2 bytes 110xxxxx+2bytes - 21 bit value, encoded in 3 bytes 1110xxxx+3bytes - 28 bit value, encoded in 4 bytes 11110xxx+4bytes - 35 bit value, encoded in 5 bytes 111110xx+5bytes - 42 bit value, encoded in 6 bytes 1111110x+6bytes - 49 bit value, encoded in 7 bytes 11111110+7bytes - 56 bit value, encoded in 8 bytes 11111111+8bytes - 64 bit value, encoded in 9 bytes More...
 
OutStreamwriteFloat (const float value)
 writes a 4-byte float to the output buffer/stream More...
 
OutStreamwriteFloat2 (const float value)
 writes a 2-byte float to the output buffer/stream More...
 
OutStreamwriteFloat3 (const float value)
 writes a 3-byte float to the output buffer/stream More...
 
OutStreamwriteDouble (const double value)
 writes a 8-byte double to the output buffer/stream More...
 
OutStreamwriteDouble6 (const double value)
 
size_t bytesWritten ()
 

Private Member Functions

 UartStream (const UartStream &old)
 
void serGetChar (unsigned char *c, int *success, const Timespan &timeout=Timespan::INVALID_TIMESPAN)
 
void initializePort (UartStream::UartId)
 
const char * uartToDevice (UartId uart)
 

Static Private Member Functions

static Str LookupFilename (const ConfigURI &uartCfg, Logger &logger)
 
static Baudrate LookupBaudrate (const ConfigURI &baudCfg, Logger &logger)
 
static UartId DeviceToUART (const Str &name)
 
static const speed_t BaudToSpeed (Baudrate baud)
 

Private Attributes

int serPortFd_
 
Str filename_
 
UartId uartId_
 
UartStream::Baudrate defaultBaudrate_
 
Timespan startTimeout_
 
Timespan defaultStartTimeout_
 
Timespan betweenTimeout_
 
UartStream::UartError lastError_
 
Logger logger_
 
char pushedChar_
 
char * pushedChars_
 
size_t bufferSize_
 
int bufferPos_
 
bool blocking_
 
bool debug_
 

Static Private Attributes

static const Timespan SLEEP_TIME
 A 10 millisecond sleep. More...
 

Additional Inherited Members

- Protected Member Functions inherited from InStream
 InStream ()
 Protected Constructor for abstract class. More...
 
void zeroBytesRead ()
 
void incBytesRead ()
 
void incBytesRead (size_t incRead)
 
void setBytesRead (size_t lastRead)
 
void zeroTotalBytesRead ()
 
- Protected Member Functions inherited from OutStream
 OutStream ()
 Protected Constructor for abstract class. More...
 
- Protected Attributes inherited from OutStream
size_t lastWritten_
 
- Static Protected Attributes inherited from OutStream
static const unsigned char HEX_CHARS [] = "0123456789ABCDEF"
 

Detailed Description

Implements both InStream and OutStream for the LPC3XXX Standard UART.

Constructor & Destructor Documentation

UartStream::UartStream ( const ConfigURI uartCfg,
const ConfigURI baudCfg,
const double  timeoutSec,
Logger logger,
size_t  bufferSize = 1,
bool  blocking = false 
)

Constructor.

param uartCfg name of uart device definition in vehicle.cfg file param baudCfg name of baud rate definition in vehicle.cfg file param timeoutSec inter-character timeout param logger logger of the owning component param bufferSize size of buffer for readUntil operations param blocking set to true to idle processor waiting for timeoutSec

References bufferSize_, pushedChar_, and pushedChars_.

UartStream::~UartStream ( )

Destructor.

References bufferSize_, close(), isReadable(), and pushedChars_.

UartStream::UartStream ( const UartStream old)
private

Member Function Documentation

const speed_t UartStream::BaudToSpeed ( Baudrate  baud)
staticprivate
size_t UartStream::canReadUntil ( const char *  match,
int  matchLen = 0,
int  maxCheck = 0 
)
size_t UartStream::canReadUntil ( const unsigned char *  match,
int  matchLen = 0,
int  maxCheck = 0 
)
size_t UartStream::dataBuffered ( )

References bufferPos_, and isReadable().

Referenced by Rowe_600::readEnsemble().

virtual bool UartStream::eof ( )
inlinevirtual

Indicates if the end of file has been reached.

Implements InStream.

References isReadable().

const char * UartStream::errorString ( )

References BAD_BAUD_RATE_FOR_PORT, BAD_PARAMETERS_FOR_PORT, BUFFER_FULL, CANNOT_GET_DEVICE_SETTINGS, CANNOT_OPEN_SERIAL_PORT, lastError_, OK, PORT_NOT_OPEN, TIMEOUT, and WRITE_CHAR_LOST.

Referenced by NAL9602::fillBuffer(), NAL9602::getFix(), NAL9602::getMTQueueSignalStrength(), EZServoServo::getPosition(), NAL9602::getReceivedSignalStrength(), EZServoServo::getVelocityCmd(), BuoyancyServo::initBuoyancy(), ElevatorServo::initElevator(), Batt_Ocean_Server::initialize(), EZServoServo::initializeStart(), NAL9602::initiateSession(), RudderServo::initRudder(), ThrusterServo::initThruster(), EZServoServo::isCommunicating(), NAL9602::parseGSV(), BPC1::parseWriteDataA(), BPC1::parseWriteDataB(), AHRS_sp3003D::readAccelVecBin(), AcousticModem_Benthos_ATM900::readAndParseResponses(), DAT::readAndParseResponses(), Batt_Ocean_Server::readDataA(), Batt_Ocean_Server::readDataB(), Rowe_600::readEnsemble(), AHRS_sp3003D::readMagneticsBin(), DVL_micro::readNQ1(), AHRS_3DMGX3::readTemperature(), AHRS_3DMGX3::readTransducers(), Turbulence_NPS::receive(), CTD_NeilBrown::receive(), PNI_TCM::receiveGetDataResp(), AHRS_sp3003D::receiveHeadingMagBin(), AHRS_sp3003D::receivePitchRollBin(), AHRS_sp3003D::receiveTransducers(), DVL_micro::resume(), MassServo::resume(), ElevatorServo::resume(), RudderServo::resume(), BuoyancyServo::resume(), Turbulence_NPS::resume(), AHRS_3DMGX3::resume(), ThrusterServo::resume(), PNI_TCM::resume(), CTD_NeilBrown::resume(), AHRS_sp3003D::resume(), MassServo::resuming(), NAL9602::retrieveAndQueueIncoming(), MassServo::runnable(), ElevatorServo::runnable(), VemcoVR2C::runnable(), RudderServo::runnable(), BuoyancyServo::runnable(), WetLabsBB2FL::runnable(), ThrusterServo::runnable(), SCPI::start(), ISUS::start(), VemcoVR2C::start(), CANONSampler::start(), AcousticModem_Benthos_ATM900::start(), WetLabsBB2FL::start(), DAT::start(), Turbulence_NPS::start(), PNI_TCM::start(), AHRS_3DMGX3::start(), DVL_micro::start(), CTD_NeilBrown::start(), AHRS_sp3003D::start(), BPC1::start(), Rowe_600::start(), NAL9602::start(), MassServo::starting(), ElevatorServo::starting(), BuoyancyServo::starting(), RudderServo::starting(), WetLabsBB2FL::starting(), PNI_TCM::starting(), ThrusterServo::starting(), AHRS_sp3003D::tryUartComms(), NAL9602::verifySessionXmit(), and MassServo::waitForHoming().

void UartStream::fillInBuffer ( )
UartStream & UartStream::flush ( int  num = -1)

Flushes any characters out of the buffer until there are no more characters, or if num is positive, until the specified number of characters are flushed.

References bufferPos_, bufferSize_, fillInBuffer(), InStream::incBytesRead(), NOT_UART, serGetChar(), SLEEP_TIME, Timespan::sleepFor(), uartId_, Timespan::ZERO_TIMESPAN, and InStream::zeroBytesRead().

Referenced by NAL9602::clearMOBuffer(), DVL_micro::endPing(), NAL9602::fillBuffer(), NAL9602::getFix(), NAL9602::getMTQueueSignalStrength(), NAL9602::getReceivedSignalStrength(), BuoyancyServo::initBuoyancy(), Batt_Ocean_Server::initialize(), NAL9602::initiateSession(), ThrusterServo::initThruster(), Rowe_600::pause(), BPC1::pausing(), AHRS_sp3003D::readAccelVecBin(), Batt_Ocean_Server::readDataA(), Batt_Ocean_Server::readDataB(), AHRS_sp3003D::readMagneticsBin(), AHRS_3DMGX3::readTemperature(), AHRS_3DMGX3::readTransducers(), PNI_TCM::receiveGetDataResp(), NAL9602::requestFix(), NAL9602::requestGSV(), AHRS_sp3003D::requestHeadingMagBin(), AHRS_sp3003D::requestPitchRollBin(), AHRS_sp3003D::requestTransducers(), DVL_micro::resume(), BPC1::resume(), Rowe_600::resume(), PNI_TCM::resuming(), NAL9602::retrieveAndQueueIncoming(), SCPI::runnable(), BPC1::runnable(), NAL9602::sendingFillBuffer(), NAL9602::sendingVerify(), SCPI::start(), AcousticModem_Benthos_ATM900::start(), DAT::start(), DVL_micro::start(), BPC1::start(), Rowe_600::start(), ISUS::starting(), AcousticModem_Benthos_ATM900::starting(), PNI_TCM::starting(), BPC1::starting(), DVL_micro::startPing(), AHRS_sp3003D::tryUartComms(), BuoyancyServo::uninitialize(), and NAL9602::waking().

const char* UartStream::getName ( void  )
inlinevirtual

Returns uart name.

Implements InStream.

References uartId_, and uartIdToString().

bool UartStream::hasError ( )
inline

References lastError_, and OK.

Referenced by NAL9602::fillBuffer(), NAL9602::getFix(), NAL9602::getMTQueueSignalStrength(), EZServoServo::getPosition(), NAL9602::getReceivedSignalStrength(), EZServoServo::getVelocityCmd(), BuoyancyServo::initBuoyancy(), ElevatorServo::initElevator(), Batt_Ocean_Server::initialize(), EZServoServo::initializeStart(), NAL9602::initiateSession(), RudderServo::initRudder(), ThrusterServo::initThruster(), EZServoServo::isCommunicating(), NAL9602::parseGSV(), BPC1::parseWriteDataA(), BPC1::parseWriteDataB(), AHRS_sp3003D::readAccelVecBin(), AcousticModem_Benthos_ATM900::readAndParseResponses(), DAT::readAndParseResponses(), Batt_Ocean_Server::readDataA(), Batt_Ocean_Server::readDataB(), Rowe_600::readEnsemble(), AHRS_sp3003D::readMagneticsBin(), DVL_micro::readNQ1(), AHRS_3DMGX3::readTemperature(), AHRS_3DMGX3::readTransducers(), Turbulence_NPS::receive(), CTD_NeilBrown::receive(), PNI_TCM::receiveGetDataResp(), AHRS_sp3003D::receiveHeadingMagBin(), AHRS_sp3003D::receivePitchRollBin(), AHRS_sp3003D::receiveTransducers(), DVL_micro::resume(), MassServo::resume(), ElevatorServo::resume(), RudderServo::resume(), BuoyancyServo::resume(), Turbulence_NPS::resume(), AHRS_3DMGX3::resume(), ThrusterServo::resume(), PNI_TCM::resume(), CTD_NeilBrown::resume(), AHRS_sp3003D::resume(), MassServo::resuming(), NAL9602::retrieveAndQueueIncoming(), MassServo::runnable(), ElevatorServo::runnable(), RudderServo::runnable(), VemcoVR2C::runnable(), BuoyancyServo::runnable(), WetLabsBB2FL::runnable(), ThrusterServo::runnable(), SCPI::start(), VemcoVR2C::start(), ISUS::start(), CANONSampler::start(), AcousticModem_Benthos_ATM900::start(), WetLabsBB2FL::start(), DAT::start(), Turbulence_NPS::start(), DVL_micro::start(), PNI_TCM::start(), AHRS_3DMGX3::start(), CTD_NeilBrown::start(), AHRS_sp3003D::start(), BPC1::start(), Rowe_600::start(), NAL9602::start(), SCPI::starting(), MassServo::starting(), ElevatorServo::starting(), BuoyancyServo::starting(), RudderServo::starting(), WetLabsBB2FL::starting(), PNI_TCM::starting(), ThrusterServo::starting(), AHRS_sp3003D::tryUartComms(), NAL9602::verifySessionXmit(), and MassServo::waitForHoming().

virtual bool UartStream::isWritable ( )
inlinevirtual

indicates whether the stream can actually be written to.

Implements OutStream.

References serPortFd_.

UartStream::Baudrate UartStream::LookupBaudrate ( const ConfigURI baudCfg,
Logger logger 
)
staticprivate
Str UartStream::LookupFilename ( const ConfigURI uartCfg,
Logger logger 
)
staticprivate
UartStream & UartStream::readLines ( char *  buf,
size_t  bufsize,
size_t  lines 
)

Fills buffer with given number of lines (CR/LF) until buffer size is exceeded or timeout has expired or ETX character is received.

References BUFFER_FULL, debug_, InStream::getBytesRead(), InStream::incBytesRead(), lastError_, OK, serGetChar(), startTimeout_, TIMEOUT, and InStream::zeroBytesRead().

Referenced by NAL9602::getFix(), and readLine().

UartStream & UartStream::readUntil ( char *  buf,
size_t  num,
const char *  match,
unsigned int  matchLen,
bool  flushUntil = false 
)
UartStream & UartStream::readUntil ( char *  buf,
size_t  num,
const unsigned char *  match,
unsigned int  matchLen,
bool  flushUntil = false 
)
void UartStream::serGetChar ( unsigned char *  c,
int *  success,
const Timespan timeout = Timespan::INVALID_TIMESPAN 
)
private
void UartStream::setDebug ( bool  debugOn)
inline

References debug_.

OutStream & UartStream::write ( const char *  data,
size_t  length = 0xFFFFFFFF 
)
virtual

If length is unspecified, strlen is used to determine the length.

Implements OutStream.

References debug_, lastError_, serPortFd_, uartId_, and WRITE_CHAR_LOST.

Referenced by NAL9602::fillBuffer(), PNI_TCM::resuming(), and PNI_TCM::starting().

Member Data Documentation

Timespan UartStream::betweenTimeout_
private

Referenced by read(), and serGetChar().

bool UartStream::blocking_
private

Referenced by openAtBaudrate().

size_t UartStream::bufferSize_
private
bool UartStream::debug_
private

Referenced by readLines(), setDebug(), and write().

UartStream::Baudrate UartStream::defaultBaudrate_
private

Referenced by open().

Timespan UartStream::defaultStartTimeout_
private
Str UartStream::filename_
private

Referenced by uartIdToString(), and uartToDevice().

Logger UartStream::logger_
private

Referenced by openAtBaudrate().

char UartStream::pushedChar_
private

Referenced by UartStream().

char* UartStream::pushedChars_
private
int UartStream::serPortFd_
private
const Timespan UartStream::SLEEP_TIME
staticprivate

A 10 millisecond sleep.

Referenced by flush(), read(), serGetChar(), and waitForBufferEmpty().

Timespan UartStream::startTimeout_
private
UartId UartStream::uartId_
private

The documentation for this class was generated from the following files: