mirror of
https://github.com/MultiMC/MultiMC5.git
synced 2024-12-25 15:16:02 +00:00
37 lines
813 B
C++
37 lines
813 B
C++
#include "BaseProfiler.h"
|
|
#include "QObjectPtr.h"
|
|
|
|
#include <QProcess>
|
|
|
|
BaseProfiler::BaseProfiler(SettingsObjectPtr settings, InstancePtr instance, QObject *parent)
|
|
: BaseExternalTool(settings, instance, parent)
|
|
{
|
|
}
|
|
|
|
void BaseProfiler::beginProfiling(shared_qobject_ptr<LaunchTask> process)
|
|
{
|
|
beginProfilingImpl(process);
|
|
}
|
|
|
|
void BaseProfiler::abortProfiling()
|
|
{
|
|
abortProfilingImpl();
|
|
}
|
|
|
|
void BaseProfiler::abortProfilingImpl()
|
|
{
|
|
if (!m_profilerProcess)
|
|
{
|
|
return;
|
|
}
|
|
m_profilerProcess->terminate();
|
|
m_profilerProcess->deleteLater();
|
|
m_profilerProcess = 0;
|
|
emit abortLaunch(tr("Profiler aborted"));
|
|
}
|
|
|
|
BaseProfiler *BaseProfilerFactory::createProfiler(InstancePtr instance, QObject *parent)
|
|
{
|
|
return qobject_cast<BaseProfiler *>(createTool(instance, parent));
|
|
}
|