// SPDX-License-Identifier: BSD-3-Clause // Copyright (c) 2020-2021, The Monero Project. #ifndef WOWLET_XMRIG_H #define WOWLET_XMRIG_H #include #include #include #include #include #include #include #include "utils/childproc.h" class XmRig : public QObject { Q_OBJECT public: explicit XmRig(const QString &configDir, QObject *parent = nullptr); void prepare(); void start(const QString &path, int threads, const QString &address, const QString &username, const QString &password, bool tor = false, bool tls = true); void stop(); QString rigDir; QString rigPath; signals: void error(const QString &msg); void output(const QByteArray &data); void hashrate(const QString &rate); private slots: void stateChanged(QProcess::ProcessState); void handleProcessOutput(); void handleProcessError(QProcess::ProcessError error); private: ChildProcess m_process; }; #endif //WOWLET_XMRIG_H