X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fapitrace.cpp;h=2eb6ab52a665075752011cb6678c8c0189304c4e;hb=3176ebeffe825a5f998b13755c09cfa312b0e8d3;hp=d6a9e41375c2cda6ef5f39eb43084e21d2b35cc0;hpb=ac92a2115ab3c759add836e115f108c945e0195b;p=apitrace diff --git a/gui/apitrace.cpp b/gui/apitrace.cpp index d6a9e41..2eb6ab5 100644 --- a/gui/apitrace.cpp +++ b/gui/apitrace.cpp @@ -3,6 +3,7 @@ #include "traceloader.h" #include "saverthread.h" +#include #include #include @@ -13,10 +14,12 @@ ApiTrace::ApiTrace() m_loader = new TraceLoader(); connect(this, SIGNAL(loadTrace(QString)), m_loader, SLOT(loadTrace(QString))); + connect(this, SIGNAL(requestFrame(ApiTraceFrame*)), + m_loader, SLOT(loadFrame(ApiTraceFrame*))); connect(m_loader, SIGNAL(framesLoaded(const QList)), this, SLOT(addFrames(const QList))); - connect(m_loader, SIGNAL(frameLoaded(int,QVector,quint64)), - this, SLOT(fillFrame(int,QVector,quint64))); + connect(m_loader, SIGNAL(frameLoaded(ApiTraceFrame*)), + this, SIGNAL(frameLoaded(ApiTraceFrame*))); connect(m_loader, SIGNAL(startedParsing()), this, SIGNAL(startedLoadingTrace())); @@ -94,11 +97,6 @@ QVector ApiTrace::calls() const return m_calls; } -ApiTraceCall * ApiTrace::callAt(int idx) const -{ - return m_calls.value(idx); -} - int ApiTrace::numCalls() const { return m_calls.count(); @@ -302,9 +300,10 @@ bool ApiTrace::hasErrors() const return !m_errors.isEmpty(); } -void ApiTrace::fillFrame(int frameIdx, const QVector &calls, - quint64 binaryDataSize) +void ApiTrace::loadFrame(ApiTraceFrame *frame) { + Q_ASSERT(!frame->loaded()); + emit requestFrame(frame); } #include "apitrace.moc"