4 #include "apitracecall.h"
11 class ApiTrace : public QObject
16 FrameMarker_SwapBuffers,
21 static bool isCallAFrameMarker(const ApiTraceCall *call,
29 QString fileName() const;
31 FrameMarker frameMarker() const;
33 ApiTraceState defaultState() const;
35 QList<ApiTraceCall*> calls() const;
36 ApiTraceCall *callAt(int idx) const;
37 ApiTraceCall *callWithIndex(int idx) const;
40 QList<ApiTraceFrame*> frames() const;
41 ApiTraceFrame *frameAt(int idx) const;
42 int numFrames() const;
43 int numCallsInFrame(int idx) const;
45 void callEdited(ApiTraceCall *call);
46 void callReverted(ApiTraceCall *call);
49 bool needsSaving() const;
52 void setFileName(const QString &name);
53 void setFrameMarker(FrameMarker marker);
57 void startedLoadingTrace();
58 void finishedLoadingTrace();
60 void framesInvalidated();
61 void changed(ApiTraceCall *call);
64 void framesAdded(int oldCount, int numAdded);
65 void callsAdded(int oldCount, int numAdded);
68 void addFrames(const QList<ApiTraceFrame*> &frames);
73 QString m_tempFileName;
75 QList<ApiTraceFrame*> m_frames;
76 QList<ApiTraceCall*> m_calls;
78 FrameMarker m_frameMarker;
80 LoaderThread *m_loader;
82 QSet<ApiTraceCall*> m_editedCalls;