1 /* 2 * This file is part of Converseen, an open-source batch image converter 3 * and resizer. 4 * 5 * (C) Francesco Mondello 2009 - 2021 6 * 7 * This program is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program. If not, see <http://www.gnu.org/licenses/>. 19 * 20 * Contact e-mail: Francesco Mondello <faster3ck@gmail.com> 21 * 22 */ 23 24 #ifndef THUMBNAILGENERATORTHREAD_H 25 #define THUMBNAILGENERATORTHREAD_H 26 27 #include <string> 28 #include <iostream> 29 #include <Magick++.h> 30 31 #include <QThread> 32 #include <QObject> 33 #include <QPixmap> 34 #include <QPixmapCache> 35 #include "cachingsystem.h" 36 37 using namespace Magick; 38 using namespace std; 39 40 class ThumbnailGeneratorThread : public QThread 41 { 42 Q_OBJECT 43 public: 44 ThumbnailGeneratorThread(QObject *parent); 45 void run(); 46 47 void setFileName(QString fileName); 48 void setThumbnailGeneration(bool generate); 49 50 private: 51 void createThumbnail(); 52 53 QImage* toQImage(const Image &image); 54 QString m_fileName; 55 bool m_generateThumbnail; 56 57 signals: 58 void pixmapGenerated(QImage thumbnail, int orig_w, int orig_h, double orig_dens_x, double orig_dens_y); 59 60 public slots: 61 62 }; 63 64 #endif // THUMBNAILGENERATORTHREAD_H 65