1
Fork 0
mirror of https://github.com/redstrate/Novus.git synced 2025-04-26 13:47:46 +00:00
novus/parts/hex/document/buffer/qmemorybuffer.cpp
2023-12-09 22:35:59 -05:00

50 lines
No EOL
1.2 KiB
C++

// SPDX-FileCopyrightText: 2014 Dax89
// SPDX-License-Identifier: MIT
#include "qmemorybuffer.h"
QMemoryBuffer::QMemoryBuffer(QObject *parent)
: QHexBuffer(parent)
{
}
uchar QMemoryBuffer::at(qint64 idx)
{
return static_cast<uchar>(m_buffer.at(idx));
}
qint64 QMemoryBuffer::length() const
{
return static_cast<qint64>(m_buffer.length());
}
void QMemoryBuffer::insert(qint64 offset, const QByteArray &data)
{
m_buffer.insert(static_cast<int>(offset), data);
}
void QMemoryBuffer::remove(qint64 offset, int length)
{
m_buffer.remove(static_cast<int>(offset), length);
}
QByteArray QMemoryBuffer::read(qint64 offset, int length)
{
return m_buffer.mid(static_cast<int>(offset), length);
}
bool QMemoryBuffer::readDevice(QIODevice *device)
{
m_buffer = device->readAll();
return true;
}
void QMemoryBuffer::writeDevice(QIODevice *device)
{
device->write(m_buffer);
}
qint64 QMemoryBuffer::indexOf(const QByteArray &ba, qint64 from)
{
return m_buffer.indexOf(ba, static_cast<int>(from));
}
qint64 QMemoryBuffer::lastIndexOf(const QByteArray &ba, qint64 from)
{
return m_buffer.lastIndexOf(ba, static_cast<int>(from));
}
#include "moc_qmemorybuffer.cpp"