SerialIO Class Reference

#include <SerialIO.h>

List of all members.

Public Types

enum  HandshakeFlags { HS_NONE, HS_HARDWARE, HS_XONXOFF }
 

Constants for defining the handshake.

More...
enum  ParityFlags {
  PA_NONE, PA_EVEN, PA_ODD, PA_MARK,
  PA_SPACE
}
 

Constants for defining the parity bits.

More...
enum  StopBits { SB_ONE, SB_ONE_5, SB_TWO }
 

Constants for defining the stop bits.

More...

Public Member Functions

void changeBaudRate (int BaudRate)
void close ()
void flushTx ()
int getSizeRXQueue ()
int open ()
void purge ()
void purgeRx ()
void purgeTx ()
int readBlocking (char *Buffer, int Length)
int readNonBlocking (char *Buffer, int Length)
 SerialIO ()
 Default constructor.
void setBaudRate (int BaudRate)
void setBufferSize (int ReadBufSize, int WriteBufSize)
void setBytePeriod (double Period)
void setDeviceName (const char *Name)
void SetFormat (int ByteSize, ParityFlags Parity, int StopBits)
void setHandshake (HandshakeFlags Handshake)
void setMultiplier (double Multiplier=1)
void setTimeout (double Timeout)
int write (const char *Buffer, int Length)
virtual ~SerialIO ()
 Destructor.

Protected Attributes

int m_BaudRate
::timeval m_BytePeriod
int m_ByteSize
int m_Device
std::string m_DeviceName
HandshakeFlags m_Handshake
double m_Multiplier
ParityFlags m_Parity
int m_ReadBufSize
bool m_ShortBytePeriod
int m_StopBits
double m_Timeout
::termios m_tio
int m_WriteBufSize

Detailed Description

Wrapper class for serial communication.

Definition at line 65 of file SerialIO.h.


Member Enumeration Documentation

Constants for defining the handshake.

Enumerator:
HS_NONE 
HS_HARDWARE 
HS_XONXOFF 

Definition at line 70 of file SerialIO.h.

Constants for defining the parity bits.

Enumerator:
PA_NONE 
PA_EVEN 
PA_ODD 
PA_MARK 
PA_SPACE 

Definition at line 78 of file SerialIO.h.

Constants for defining the stop bits.

Enumerator:
SB_ONE 
SB_ONE_5 
SB_TWO 

Definition at line 89 of file SerialIO.h.


Constructor & Destructor Documentation

SerialIO::SerialIO (  ) 

Default constructor.

Definition at line 140 of file SerialIO.cpp.

SerialIO::~SerialIO (  )  [virtual]

Destructor.

Definition at line 158 of file SerialIO.cpp.


Member Function Documentation

void SerialIO::changeBaudRate ( int  BaudRate  ) 

Changes the baudrate. The serial port is allready open.

Parameters:
BaudRate new baudrate.

Definition at line 355 of file SerialIO.cpp.

void SerialIO::close (  ) 

Closes the serial port.

Definition at line 327 of file SerialIO.cpp.

void SerialIO::flushTx (  )  [inline]

Sends the transmit buffer. All bytes of the transmit buffer will be sent.

Definition at line 228 of file SerialIO.h.

int SerialIO::getSizeRXQueue (  ) 

Returns the number of bytes available in the read buffer.

Definition at line 442 of file SerialIO.cpp.

int SerialIO::open (  ) 

Opens serial port. The port has to be configured before.

Definition at line 163 of file SerialIO.cpp.

void SerialIO::purge (  )  [inline]

Clears the read and transmit buffer.

Definition at line 205 of file SerialIO.h.

void SerialIO::purgeRx (  )  [inline]

Clears the read buffer.

Definition at line 212 of file SerialIO.h.

void SerialIO::purgeTx (  )  [inline]

Clears the transmit buffer. The content of the buffer will not be transmitted.

Definition at line 220 of file SerialIO.h.

int SerialIO::readBlocking ( char *  Buffer,
int  Length 
)

Reads the serial port blocking. The function blocks until the requested number of bytes have been read or the timeout occurs.

Parameters:
Buffer pointer to the buffer.
Length number of bytes to read

Definition at line 378 of file SerialIO.cpp.

int SerialIO::readNonBlocking ( char *  Buffer,
int  Length 
)

Reads the serial port non blocking. The function returns all avaiable bytes but not more than requested.

Parameters:
Buffer pointer to the buffer.
Length number of bytes to read

Definition at line 391 of file SerialIO.cpp.

void SerialIO::setBaudRate ( int  BaudRate  )  [inline]

Sets the baudrate.

Parameters:
BaudRate baudrate.

Definition at line 112 of file SerialIO.h.

void SerialIO::setBufferSize ( int  ReadBufSize,
int  WriteBufSize 
) [inline]

Sets the buffer sizes.

Parameters:
ReadBufSize number of bytes of the read buffer.
WriteBufSize number of bytes of the write buffer.

Definition at line 144 of file SerialIO.h.

void SerialIO::setBytePeriod ( double  Period  ) 

Sets the byte period for transmitting bytes. If the period is not equal to 0, the transmit will be repeated with the given period until all bytes are transmitted.

Parameters:
default is 0.

Definition at line 347 of file SerialIO.cpp.

void SerialIO::setDeviceName ( const char *  Name  )  [inline]

Sets the device name

Parameters:
Name 'COM1', 'COM2', ...

Definition at line 106 of file SerialIO.h.

void SerialIO::SetFormat ( int  ByteSize,
ParityFlags  Parity,
int  StopBits 
) [inline]

Sets the message format.

Definition at line 131 of file SerialIO.h.

void SerialIO::setHandshake ( HandshakeFlags  Handshake  )  [inline]

Defines the handshake type.

Definition at line 137 of file SerialIO.h.

void SerialIO::setMultiplier ( double  Multiplier = 1  )  [inline]

Sets a multiplier for the baudrate. Some serial cards need a specific multiplier for the baudrate.

Parameters:
Multiplier default is one.

Definition at line 126 of file SerialIO.h.

void SerialIO::setTimeout ( double  Timeout  ) 

Sets the timeout.

Parameters:
Timeout in seconds

Definition at line 336 of file SerialIO.cpp.

int SerialIO::write ( const char *  Buffer,
int  Length 
)

Writes bytes to the serial port.

Parameters:
Buffer buffer of the message
Length number of bytes to send

Definition at line 414 of file SerialIO.cpp.


Member Data Documentation

int SerialIO::m_BaudRate [protected]

Definition at line 236 of file SerialIO.h.

::timeval SerialIO::m_BytePeriod [protected]

Definition at line 243 of file SerialIO.h.

int SerialIO::m_ByteSize [protected]

Definition at line 238 of file SerialIO.h.

int SerialIO::m_Device [protected]

Definition at line 235 of file SerialIO.h.

std::string SerialIO::m_DeviceName [protected]

Definition at line 234 of file SerialIO.h.

Definition at line 240 of file SerialIO.h.

double SerialIO::m_Multiplier [protected]

Definition at line 237 of file SerialIO.h.

Definition at line 239 of file SerialIO.h.

int SerialIO::m_ReadBufSize [protected]

Definition at line 241 of file SerialIO.h.

bool SerialIO::m_ShortBytePeriod [protected]

Definition at line 244 of file SerialIO.h.

int SerialIO::m_StopBits [protected]

Definition at line 238 of file SerialIO.h.

double SerialIO::m_Timeout [protected]

Definition at line 242 of file SerialIO.h.

::termios SerialIO::m_tio [protected]

Definition at line 233 of file SerialIO.h.

int SerialIO::m_WriteBufSize [protected]

Definition at line 241 of file SerialIO.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines


cob_relayboard
Author(s): Christian Connette
autogenerated on Fri Jan 11 09:12:50 2013