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 ApiTraceCallSignature *signature(unsigned id);
37 void addSignature(unsigned id, ApiTraceCallSignature *signature);
39 ApiTraceEnumSignature *enumSignature(unsigned id);
40 void addEnumSignature(unsigned id, ApiTraceEnumSignature *signature);
43 QVector<ApiTraceCall*> calls() const;
44 ApiTraceCall *callAt(int idx) const;
45 ApiTraceCall *callWithIndex(int idx) const;
48 QList<ApiTraceFrame*> frames() const;
49 ApiTraceFrame *frameAt(int idx) const;
50 int numFrames() const;
51 int numCallsInFrame(int idx) const;
53 void callEdited(ApiTraceCall *call);
54 void callReverted(ApiTraceCall *call);
55 void callError(ApiTraceCall *call);
58 bool needsSaving() const;
60 bool isSaving() const;
62 bool hasErrors() const;
65 void setFileName(const QString &name);
66 void setFrameMarker(FrameMarker marker);
70 void startedLoadingTrace();
71 void finishedLoadingTrace();
73 void framesInvalidated();
74 void changed(ApiTraceCall *call);
78 void beginAddingFrames(int oldCount, int numAdded);
79 void endAddingFrames();
80 void callsAdded(int oldCount, int numAdded);
83 void addFrames(const QList<ApiTraceFrame*> &frames);
89 QString m_tempFileName;
91 QList<ApiTraceFrame*> m_frames;
92 QVector<ApiTraceCall*> m_calls;
94 FrameMarker m_frameMarker;
96 LoaderThread *m_loader;
99 QSet<ApiTraceCall*> m_editedCalls;
103 QSet<ApiTraceCall*> m_errors;
104 QVector<ApiTraceCallSignature*> m_signatures;
105 QVector<ApiTraceEnumSignature*> m_enumSignatures;