git.ucc.asn.au
/
ipdf
/
code.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
David's final changes: more profiler features, fixes.
[ipdf/code.git]
/
src
/
profiler.cpp
diff --git
a/src/profiler.cpp
b/src/profiler.cpp
index
f718637
..
13595af
100644
(file)
--- a/
src/profiler.cpp
+++ b/
src/profiler.cpp
@@
-15,6
+15,14
@@
void Profiler::BeginZone(std::string name)
m_zone_stack.push(name);
}
m_zone_stack.push(name);
}
+void Profiler::AddCounter(std::string name, uint64_t amt)
+{
+ if (!m_counters.count(name))
+ m_counters[name] = amt;
+ else
+ m_counters[name] += amt;
+}
+
void Profiler::EndZone()
{
std::string name = m_zone_stack.top();
void Profiler::EndZone()
{
std::string name = m_zone_stack.top();
@@
-38,4
+46,13
@@
void Profiler::EndFrame()
it.second.tics_frame = 0;
it.second.calls_frame = 0;
}
it.second.tics_frame = 0;
it.second.calls_frame = 0;
}
+
+ for (auto& it : m_counters)
+ {
+ if (m_enabled)
+ {
+ printf("perf_counter\t\"%s\"\t%lu\n", it.first.c_str(), it.second);
+ }
+ it.second = 0;
+ }
}
}
UCC
git Repository :: git.ucc.asn.au