zeus::TSerialConnection Class Reference

#include <SerialConnection.h>

Inheritance diagram for zeus::TSerialConnection:

zeus::TZObject zeus::IInputStream zeus::IOutputStream zeus::IZUnknown zeus::IZUnknown zeus::IZUnknown

List of all members.

Public Types

enum  EBaudRate {
  etBR_0 = 0, etBR_50 = 50, etBR_75 = 75, etBR_110 = 110,
  etBR_134 = 134, etBR_150 = 500, etBR_200 = 200, etBR_300 = 300,
  etBR_600 = 600, etBR_1200 = 1200, etBR_1800 = 1800, etBR_2400 = 2400,
  etBR_4800 = 4800, etBR_9600 = 9600, etBR_14400 = 14400, etBR_19200 = 19200,
  etBR_38400 = 38400, etBR_56000 = 56000, etBR_57600 = 57600, etBR_76800 = 76800,
  etBR_115200 = 115200, etBR_128000 = 128000, etBR_256000 = 256000
}
enum  EParity {
  etNone = 0, etOdd = 1, etEven = 2, etMark = 3,
  etSpace = 4
}
enum  EStopBits { etOne = 0, etOneHalf = 1, etTwo = 2 }

Public Member Functions

 TSerialConnection (Uint uiPort)
virtual Retval connect ()
virtual Retval disconnect ()
Uint8 getByteSize () const
Uint getPort () const
EBaudRate getBaudrate () const
EParity getParity () const
EStopBits getStopBits () const
bool isBlockable () const
bool isConnected () const
bool hasHardwareFlowControl () const
bool hasSoftwareFlowControl () const
void setBlockable (bool bMode)
void setByteSize (Uint8 ucValue)
void setBaudrate (EBaudRate eValue)
void setHardwareFlowControl (bool bValue)
void setSoftwareFlowControl (bool bValue)
void setParity (EParity eValue)
void setStopBits (EStopBits eValue)
virtual bool MQUALIFIER available () const
virtual bool MQUALIFIER isEndReached () const
virtual Retval MQUALIFIER read (char *pBuffer, Int iBufferSize, Int &rValidSize) const
virtual Int MQUALIFIER readItem () const
virtual Int8 MQUALIFIER readInt8 (bool *pError) const
virtual Int16 MQUALIFIER readInt16 (bool *pError) const
virtual Int32 MQUALIFIER readInt32 (bool *pError) const
virtual Int64 MQUALIFIER readInt64 (bool *pError) const
virtual Uint8 MQUALIFIER readUint8 (bool *pError) const
virtual Uint16 MQUALIFIER readUint16 (bool *pError) const
virtual Uint32 MQUALIFIER readUint32 (bool *pError) const
virtual Uint64 MQUALIFIER readUint64 (bool *pError) const
virtual Float64 MQUALIFIER readFloat64 (bool *pError) const
virtual Float32 MQUALIFIER readFloat32 (bool *pError) const
virtual bool MQUALIFIER readBool (bool *pError) const
virtual Retval MQUALIFIER readArray (IByteArray &rData) const
virtual Retval MQUALIFIER readString (IString &rstrData) const
virtual void MQUALIFIER close ()
virtual void MQUALIFIER reset ()
virtual bool MQUALIFIER skip (Int iBytes=1)
virtual Retval MQUALIFIER write (const char *pBuffer, Int iBufferSize)
virtual Retval MQUALIFIER writeInt8 (Int8 cData)
virtual Retval MQUALIFIER writeInt16 (Int16 sData)
virtual Retval MQUALIFIER writeInt32 (Int32 lData)
virtual Retval MQUALIFIER writeInt64 (const Int64 &rldData)
virtual Retval MQUALIFIER writeUint8 (Uint8 ucData)
virtual Retval MQUALIFIER writeUint16 (Uint16 usData)
virtual Retval MQUALIFIER writeUint32 (Uint32 ulData)
virtual Retval MQUALIFIER writeUint64 (const Uint64 &ruldData)
virtual Retval MQUALIFIER writeFloat32 (Float32 fData)
virtual Retval MQUALIFIER writeFloat64 (const Float64 &rdData)
virtual Retval MQUALIFIER writeBool (bool bData)
virtual Retval MQUALIFIER writeArray (const IByteArray &rData)
virtual Retval MQUALIFIER writeString (const IString &rData)
virtual void MQUALIFIER flush ()
virtual Retval MQUALIFIER askForInterface (Uint uiInterfaceID, IZUnknown *&rpIface)
virtual void MQUALIFIER addRef () const
virtual void MQUALIFIER release () const

Protected Member Functions

virtual ~TSerialConnection ()


Detailed Description

The serial connection allows to read and write data over a serial interface (COMx-interface).

Member Enumeration Documentation

Baudrate types

Enumerator:
etBR_0 
etBR_50 
etBR_75 
etBR_110 
etBR_134 
etBR_150 
etBR_200 
etBR_300 
etBR_600 
etBR_1200 
etBR_1800 
etBR_2400 
etBR_4800 
etBR_9600 
etBR_14400 
etBR_19200 
etBR_38400 
etBR_56000 
etBR_57600 
etBR_76800 
etBR_115200 
etBR_128000 
etBR_256000 

Parity types

Enumerator:
etNone 
etOdd 
etEven 
etMark 
etSpace 

Stopbit types

Enumerator:
etOne 
etOneHalf 
etTwo 


Constructor & Destructor Documentation

TSerialConnection::TSerialConnection ( Uint  uiPort  ) 

Creates a serial connection using a specific port number.

Note:
COM1 is port 0, COM2 is port 1, ...
Parameters:
uiPort : Port number.

TSerialConnection::~TSerialConnection (  )  [protected, virtual]

Destroys the serial connection


Member Function Documentation

Retval TSerialConnection::connect (  )  [virtual]

Connects to the serial port

Return values:
RET_NOERROR : Connection is successful
RET_REQUEST_FAILED,: Could not connect to the serial port

isConnected()

Retval TSerialConnection::disconnect (  )  [virtual]

disconnects from the serial port

Uint8 zeus::TSerialConnection::getByteSize (  )  const [inline]

Retruns the size of the byte

Uint zeus::TSerialConnection::getPort (  )  const [inline]

Retruns the commport

TSerialConnection::EBaudRate zeus::TSerialConnection::getBaudrate (  )  const [inline]

Returns the baudrate

TSerialConnection::EParity zeus::TSerialConnection::getParity (  )  const [inline]

Returns the parity settings

TSerialConnection::EStopBits zeus::TSerialConnection::getStopBits (  )  const [inline]

Returns the stopbit settings

bool zeus::TSerialConnection::isBlockable (  )  const [inline]

Checks if the connection is blockable

Return values:
true : connection is blockable
false : connection is non-blockable

bool zeus::TSerialConnection::isConnected (  )  const [inline]

Checks if the serial port is connected

bool zeus::TSerialConnection::hasHardwareFlowControl (  )  const [inline]

Returns true if the hardware flow control is switched on

bool zeus::TSerialConnection::hasSoftwareFlowControl (  )  const [inline]

Returns true if the software flow control is switched on

void TSerialConnection::setBlockable ( bool  bMode  ) 

sets or removes the blockable mode of a socket

Note:
This method can be called from other threads

void zeus::TSerialConnection::setByteSize ( Uint8  ucValue  )  [inline]

Retruns the size of the byte

void zeus::TSerialConnection::setBaudrate ( EBaudRate  eValue  )  [inline]

sets the baudrate. Call this method before connect()

void zeus::TSerialConnection::setHardwareFlowControl ( bool  bValue  )  [inline]

Sets the hardware flow control type

void zeus::TSerialConnection::setSoftwareFlowControl ( bool  bValue  )  [inline]

Sets the software flow control type

void zeus::TSerialConnection::setParity ( EParity  eValue  )  [inline]

sets the parity settings. Call this method before connect()

void zeus::TSerialConnection::setStopBits ( EStopBits  eValue  )  [inline]

sets the stopbit settings. Call this method before connect()

virtual bool MQUALIFIER zeus::TSerialConnection::available (  )  const [inline, virtual]

Returns if the input stream is available (valid).

Return values:
true : stream is ok
false : invalid stream

Implements zeus::IInputStream.

virtual bool MQUALIFIER zeus::TSerialConnection::isEndReached (  )  const [inline, virtual]

This method checks if the stream is at the end. If a stream is at the end the methods readDouble(), readLong(), readByte() and readBool() should not called anymore. They will return zero. You must call this method before getting data from the stream.

Return values:
true : Stream is at the end
false : Stream is not at the end

Implements zeus::IInputStream.

Retval MQUALIFIER TSerialConnection::read ( char *  pBuffer,
Int  iBufferSize,
Int &  rValidSize 
) const [virtual]

See also:
IInputStream::read

Implements zeus::IInputStream.

Int MQUALIFIER TSerialConnection::readItem (  )  const [virtual]

Int8 MQUALIFIER TSerialConnection::readInt8 ( bool *  pError  )  const [virtual]

Int16 MQUALIFIER TSerialConnection::readInt16 ( bool *  pError  )  const [virtual]

Int32 MQUALIFIER TSerialConnection::readInt32 ( bool *  pError  )  const [virtual]

Int64 MQUALIFIER TSerialConnection::readInt64 ( bool *  pError  )  const [virtual]

Uint8 MQUALIFIER zeus::TSerialConnection::readUint8 ( bool *  pError  )  const [inline, virtual]

Uint16 MQUALIFIER zeus::TSerialConnection::readUint16 ( bool *  pError  )  const [inline, virtual]

Uint32 MQUALIFIER zeus::TSerialConnection::readUint32 ( bool *  pError  )  const [inline, virtual]

Uint64 MQUALIFIER zeus::TSerialConnection::readUint64 ( bool *  pError  )  const [inline, virtual]

Float64 MQUALIFIER TSerialConnection::readFloat64 ( bool *  pError  )  const [virtual]

Float32 MQUALIFIER TSerialConnection::readFloat32 ( bool *  pError  )  const [virtual]

bool MQUALIFIER zeus::TSerialConnection::readBool ( bool *  pError  )  const [inline, virtual]

Retval MQUALIFIER TSerialConnection::readArray ( IByteArray rData  )  const [virtual]

Retval MQUALIFIER TSerialConnection::readString ( IString rstrData  )  const [virtual]

virtual void MQUALIFIER zeus::TSerialConnection::close (  )  [inline, virtual]

Closes the input stream

Implements zeus::IInputStream.

void MQUALIFIER TSerialConnection::reset (  )  [virtual]

Resets and clears the connection errors

See also:
IInputStream::reset

Implements zeus::IInputStream.

bool MQUALIFIER TSerialConnection::skip ( Int  iBytes = 1  )  [virtual]

See also:
IInputStream::skip

Implements zeus::IInputStream.

Retval MQUALIFIER TSerialConnection::write ( const char *  pBuffer,
Int  iBufferSize 
) [virtual]

Retval MQUALIFIER TSerialConnection::writeInt8 ( Int8  cData  )  [virtual]

Retval MQUALIFIER TSerialConnection::writeInt16 ( Int16  sData  )  [virtual]

Retval MQUALIFIER TSerialConnection::writeInt32 ( Int32  lData  )  [virtual]

Retval MQUALIFIER TSerialConnection::writeInt64 ( const Int64 rldData  )  [virtual]

Retval MQUALIFIER zeus::TSerialConnection::writeUint8 ( Uint8  ucData  )  [inline, virtual]

Retval MQUALIFIER zeus::TSerialConnection::writeUint16 ( Uint16  usData  )  [inline, virtual]

Retval MQUALIFIER zeus::TSerialConnection::writeUint32 ( Uint32  ulData  )  [inline, virtual]

Retval MQUALIFIER zeus::TSerialConnection::writeUint64 ( const Uint64 ruldData  )  [inline, virtual]

Retval MQUALIFIER TSerialConnection::writeFloat32 ( Float32  fData  )  [virtual]

Retval MQUALIFIER TSerialConnection::writeFloat64 ( const Float64 rdData  )  [virtual]

Retval MQUALIFIER zeus::TSerialConnection::writeBool ( bool  bData  )  [inline, virtual]

Retval MQUALIFIER TSerialConnection::writeArray ( const IByteArray rData  )  [virtual]

Retval MQUALIFIER TSerialConnection::writeString ( const IString rData  )  [virtual]

virtual void MQUALIFIER zeus::TSerialConnection::flush (  )  [inline, virtual]

Flush the output stream. This will send the buffer to the destination.

Implements zeus::IOutputStream.

virtual Retval MQUALIFIER zeus::TSerialConnection::askForInterface ( Uint  uiInterfaceID,
IZUnknown *&  rpIface 
) [virtual]

Reimplemented from zeus::TZObject.

virtual void MQUALIFIER zeus::TSerialConnection::addRef (  )  const [virtual]

See also:
IZUnknown::addRef

Reimplemented from zeus::TZObject.

virtual void MQUALIFIER zeus::TSerialConnection::release (  )  const [virtual]

See also:
IZUnknown::release

Reimplemented from zeus::TZObject.


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


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Wed Oct 28 21:42:33 2009