summaryrefslogtreecommitdiffstats
path: root/logic/launch/LaunchTask.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2016-04-10 04:29:29 +0200
committerPetr Mrázek <peterix@gmail.com>2016-04-30 23:59:23 +0200
commit47e37635f50c09b4f9a9ee7699e3120bab3e4088 (patch)
tree061c2f675fb7e244ebe4b54ef206bfbd615c91f8 /logic/launch/LaunchTask.h
parentfcd4a482f759cd58ee319a51082d0146b7e426e2 (diff)
downloadMultiMC-47e37635f50c09b4f9a9ee7699e3120bab3e4088.tar
MultiMC-47e37635f50c09b4f9a9ee7699e3120bab3e4088.tar.gz
MultiMC-47e37635f50c09b4f9a9ee7699e3120bab3e4088.tar.lz
MultiMC-47e37635f50c09b4f9a9ee7699e3120bab3e4088.tar.xz
MultiMC-47e37635f50c09b4f9a9ee7699e3120bab3e4088.zip
NOISSUE split GUI stuff from logic library
Diffstat (limited to 'logic/launch/LaunchTask.h')
-rw-r--r--logic/launch/LaunchTask.h122
1 files changed, 0 insertions, 122 deletions
diff --git a/logic/launch/LaunchTask.h b/logic/launch/LaunchTask.h
deleted file mode 100644
index 447445ca..00000000
--- a/logic/launch/LaunchTask.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Copyright 2013-2015 MultiMC Contributors
- *
- * Authors: Orochimarufan <orochimarufan.x3@gmail.com>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-#include <QProcess>
-#include "BaseInstance.h"
-#include "MessageLevel.h"
-#include "LoggedProcess.h"
-#include "LaunchStep.h"
-
-#include "multimc_logic_export.h"
-
-class MULTIMC_LOGIC_EXPORT LaunchTask: public Task
-{
- Q_OBJECT
-protected:
- explicit LaunchTask(InstancePtr instance);
- void init();
-
-public:
- enum State
- {
- NotStarted,
- Running,
- Waiting,
- Failed,
- Aborted,
- Finished
- };
-
-public: /* methods */
- static std::shared_ptr<LaunchTask> create(InstancePtr inst);
- virtual ~LaunchTask() {};
-
- void appendStep(std::shared_ptr<LaunchStep> step);
- void prependStep(std::shared_ptr<LaunchStep> step);
- void setCensorFilter(QMap<QString, QString> filter);
-
- InstancePtr instance()
- {
- return m_instance;
- }
-
- void setPid(qint64 pid)
- {
- m_pid = pid;
- }
-
- qint64 pid()
- {
- return m_pid;
- }
-
- /**
- * @brief prepare the process for launch (for multi-stage launch)
- */
- virtual void executeTask() override;
-
- /**
- * @brief launch the armed instance
- */
- void proceed();
-
- /**
- * @brief abort launch
- */
- virtual bool abort() override;
-
-public:
- QString substituteVariables(const QString &cmd) const;
- QString censorPrivateInfo(QString in);
-
-protected: /* methods */
- virtual void emitFailed(QString reason) override;
- virtual void emitSucceeded() override;
-
-signals:
- /**
- * @brief emitted when the launch preparations are done
- */
- void readyForLaunch();
-
- void requestProgress(Task *task);
-
- void requestLogging();
-
- /**
- * @brief emitted when we want to log something
- * @param text the text to log
- * @param level the level to log at
- */
- void log(QString text, MessageLevel::Enum level = MessageLevel::MultiMC);
-
-public slots:
- void onLogLines(const QStringList& lines, MessageLevel::Enum defaultLevel = MessageLevel::MultiMC);
- void onLogLine(QString line, MessageLevel::Enum defaultLevel = MessageLevel::MultiMC);
- void onReadyForLaunch();
- void onStepFinished();
- void onProgressReportingRequested();
-
-protected: /* data */
- InstancePtr m_instance;
- QList <std::shared_ptr<LaunchStep>> m_steps;
- QMap<QString, QString> m_censorFilter;
- int currentStep = -1;
- State state = NotStarted;
- qint64 m_pid = -1;
-};