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);
50 bool needsSaving() const;
53 void setFileName(const QString &name);
54 void setFrameMarker(FrameMarker marker);
58 void startedLoadingTrace();
59 void finishedLoadingTrace();
61 void framesInvalidated();
62 void changed(ApiTraceCall *call);
65 void framesAdded(int oldCount, int numAdded);
66 void callsAdded(int oldCount, int numAdded);
69 void addFrames(const QList<ApiTraceFrame*> &frames);
74 QString m_tempFileName;
76 QList<ApiTraceFrame*> m_frames;
77 QList<ApiTraceCall*> m_calls;
79 FrameMarker m_frameMarker;
81 LoaderThread *m_loader;
84 QSet<ApiTraceCall*> m_editedCalls;