#include <SerialConnection.h>
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 } |
| enum | EModemStatus { etCTS = MS_CTS_ON, etDSR = MS_DSR_ON, etRING = MS_RING_ON, etRLSD = MS_RLSD_ON } |
Public Member Functions | |
| TSerialConnection (Uint uiPort) | |
| virtual Retval | connect (Uint *pdwLastError=NULL) |
| 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) |
| Retval | getModemStatus (Uint &ruiModemStatus) |
| Retval | getModemStatusBit (EModemStatus eModemStatus, bool &rbBit) |
| 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 (const InterfaceID &rInterfaceID, IZUnknown *&rpIface) |
| virtual void MQUALIFIER | addRef () const |
| virtual void MQUALIFIER | release () const |
Protected Member Functions | |
| virtual | ~TSerialConnection () |
The serial connection allows to read and write data over a serial interface (COMx-interface).
| TSerialConnection::TSerialConnection | ( | Uint | uiPort ) |
Creates a serial connection using a specific port number.
| uiPort | : Port number. |
| TSerialConnection::~TSerialConnection | ( | ) | [protected, virtual] |
Destroys the serial connection
| virtual void MQUALIFIER zeus::TSerialConnection::addRef | ( | ) | const [virtual] |
Reimplemented from zeus::TZObject.
| virtual Retval MQUALIFIER zeus::TSerialConnection::askForInterface | ( | const InterfaceID & | rInterfaceID, |
| IZUnknown *& | rpIface | ||
| ) | [virtual] |
Reimplemented from zeus::TZObject.
| virtual bool MQUALIFIER zeus::TSerialConnection::available | ( | ) | const [inline, virtual] |
Returns if the input stream is available (valid).
| true | : stream is ok |
| false | : invalid stream |
Implements zeus::IInputStream.
| virtual void MQUALIFIER zeus::TSerialConnection::close | ( | ) | [inline, virtual] |
Closes the input stream
Implements zeus::IInputStream.
| Retval TSerialConnection::connect | ( | Uint * | pdwLastError = NULL ) |
[virtual] |
Connects to the serial port
| pdwLastError | [OUT]: Optional: Last error. |
| RET_NOERROR | : Connection is successful |
| RET_REQUEST_FAILED,: | Could not connect to the serial port |
| RET_RESOURCE_NOT_ACCESSIBLE,: | The COM port settings could not be set. |
| Retval TSerialConnection::disconnect | ( | ) | [virtual] |
disconnects from the serial port
| virtual void MQUALIFIER zeus::TSerialConnection::flush | ( | ) | [inline, virtual] |
Flush the output stream. This will send the buffer to the destination.
Implements zeus::IOutputStream.
| TSerialConnection::EBaudRate zeus::TSerialConnection::getBaudrate | ( | ) | const [inline] |
Returns the baudrate
| Uint8 zeus::TSerialConnection::getByteSize | ( | ) | const [inline] |
Retruns the size of the byte
| Retval TSerialConnection::getModemStatus | ( | Uint & | ruiModemStatus ) |
Read the modem status as bit mask.
| ruiModemStatus | [OUT]: Modem status as bit mask. |
| RET_INTERNAL_ERROR | : The connection is not yet open. |
| RET_REQUEST_FAILED | : The status could not be read. |
| RET_NOERROR | : No error, rdwModemStatus is valid. |
| Retval TSerialConnection::getModemStatusBit | ( | EModemStatus | eModemStatus, |
| bool & | rbBit | ||
| ) |
Read a modem status bit.
| eModemStatus | [IN] : Enum value for the modem status bit. |
| rbBit | [OUT]: The status bit. |
| TSerialConnection::EParity zeus::TSerialConnection::getParity | ( | ) | const [inline] |
Returns the parity settings
| Uint zeus::TSerialConnection::getPort | ( | ) | const [inline] |
Retruns the commport
| TSerialConnection::EStopBits zeus::TSerialConnection::getStopBits | ( | ) | const [inline] |
Returns the stopbit settings
| 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
| bool zeus::TSerialConnection::isBlockable | ( | ) | const [inline] |
Checks if the connection is blockable
| true | : connection is blockable |
| false | : connection is non-blockable |
| bool zeus::TSerialConnection::isConnected | ( | ) | const [inline] |
Checks if the serial port is connected
| 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.
| 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] |
Implements zeus::IInputStream.
| Retval MQUALIFIER TSerialConnection::readArray | ( | IByteArray & | rData ) | const [virtual] |
Implements zeus::IInputStream.
| bool MQUALIFIER zeus::TSerialConnection::readBool | ( | bool * | pError ) | const [inline, virtual] |
Implements zeus::IInputStream.
| Float32 MQUALIFIER TSerialConnection::readFloat32 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Float64 MQUALIFIER TSerialConnection::readFloat64 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Int16 MQUALIFIER TSerialConnection::readInt16 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Int32 MQUALIFIER TSerialConnection::readInt32 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Int64 MQUALIFIER TSerialConnection::readInt64 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Int8 MQUALIFIER TSerialConnection::readInt8 | ( | bool * | pError ) | const [virtual] |
Implements zeus::IInputStream.
| Int MQUALIFIER TSerialConnection::readItem | ( | ) | const [virtual] |
Implements zeus::IInputStream.
| Retval MQUALIFIER TSerialConnection::readString | ( | IString & | rstrData ) | const [virtual] |
Implements zeus::IInputStream.
| Uint16 MQUALIFIER zeus::TSerialConnection::readUint16 | ( | bool * | pError ) | const [inline, virtual] |
Implements zeus::IInputStream.
| Uint32 MQUALIFIER zeus::TSerialConnection::readUint32 | ( | bool * | pError ) | const [inline, virtual] |
Implements zeus::IInputStream.
| Uint64 MQUALIFIER zeus::TSerialConnection::readUint64 | ( | bool * | pError ) | const [inline, virtual] |
Implements zeus::IInputStream.
| Uint8 MQUALIFIER zeus::TSerialConnection::readUint8 | ( | bool * | pError ) | const [inline, virtual] |
Implements zeus::IInputStream.
| virtual void MQUALIFIER zeus::TSerialConnection::release | ( | ) | const [virtual] |
Reimplemented from zeus::TZObject.
| void MQUALIFIER TSerialConnection::reset | ( | ) | [virtual] |
| void zeus::TSerialConnection::setBaudrate | ( | EBaudRate | eValue ) | [inline] |
sets the baudrate. Call this method before connect()
| void TSerialConnection::setBlockable | ( | bool | bMode ) |
sets or removes the blockable mode of a socket
| void zeus::TSerialConnection::setByteSize | ( | Uint8 | ucValue ) | [inline] |
Retruns the size of the byte
| void zeus::TSerialConnection::setHardwareFlowControl | ( | bool | bValue ) | [inline] |
Sets the hardware flow control type
| void zeus::TSerialConnection::setParity | ( | EParity | eValue ) | [inline] |
sets the parity settings. Call this method before connect()
| void zeus::TSerialConnection::setSoftwareFlowControl | ( | bool | bValue ) | [inline] |
Sets the software flow control type
| void zeus::TSerialConnection::setStopBits | ( | EStopBits | eValue ) | [inline] |
sets the stopbit settings. Call this method before connect()
| bool MQUALIFIER TSerialConnection::skip | ( | Int | iBytes = 1 ) |
[virtual] |
Implements zeus::IInputStream.
| Retval MQUALIFIER TSerialConnection::write | ( | const char * | pBuffer, |
| Int | iBufferSize | ||
| ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeArray | ( | const IByteArray & | rData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER zeus::TSerialConnection::writeBool | ( | bool | bData ) | [inline, virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeFloat32 | ( | Float32 | fData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeFloat64 | ( | const Float64 & | rdData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeInt16 | ( | Int16 | sData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeInt32 | ( | Int32 | lData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeInt64 | ( | const Int64 & | rldData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeInt8 | ( | Int8 | cData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER TSerialConnection::writeString | ( | const IString & | rData ) | [virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER zeus::TSerialConnection::writeUint16 | ( | Uint16 | usData ) | [inline, virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER zeus::TSerialConnection::writeUint32 | ( | Uint32 | ulData ) | [inline, virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER zeus::TSerialConnection::writeUint64 | ( | const Uint64 & | ruldData ) | [inline, virtual] |
Implements zeus::IOutputStream.
| Retval MQUALIFIER zeus::TSerialConnection::writeUint8 | ( | Uint8 | ucData ) | [inline, virtual] |
Implements zeus::IOutputStream.