1 #include "trimprocess.h"
9 TrimProcess::TrimProcess(QObject *parent)
12 m_process = new QProcess(this);
14 connect(m_process, SIGNAL(finished(int, QProcess::ExitStatus)),
15 this, SLOT(trimFinished()));
16 connect(m_process, SIGNAL(error(QProcess::ProcessError)),
17 this, SLOT(trimError(QProcess::ProcessError)));
20 TrimProcess::~TrimProcess()
24 void TrimProcess::trimFinished()
26 // consume verbose output spew
27 QByteArray outputStrings = m_process->readAllStandardOutput();
28 QByteArray errorStrings = m_process->readAllStandardError();
30 qDebug()<<"trim finished on " << m_trimPath;
31 qDebug()<<"\terr = "<<errorStrings;
32 qDebug()<<"\tout = "<<outputStrings;
34 emit trimmedFile(m_trimPath);
37 void TrimProcess::trimError(QProcess::ProcessError err)
39 // consume verbose output spew
40 QByteArray outputStrings = m_process->readAllStandardOutput();
41 QByteArray errorStrings = m_process->readAllStandardError();
43 qDebug()<<"trace error = "<<m_tracePath;
44 qDebug()<<"\terr = "<<errorStrings;
45 qDebug()<<"\tout = "<<outputStrings;
47 emit error(errorStrings);
51 void TrimProcess::start()
53 QStringList arguments;
55 QString outputFormat = QLatin1String("--output=%1");
56 QString outputArgument = outputFormat
59 QString callSetFormat = QLatin1String("--calls=0-%1");
60 QString callSetArgument = callSetFormat
63 arguments << QLatin1String("trim");
64 arguments << outputArgument;
65 arguments << callSetArgument;
66 arguments << m_tracePath;
68 m_process->start(QLatin1String("apitrace"), arguments);
71 int TrimProcess::trimIndex()
76 void TrimProcess::setTrimIndex(int trimIndex)
78 m_trimIndex = trimIndex;
83 void TrimProcess::setTracePath(const QString &str)
90 QString TrimProcess::tracePath() const
95 void TrimProcess::updateTrimPath()
98 QFileInfo fi(m_tracePath);
99 QString baseName = fi.baseName();
100 QString path = fi.path();
102 QString format = QString::fromLatin1("%1/%2.%3.trim.trace");
110 #include "trimprocess.moc"