mirror of
https://invent.kde.org/frameworks/kimageformats.git
synced 2025-07-18 03:54:18 -04:00
Run clang-format on all cpp/h files
NO_CHANGELOG
This commit is contained in:
@ -24,14 +24,17 @@
|
||||
#include <QMap>
|
||||
#include <QVector>
|
||||
|
||||
#include <QImage>
|
||||
#include <QDebug>
|
||||
#include <QImage>
|
||||
|
||||
class RLEData : public QVector<uchar>
|
||||
{
|
||||
public:
|
||||
RLEData() {}
|
||||
RLEData(const uchar *d, uint l, uint o) : _offset(o)
|
||||
RLEData()
|
||||
{
|
||||
}
|
||||
RLEData(const uchar *d, uint l, uint o)
|
||||
: _offset(o)
|
||||
{
|
||||
for (uint i = 0; i < l; i++) {
|
||||
append(d[i]);
|
||||
@ -51,7 +54,11 @@ private:
|
||||
class RLEMap : public QMap<RLEData, uint>
|
||||
{
|
||||
public:
|
||||
RLEMap() : _counter(0), _offset(0) {}
|
||||
RLEMap()
|
||||
: _counter(0)
|
||||
, _offset(0)
|
||||
{
|
||||
}
|
||||
uint insert(const uchar *d, uint l);
|
||||
QVector<const RLEData *> vector();
|
||||
void setBaseOffset(uint o)
|
||||
@ -74,7 +81,12 @@ public:
|
||||
bool writeImage(const QImage &);
|
||||
|
||||
private:
|
||||
enum { NORMAL, DITHERED, SCREEN, COLORMAP, }; // colormap
|
||||
enum {
|
||||
NORMAL,
|
||||
DITHERED,
|
||||
SCREEN,
|
||||
COLORMAP,
|
||||
}; // colormap
|
||||
QIODevice *_dev;
|
||||
QDataStream _stream;
|
||||
|
||||
@ -108,9 +120,9 @@ private:
|
||||
uchar intensity(uchar);
|
||||
};
|
||||
|
||||
SGIImage::SGIImage(QIODevice *io) :
|
||||
_starttab(nullptr),
|
||||
_lengthtab(nullptr)
|
||||
SGIImage::SGIImage(QIODevice *io)
|
||||
: _starttab(nullptr)
|
||||
, _lengthtab(nullptr)
|
||||
{
|
||||
_dev = io;
|
||||
_stream.setDevice(_dev);
|
||||
@ -249,7 +261,7 @@ bool SGIImage::readImage(QImage &img)
|
||||
qint16 u16;
|
||||
qint32 u32;
|
||||
|
||||
// qDebug() << "reading rgb ";
|
||||
// qDebug() << "reading rgb ";
|
||||
|
||||
// magic
|
||||
_stream >> u16;
|
||||
@ -259,42 +271,42 @@ bool SGIImage::readImage(QImage &img)
|
||||
|
||||
// verbatim/rle
|
||||
_stream >> _rle;
|
||||
// qDebug() << (_rle ? "RLE" : "verbatim");
|
||||
// qDebug() << (_rle ? "RLE" : "verbatim");
|
||||
if (_rle > 1) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// bytes per channel
|
||||
_stream >> _bpc;
|
||||
// qDebug() << "bytes per channel: " << int(_bpc);
|
||||
// qDebug() << "bytes per channel: " << int(_bpc);
|
||||
if (_bpc == 1)
|
||||
;
|
||||
else if (_bpc == 2) {
|
||||
// qDebug() << "dropping least significant byte";
|
||||
// qDebug() << "dropping least significant byte";
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
||||
// number of dimensions
|
||||
_stream >> _dim;
|
||||
// qDebug() << "dimensions: " << _dim;
|
||||
// qDebug() << "dimensions: " << _dim;
|
||||
if (_dim < 1 || _dim > 3) {
|
||||
return false;
|
||||
}
|
||||
|
||||
_stream >> _xsize >> _ysize >> _zsize >> _pixmin >> _pixmax >> u32;
|
||||
// qDebug() << "x: " << _xsize;
|
||||
// qDebug() << "y: " << _ysize;
|
||||
// qDebug() << "z: " << _zsize;
|
||||
// qDebug() << "x: " << _xsize;
|
||||
// qDebug() << "y: " << _ysize;
|
||||
// qDebug() << "z: " << _zsize;
|
||||
|
||||
// name
|
||||
_stream.readRawData(_imagename, 80);
|
||||
_imagename[79] = '\0';
|
||||
|
||||
_stream >> _colormap;
|
||||
// qDebug() << "colormap: " << _colormap;
|
||||
// qDebug() << "colormap: " << _colormap;
|
||||
if (_colormap != NORMAL) {
|
||||
return false; // only NORMAL supported
|
||||
return false; // only NORMAL supported
|
||||
}
|
||||
|
||||
for (int i = 0; i < 404; i++) {
|
||||
@ -302,7 +314,7 @@ bool SGIImage::readImage(QImage &img)
|
||||
}
|
||||
|
||||
if (_dim == 1) {
|
||||
// qDebug() << "1-dimensional images aren't supported yet";
|
||||
// qDebug() << "1-dimensional images aren't supported yet";
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -316,13 +328,13 @@ bool SGIImage::readImage(QImage &img)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (_zsize == 0 )
|
||||
if (_zsize == 0)
|
||||
return false;
|
||||
|
||||
if (_zsize == 2 || _zsize == 4) {
|
||||
img = img.convertToFormat(QImage::Format_ARGB32);
|
||||
} else if (_zsize > 4) {
|
||||
// qDebug() << "using first 4 of " << _zsize << " channels";
|
||||
// qDebug() << "using first 4 of " << _zsize << " channels";
|
||||
// Only let this continue if it won't cause a int overflow later
|
||||
// this is most likely a broken file anyway
|
||||
if (_ysize > std::numeric_limits<int>::max() / _zsize)
|
||||
@ -355,12 +367,12 @@ bool SGIImage::readImage(QImage &img)
|
||||
for (uint o = 0; o < _numrows; o++)
|
||||
// don't change to greater-or-equal!
|
||||
if (_starttab[o] + _lengthtab[o] > (uint)_data.size()) {
|
||||
// qDebug() << "image corrupt (sanity check failed)";
|
||||
// qDebug() << "image corrupt (sanity check failed)";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!readData(img)) {
|
||||
// qDebug() << "image corrupt (incomplete scanline)";
|
||||
// qDebug() << "image corrupt (incomplete scanline)";
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -567,7 +579,7 @@ void SGIImage::writeHeader()
|
||||
void SGIImage::writeRle()
|
||||
{
|
||||
_rle = 1;
|
||||
// qDebug() << "writing RLE data";
|
||||
// qDebug() << "writing RLE data";
|
||||
writeHeader();
|
||||
uint i;
|
||||
|
||||
@ -590,7 +602,7 @@ void SGIImage::writeRle()
|
||||
void SGIImage::writeVerbatim(const QImage &img)
|
||||
{
|
||||
_rle = 0;
|
||||
// qDebug() << "writing verbatim data";
|
||||
// qDebug() << "writing verbatim data";
|
||||
writeHeader();
|
||||
|
||||
const QRgb *c;
|
||||
@ -637,7 +649,7 @@ void SGIImage::writeVerbatim(const QImage &img)
|
||||
|
||||
bool SGIImage::writeImage(const QImage &image)
|
||||
{
|
||||
// qDebug() << "writing "; // TODO add filename
|
||||
// qDebug() << "writing "; // TODO add filename
|
||||
QImage img = image;
|
||||
if (img.allGray()) {
|
||||
_dim = 2, _zsize = 1;
|
||||
@ -651,7 +663,7 @@ bool SGIImage::writeImage(const QImage &image)
|
||||
|
||||
img = img.convertToFormat(QImage::Format_RGB32);
|
||||
if (img.isNull()) {
|
||||
// qDebug() << "can't convert image to depth 32";
|
||||
// qDebug() << "can't convert image to depth 32";
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -666,7 +678,7 @@ bool SGIImage::writeImage(const QImage &image)
|
||||
_rlemap.setBaseOffset(512 + _numrows * 2 * sizeof(quint32));
|
||||
|
||||
if (!scanData(img)) {
|
||||
// qDebug() << "this can't happen";
|
||||
// qDebug() << "this can't happen";
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -678,11 +690,11 @@ bool SGIImage::writeImage(const QImage &image)
|
||||
rle_size += _rlevector[i]->size();
|
||||
}
|
||||
|
||||
// qDebug() << "minimum intensity: " << _pixmin;
|
||||
// qDebug() << "maximum intensity: " << _pixmax;
|
||||
// qDebug() << "saved scanlines: " << _numrows - _rlemap.size();
|
||||
// qDebug() << "total savings: " << (verbatim_size - rle_size) << " bytes";
|
||||
// qDebug() << "compression: " << (rle_size * 100.0 / verbatim_size) << '%';
|
||||
// qDebug() << "minimum intensity: " << _pixmin;
|
||||
// qDebug() << "maximum intensity: " << _pixmax;
|
||||
// qDebug() << "saved scanlines: " << _numrows - _rlemap.size();
|
||||
// qDebug() << "total savings: " << (verbatim_size - rle_size) << " bytes";
|
||||
// qDebug() << "compression: " << (rle_size * 100.0 / verbatim_size) << '%';
|
||||
|
||||
if (verbatim_size <= rle_size) {
|
||||
writeVerbatim(img);
|
||||
@ -746,8 +758,7 @@ bool RGBHandler::canRead(QIODevice *device)
|
||||
|
||||
QImageIOPlugin::Capabilities RGBPlugin::capabilities(QIODevice *device, const QByteArray &format) const
|
||||
{
|
||||
if (format == "rgb" || format == "rgba" ||
|
||||
format == "bw" || format == "sgi") {
|
||||
if (format == "rgb" || format == "rgba" || format == "bw" || format == "sgi") {
|
||||
return Capabilities(CanRead | CanWrite);
|
||||
}
|
||||
if (!format.isEmpty()) {
|
||||
|
Reference in New Issue
Block a user