20 void start(QString path, QStringList args);
23 QProcess *process()
const {
return m_proc.data(); }
26 void setProcess(QProcess *proc,
int msecs = 1000);
29 void ready(QByteArray t);
30 void error(
int errorCode, QString errorString);
31 void finished(
int exitCode,
int statusCode, QString errorString);
34 QScopedPointer<QProcess> m_proc;
37class Decoder :
public QObject {
40 Decoder(QObject *parent =
nullptr);
46 QString program()
const {
47 if (!m_worker.isNull() && m_worker->process() !=
nullptr) {
48 return m_worker->process()->program();
53 QStringList arguments()
const {
54 if (!m_worker.isNull() && m_worker->process() !=
nullptr) {
55 return m_worker->process()->arguments();
64 void start(QThread::Priority priority);
68 void processStart(QString path, QStringList args);
69 void processReady(QByteArray t);
72 void processError(
int errorCode, QString errorString);
73 void processFinished(
int exitCode,
int statusCode, QString errorString);
76 void startWorker(QString path, QStringList args);
79 void ready(QByteArray t);
80 void error(
int errorCode, QString errorString);
81 void finished(
int exitCode,
int statusCode, QString errorString);
84 QPointer<Worker> m_worker;