1 #ifndef TRACE_LOADER_HPP
2 #define TRACE_LOADER_HPP
4 #include "trace_file.hpp"
5 #include "trace_parser.hpp"
20 FrameMarker_SwapBuffers,
29 Loader::FrameMarker frameMarker() const;
30 void setFrameMarker(Loader::FrameMarker marker);
32 int numberOfFrames() const;
33 int numberOfCallsInFrame(int frameIdx) const;
35 bool open(const char *filename);
38 std::vector<Trace::Call*> frame(int idx);
45 FrameOffset(const File::Offset &s)
54 bool isCallAFrameMarker(const Trace::Call *call) const;
57 Trace::Parser m_parser;
58 FrameMarker m_frameMarker;
60 std::map<int, Trace::Frame*> m_frameCache;
61 std::queue<Trace::Frame*> m_loadedFrames;
63 typedef std::map<int, FrameOffset> FrameOffsets;
64 FrameOffsets m_frameOffsets;
71 #endif // TRACE_LOADER_HPP