X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Ftraceloader.h;h=0954078219fba68bd3e188b72d56027cd3b01d7b;hb=3801952b80cd7a7160f6410518f6e3740d461b60;hp=4b88ec605041527e2c9464e1aabbc9ee9cd484da;hpb=1c35c914cf934c957664d9692a099634aacc4e44;p=apitrace diff --git a/gui/traceloader.h b/gui/traceloader.h index 4b88ec6..0954078 100644 --- a/gui/traceloader.h +++ b/gui/traceloader.h @@ -27,20 +27,15 @@ public: public slots: void loadTrace(const QString &filename); void loadFrame(ApiTraceFrame *frame); - void setFrameMarker(ApiTrace::FrameMarker marker); - void searchNext(int startFrame, - const QString &str, - Qt::CaseSensitivity sensitivity); - void searchPrev(int startFrame, - const QString &str, - Qt::CaseSensitivity sensitivity); void findFrameStart(ApiTraceFrame *frame); void findFrameEnd(ApiTraceFrame *frame); void findCallIndex(int index); + void search(const ApiTrace::SearchRequest &request); signals: void startedParsing(); void parsed(int percent); + void guessedApi(int api); void finishedParsing(); void framesLoaded(const QList &frames); @@ -48,7 +43,9 @@ signals: const QVector &calls, quint64 binaryDataSize); - void searchResult(ApiTrace::SearchResult result, ApiTraceCall *call); + void searchResult(const ApiTrace::SearchRequest &request, + ApiTrace::SearchResult result, + ApiTraceCall *call); void foundFrameStart(ApiTraceFrame *frame); void foundFrameEnd(ApiTraceFrame *frame); void foundCallIndex(ApiTraceCall *call); @@ -57,36 +54,36 @@ private: FrameBookmark() : numberOfCalls(0) {} - FrameBookmark(const Trace::ParseBookmark &s) + FrameBookmark(const trace::ParseBookmark &s) : start(s), numberOfCalls(0) {} - Trace::ParseBookmark start; + trace::ParseBookmark start; int numberOfCalls; }; - bool isCallAFrameMarker(const Trace::Call *call) const; int numberOfFrames() const; int numberOfCallsInFrame(int frameIdx) const; void loadHelpFile(); + void guessApi(const trace::Call *call); void scanTrace(); void parseTrace(); + void searchNext(const ApiTrace::SearchRequest &request); + void searchPrev(const ApiTrace::SearchRequest &request); + int callInFrame(int callIdx) const; - bool callContains(Trace::Call *call, + bool callContains(trace::Call *call, const QString &str, Qt::CaseSensitivity sensitivity); QVector fetchFrameContents(ApiTraceFrame *frame); - bool searchCallsBackwards(const QList &calls, + bool searchCallsBackwards(const QList &calls, int frameIdx, - const QString &str, - Qt::CaseSensitivity sensitivity); + const ApiTrace::SearchRequest &request); private: - Trace::Parser m_parser; - QString m_fileName; - ApiTrace::FrameMarker m_frameMarker; + trace::Parser m_parser; typedef QMap FrameBookmarks; FrameBookmarks m_frameBookmarks;