diff options
Diffstat (limited to 'src/serialport/qserialport_wince.cpp')
-rw-r--r-- | src/serialport/qserialport_wince.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/serialport/qserialport_wince.cpp b/src/serialport/qserialport_wince.cpp index 1cf79cc..a9c80b2 100644 --- a/src/serialport/qserialport_wince.cpp +++ b/src/serialport/qserialport_wince.cpp @@ -337,10 +337,9 @@ bool QSerialPortPrivate::setBreakEnabled(bool set) return true; } -void QSerialPortPrivate::startWriting() +qint64 QSerialPortPrivate::readData(char *data, qint64 maxSize) { - // trigger write sequence - notifyWrite(); + return readBuffer.read(data, maxSize); } bool QSerialPortPrivate::waitForReadyRead(int msec) @@ -579,6 +578,19 @@ bool QSerialPortPrivate::notifyWrite() return true; } +qint64 QSerialPortPrivate::bytesToWrite() const +{ + return writeBuffer.size(); +} + +qint64 QSerialPortPrivate::writeData(const char *data, qint64 maxSize) +{ + ::memcpy(writeBuffer.reserve(maxSize), data, maxSize); + if (!writeBuffer.isEmpty()) + notifyWrite(); + return maxSize; +} + void QSerialPortPrivate::processIoErrors(bool error) { Q_Q(QSerialPort); |