4 #include "apitracecall.h"
12 class ApiTrace : public QObject
17 FrameMarker_SwapBuffers,
22 static bool isCallAFrameMarker(const ApiTraceCall *call,
30 QString fileName() const;
32 FrameMarker frameMarker() const;
34 ApiTraceState defaultState() const;
36 QList<ApiTraceCall*> calls() const;
37 ApiTraceCall *callAt(int idx) const;
38 ApiTraceCall *callWithIndex(int idx) const;
41 QList<ApiTraceFrame*> frames() const;
42 ApiTraceFrame *frameAt(int idx) const;
43 int numFrames() const;
44 int numCallsInFrame(int idx) const;
46 void callEdited(ApiTraceCall *call);
47 void callReverted(ApiTraceCall *call);
48 void callError(ApiTraceCall *call);
51 bool needsSaving() const;
53 bool isSaving() const;
56 void setFileName(const QString &name);
57 void setFrameMarker(FrameMarker marker);
61 void startedLoadingTrace();
62 void finishedLoadingTrace();
64 void framesInvalidated();
65 void changed(ApiTraceCall *call);
69 void framesAdded(int oldCount, int numAdded);
70 void callsAdded(int oldCount, int numAdded);
73 void addFrames(const QList<ApiTraceFrame*> &frames);
79 QString m_tempFileName;
81 QList<ApiTraceFrame*> m_frames;
82 QList<ApiTraceCall*> m_calls;
84 FrameMarker m_frameMarker;
86 LoaderThread *m_loader;
89 QSet<ApiTraceCall*> m_editedCalls;