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.h
diff --git
a/src/profiler.h
b/src/profiler.h
index
a20b8d8
..
ffffae9
100644
(file)
--- a/
src/profiler.h
+++ b/
src/profiler.h
@@
-1,6
+1,7
@@
#ifndef _PROFILER_H
#define _PROFILER_H
#ifndef _PROFILER_H
#define _PROFILER_H
+#include <stdint.h>
#include <map>
#include <string>
#include <stack>
#include <map>
#include <string>
#include <stack>
@@
-12,12
+13,16
@@
namespace IPDF
class Profiler
{
public:
class Profiler
{
public:
- Profiler() {}
+ Profiler()
: m_enabled(false)
{}
void BeginZone(std::string name);
void EndZone();
void EndFrame();
void BeginZone(std::string name);
void EndZone();
void EndFrame();
+
+ void Enable(bool enabled) { m_enabled = enabled; }
+
+ void AddCounter(std::string name, uint64_t amt);
private:
struct ProfileZone
{
private:
struct ProfileZone
{
@@
-30,7
+35,9
@@
namespace IPDF
};
std::map<std::string, ProfileZone> m_zones;
};
std::map<std::string, ProfileZone> m_zones;
+ std::map<std::string, uint64_t> m_counters;
std::stack<std::string> m_zone_stack;
std::stack<std::string> m_zone_stack;
+ bool m_enabled;
};
extern Profiler g_profiler;
};
extern Profiler g_profiler;
UCC
git Repository :: git.ucc.asn.au