#include "gen_qiodevice.h" #include "qiodevice.h" #include #include #include #include extern "C" { extern void miqt_exec_callback(void* cb, int argc, void* argv); } QMetaObject* QIODevice_MetaObject(QIODevice* self) { return (QMetaObject*) self->metaObject(); } void QIODevice_Tr(char* s, char** _out, int* _out_Strlen) { QString ret = QIODevice::tr(s); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_TrUtf8(char* s, char** _out, int* _out_Strlen) { QString ret = QIODevice::trUtf8(s); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_SetTextModeEnabled(QIODevice* self, bool enabled) { self->setTextModeEnabled(enabled); } bool QIODevice_IsTextModeEnabled(QIODevice* self) { return self->isTextModeEnabled(); } bool QIODevice_IsOpen(QIODevice* self) { return self->isOpen(); } bool QIODevice_IsReadable(QIODevice* self) { return self->isReadable(); } bool QIODevice_IsWritable(QIODevice* self) { return self->isWritable(); } bool QIODevice_IsSequential(QIODevice* self) { return self->isSequential(); } int QIODevice_ReadChannelCount(QIODevice* self) { return self->readChannelCount(); } int QIODevice_WriteChannelCount(QIODevice* self) { return self->writeChannelCount(); } int QIODevice_CurrentReadChannel(QIODevice* self) { return self->currentReadChannel(); } void QIODevice_SetCurrentReadChannel(QIODevice* self, int channel) { self->setCurrentReadChannel(static_cast(channel)); } int QIODevice_CurrentWriteChannel(QIODevice* self) { return self->currentWriteChannel(); } void QIODevice_SetCurrentWriteChannel(QIODevice* self, int channel) { self->setCurrentWriteChannel(static_cast(channel)); } void QIODevice_Close(QIODevice* self) { self->close(); } int64_t QIODevice_Pos(QIODevice* self) { return self->pos(); } int64_t QIODevice_Size(QIODevice* self) { return self->size(); } bool QIODevice_Seek(QIODevice* self, int64_t pos) { return self->seek((qint64)(pos)); } bool QIODevice_AtEnd(QIODevice* self) { return self->atEnd(); } bool QIODevice_Reset(QIODevice* self) { return self->reset(); } int64_t QIODevice_BytesAvailable(QIODevice* self) { return self->bytesAvailable(); } int64_t QIODevice_BytesToWrite(QIODevice* self) { return self->bytesToWrite(); } int64_t QIODevice_Read(QIODevice* self, char* data, int64_t maxlen) { return self->read(data, (qint64)(maxlen)); } QByteArray* QIODevice_ReadWithMaxlen(QIODevice* self, int64_t maxlen) { QByteArray ret = self->read((qint64)(maxlen)); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } QByteArray* QIODevice_ReadAll(QIODevice* self) { QByteArray ret = self->readAll(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } int64_t QIODevice_ReadLine(QIODevice* self, char* data, int64_t maxlen) { return self->readLine(data, (qint64)(maxlen)); } QByteArray* QIODevice_ReadLine2(QIODevice* self) { QByteArray ret = self->readLine(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } bool QIODevice_CanReadLine(QIODevice* self) { return self->canReadLine(); } void QIODevice_StartTransaction(QIODevice* self) { self->startTransaction(); } void QIODevice_CommitTransaction(QIODevice* self) { self->commitTransaction(); } void QIODevice_RollbackTransaction(QIODevice* self) { self->rollbackTransaction(); } bool QIODevice_IsTransactionStarted(QIODevice* self) { return self->isTransactionStarted(); } int64_t QIODevice_Write(QIODevice* self, char* data, int64_t lenVal) { return self->write(data, (qint64)(lenVal)); } int64_t QIODevice_WriteWithData(QIODevice* self, char* data) { return self->write(data); } int64_t QIODevice_Write2(QIODevice* self, QByteArray* data) { return self->write(*data); } int64_t QIODevice_Peek(QIODevice* self, char* data, int64_t maxlen) { return self->peek(data, (qint64)(maxlen)); } QByteArray* QIODevice_PeekWithMaxlen(QIODevice* self, int64_t maxlen) { QByteArray ret = self->peek((qint64)(maxlen)); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } int64_t QIODevice_Skip(QIODevice* self, int64_t maxSize) { return self->skip((qint64)(maxSize)); } bool QIODevice_WaitForReadyRead(QIODevice* self, int msecs) { return self->waitForReadyRead(static_cast(msecs)); } bool QIODevice_WaitForBytesWritten(QIODevice* self, int msecs) { return self->waitForBytesWritten(static_cast(msecs)); } void QIODevice_UngetChar(QIODevice* self, char c) { self->ungetChar(static_cast(c)); } bool QIODevice_PutChar(QIODevice* self, char c) { return self->putChar(static_cast(c)); } bool QIODevice_GetChar(QIODevice* self, char* c) { return self->getChar(c); } void QIODevice_ErrorString(QIODevice* self, char** _out, int* _out_Strlen) { QString ret = self->errorString(); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_ReadyRead(QIODevice* self) { self->readyRead(); } void QIODevice_connect_ReadyRead(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::readyRead), self, [=]() { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_ChannelReadyRead(QIODevice* self, int channel) { self->channelReadyRead(static_cast(channel)); } void QIODevice_connect_ChannelReadyRead(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::channelReadyRead), self, [=](int channel) { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_BytesWritten(QIODevice* self, int64_t bytes) { self->bytesWritten((qint64)(bytes)); } void QIODevice_connect_BytesWritten(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::bytesWritten), self, [=](qint64 bytes) { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_ChannelBytesWritten(QIODevice* self, int channel, int64_t bytes) { self->channelBytesWritten(static_cast(channel), (qint64)(bytes)); } void QIODevice_connect_ChannelBytesWritten(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::channelBytesWritten), self, [=](int channel, qint64 bytes) { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_AboutToClose(QIODevice* self) { self->aboutToClose(); } void QIODevice_connect_AboutToClose(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::aboutToClose), self, [=]() { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_ReadChannelFinished(QIODevice* self) { self->readChannelFinished(); } void QIODevice_connect_ReadChannelFinished(QIODevice* self, void* slot) { QIODevice::connect(self, static_cast(&QIODevice::readChannelFinished), self, [=]() { miqt_exec_callback(slot, 0, nullptr); }); } void QIODevice_Tr2(char* s, char* c, char** _out, int* _out_Strlen) { QString ret = QIODevice::tr(s, c); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_Tr3(char* s, char* c, int n, char** _out, int* _out_Strlen) { QString ret = QIODevice::tr(s, c, static_cast(n)); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_TrUtf82(char* s, char* c, char** _out, int* _out_Strlen) { QString ret = QIODevice::trUtf8(s, c); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QIODevice_TrUtf83(char* s, char* c, int n, char** _out, int* _out_Strlen) { QString ret = QIODevice::trUtf8(s, c, static_cast(n)); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } QByteArray* QIODevice_ReadLine1(QIODevice* self, int64_t maxlen) { QByteArray ret = self->readLine((qint64)(maxlen)); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } void QIODevice_Delete(QIODevice* self) { delete self; }