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));
 | |
| }
 |