cli: Move most classes to shared lib for reuse

Este commit está contenido en:
2022-03-18 22:33:45 +01:00
padre d43c35819d
commit 478d57b342
Se han modificado 33 ficheros con 32 adiciones y 44 borrados

34
shared/processor.h Archivo normal
Ver fichero

@ -0,0 +1,34 @@
#ifndef PROCESSOR_H
#define PROCESSOR_H
#include <QVector>
#include <QFile>
#include "pagedata.h"
#include "utils.h"
enum DataSource
{
FILEPATH,
ARRAY
};
#define NOTHING_PROCESSED 4
class Processor
{
public:
/* Indicates the data source the processor performs best with. For example,
* you do not want to read the entire of a compressed archive just to get the content of
* a single file */
DataSource PREFERED_DATA_SOURCE = ARRAY;
Processor();
virtual QVector<PageData> process(const QByteArray &data) const = 0;
virtual QVector<PageData> process(QString path) const
{
return process(Utils::readFile(path));
}
virtual ~Processor()
{
}
};
#endif // PROCESSOR_H