FrameMarker_Clear
};
enum SearchResult {
- SearchNotFound,
- SearchFound,
- SearchWrapped
+ SearchResult_NotFound,
+ SearchResult_Found,
+ SearchResult_Wrapped
};
static bool isCallAFrameMarker(const ApiTraceCall *call,
ApiTraceState defaultState() const;
- QVector<ApiTraceCall*> calls() const;
ApiTraceCall *callWithIndex(int idx) const;
- int numCalls() const;
QList<ApiTraceFrame*> frames() const;
ApiTraceFrame *frameAt(int idx) const;
public slots:
void setFileName(const QString &name);
- void setFrameMarker(FrameMarker marker);
void save();
void loadFrame(ApiTraceFrame *frame);
void findNext(ApiTraceFrame *frame,
Qt::CaseSensitivity sensitivity);
void findFrameStart(ApiTraceFrame *frame);
void findFrameEnd(ApiTraceFrame *frame);
+ void findCallIndex(int index);
+ void setCallError(const ApiTraceError &error);
signals:
void beginAddingFrames(int oldCount, int numAdded);
void endAddingFrames();
- void callsAdded(int oldCount, int numAdded);
void beginLoadingFrame(ApiTraceFrame *frame, int numAdded);
void endLoadingFrame(ApiTraceFrame *frame);
void foundFrameStart(ApiTraceFrame *frame);
void foundFrameEnd(ApiTraceFrame *frame);
-
+ void foundCallIndex(ApiTraceCall *call);
signals:
void loaderSearchNext(int startFrame,
Qt::CaseSensitivity sensitivity);
void loaderFindFrameStart(ApiTraceFrame *frame);
void loaderFindFrameEnd(ApiTraceFrame *frame);
+ void loaderFindCallIndex(int index);
private slots:
void addFrames(const QList<ApiTraceFrame*> &frames);
ApiTraceCall *call);
private:
- void detectFrames();
+ int callInFrame(int callIdx) const;
private:
QString m_fileName;
QString m_tempFileName;
QList<ApiTraceFrame*> m_frames;
- QVector<ApiTraceCall*> m_calls;
FrameMarker m_frameMarker;
bool m_needsSaving;
QSet<ApiTraceCall*> m_errors;
+ QList< QPair<ApiTraceFrame*, ApiTraceError> > m_queuedErrors;
};
#endif