Fixed data base info retrieving through DBHelper, value(QString) should never be used because it is really slow. All items sorting should be done at db level or using std::sort.

This commit is contained in:
Luis Ángel San Martín
2017-08-26 16:16:11 +02:00
commit d6898e9a4e
1040 changed files with 102444 additions and 0 deletions

View File

@ -0,0 +1,37 @@
#ifndef COMPRESSED_ARCHIVE_H
#define COMPRESSED_ARCHIVE_H
#include <QObject>
#include "extract_delegate.h"
extern"C" {
#include <unarr.h>
}
class CompressedArchive : public QObject
{
Q_OBJECT
public:
explicit CompressedArchive(const QString & filePath, QObject *parent = 0);
~CompressedArchive();
signals:
public slots:
int getNumFiles();
void getAllData(const QVector<quint32> & indexes, ExtractDelegate * delegate=0);
QByteArray getRawDataAtIndex(int index);
QList<QString> getFileNames();
bool isValid();
bool toolsLoaded();
private:
bool tools;
bool valid;
QList<QString> fileNames;
int numFiles;
ar_archive *ar;
ar_stream *stream;
QList<qint64> offsets;
};
#endif // COMPRESSED_ARCHIVE_H