X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=common%2Ftrace_loader.cpp;h=e091dce38688f1395fba51d0a67c86a96426c49c;hb=23354536051650b7a8a713e824946d48a7734534;hp=c14d815382b4680b5b13eac008df33c828e6d8a7;hpb=ae2b4d32ed56e3ac193cc7205aeb58082c448ce8;p=apitrace diff --git a/common/trace_loader.cpp b/common/trace_loader.cpp index c14d815..e091dce 100644 --- a/common/trace_loader.cpp +++ b/common/trace_loader.cpp @@ -1,7 +1,7 @@ #include "trace_loader.hpp" -using namespace Trace; +using namespace trace; Loader::Loader() : m_frameMarker(FrameMarker_SwapBuffers) @@ -23,12 +23,12 @@ void Loader::setFrameMarker(Loader::FrameMarker marker) m_frameMarker = marker; } -int Loader::numberOfFrames() const +unsigned Loader::numberOfFrames() const { return m_frameBookmarks.size(); } -int Loader::numberOfCallsInFrame(int frameIdx) const +unsigned Loader::numberOfCallsInFrame(unsigned frameIdx) const { if (frameIdx > m_frameBookmarks.size()) { return 0; @@ -50,10 +50,10 @@ bool Loader::open(const char *filename) return false; } - Trace::Call *call; + trace::Call *call; ParseBookmark startBookmark; - int numOfFrames = 0; - int numOfCalls = 0; + unsigned numOfFrames = 0; + unsigned numOfCalls = 0; int lastPercentReport = 0; m_parser.getBookmark(startBookmark); @@ -89,15 +89,13 @@ void Loader::close() m_parser.close(); } -bool Loader::isCallAFrameMarker(const Trace::Call *call) const +bool Loader::isCallAFrameMarker(const trace::Call *call) const { std::string name = call->name(); switch (m_frameMarker) { case FrameMarker_SwapBuffers: - return name.find("SwapBuffers") != std::string::npos || - name == "CGLFlushDrawable" || - name == "glFrameTerminatorGREMEDY"; + return call->flags & trace::CALL_FLAG_END_FRAME; break; case FrameMarker_Flush: return name == "glFlush"; @@ -112,16 +110,16 @@ bool Loader::isCallAFrameMarker(const Trace::Call *call) const return false; } -std::vector Loader::frame(int idx) +std::vector Loader::frame(unsigned idx) { - int numOfCalls = numberOfCallsInFrame(idx); + unsigned numOfCalls = numberOfCallsInFrame(idx); if (numOfCalls) { const FrameBookmark &frameBookmark = m_frameBookmarks[idx]; - std::vector calls(numOfCalls); + std::vector calls(numOfCalls); m_parser.setBookmark(frameBookmark.start); - Trace::Call *call; - int parsedCalls = 0; + trace::Call *call; + unsigned parsedCalls = 0; while ((call = m_parser.parse_call())) { calls[parsedCalls] = call; @@ -135,5 +133,5 @@ std::vector Loader::frame(int idx) assert(parsedCalls == numOfCalls); return calls; } - return std::vector(); + return std::vector(); }