MultiMC5/launcher/tools/BaseProfiler.cpp

37 lines
813 B
C++
Raw Normal View History

#include "BaseProfiler.h"
#include "QObjectPtr.h"
2014-02-15 17:15:41 +00:00
#include <QProcess>
2015-02-09 00:51:14 +00:00
BaseProfiler::BaseProfiler(SettingsObjectPtr settings, InstancePtr instance, QObject *parent)
2018-07-15 12:51:05 +00:00
: BaseExternalTool(settings, instance, parent)
{
}
void BaseProfiler::beginProfiling(shared_qobject_ptr<LaunchTask> process)
{
2018-07-15 12:51:05 +00:00
beginProfilingImpl(process);
}
void BaseProfiler::abortProfiling()
{
2018-07-15 12:51:05 +00:00
abortProfilingImpl();
}
void BaseProfiler::abortProfilingImpl()
{
2018-07-15 12:51:05 +00:00
if (!m_profilerProcess)
{
return;
}
m_profilerProcess->terminate();
m_profilerProcess->deleteLater();
m_profilerProcess = 0;
emit abortLaunch(tr("Profiler aborted"));
}
2014-03-30 18:11:05 +00:00
BaseProfiler *BaseProfilerFactory::createProfiler(InstancePtr instance, QObject *parent)
{
2018-07-15 12:51:05 +00:00
return qobject_cast<BaseProfiler *>(createTool(instance, parent));
}