consistency
This commit is contained in:
@ -26,7 +26,7 @@ Model::Model()
|
|||||||
g_draw = &m_draw;
|
g_draw = &m_draw;
|
||||||
g_camera = &m_camera;
|
g_camera = &m_camera;
|
||||||
g_profiler = &m_profiler;
|
g_profiler = &m_profiler;
|
||||||
g_profilerRecorder = &m_profilerListener.m_recorderProfiler;
|
g_profilerRecorder = &m_profilerListener.m_recorderListener;
|
||||||
g_profilerListener = &m_profilerListener;
|
g_profilerListener = &m_profilerListener;
|
||||||
|
|
||||||
m_test = nullptr;
|
m_test = nullptr;
|
||||||
|
@ -81,8 +81,6 @@ void Profiler::End()
|
|||||||
listener->BeginEvent(e.name, e.t0);
|
listener->BeginEvent(e.name, e.t0);
|
||||||
|
|
||||||
listener->EndEvent(e.name, e.t1);
|
listener->EndEvent(e.name, e.t1);
|
||||||
|
|
||||||
listener->Duration(e.name, e.t1 - e.t0);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,14 +92,6 @@ public:
|
|||||||
B3_NOT_USED(name);
|
B3_NOT_USED(name);
|
||||||
B3_NOT_USED(time);
|
B3_NOT_USED(time);
|
||||||
}
|
}
|
||||||
|
|
||||||
// This function is called when a profiler event ends.
|
|
||||||
// However it supplies the duration of the last begin and end events.
|
|
||||||
virtual void Duration(const char* name, float64 duration)
|
|
||||||
{
|
|
||||||
B3_NOT_USED(name);
|
|
||||||
B3_NOT_USED(duration);
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern ProfilerListener* g_profilerListener;
|
extern ProfilerListener* g_profilerListener;
|
||||||
|
@ -61,27 +61,35 @@ ProfilerRecord* RecorderProfiler::FindRecord(const char* name)
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RecorderProfiler::Add(const char* name, float64 elapsedTime)
|
void RecorderProfiler::BeginEvent(const char* name, float64 time)
|
||||||
{
|
{
|
||||||
B3_ASSERT(elapsedTime >= 0.0);
|
|
||||||
|
|
||||||
++m_call;
|
++m_call;
|
||||||
|
|
||||||
ProfilerRecord* fr = FindRecord(name);
|
ProfilerRecord* fr = FindRecord(name);
|
||||||
if (fr)
|
if (fr)
|
||||||
{
|
{
|
||||||
fr->elapsed += elapsedTime;
|
fr->time = time;
|
||||||
fr->maxElapsed = b3Max(fr->maxElapsed, elapsedTime);
|
|
||||||
fr->call = m_call;
|
fr->call = m_call;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
ProfilerRecord r;
|
ProfilerRecord r;
|
||||||
r.name = name;
|
r.name = name;
|
||||||
r.elapsed = elapsedTime;
|
r.time = time;
|
||||||
r.maxElapsed = elapsedTime;
|
r.elapsed = 0.0;
|
||||||
|
r.maxElapsed = 0.0;
|
||||||
r.call = m_call;
|
r.call = m_call;
|
||||||
|
|
||||||
m_records.PushBack(r);
|
m_records.PushBack(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RecorderProfiler::EndEvent(const char* name, float64 time)
|
||||||
|
{
|
||||||
|
ProfilerRecord* fr = FindRecord(name);
|
||||||
|
B3_ASSERT(fr != nullptr);
|
||||||
|
|
||||||
|
float64 elapsedTime = time - fr->time;
|
||||||
|
|
||||||
|
fr->elapsed += elapsedTime;
|
||||||
|
fr->maxElapsed = b3Max(fr->maxElapsed, elapsedTime);
|
||||||
|
}
|
@ -26,6 +26,7 @@
|
|||||||
struct ProfilerRecord
|
struct ProfilerRecord
|
||||||
{
|
{
|
||||||
const char* name;
|
const char* name;
|
||||||
|
float64 time;
|
||||||
float64 elapsed;
|
float64 elapsed;
|
||||||
float64 maxElapsed;
|
float64 maxElapsed;
|
||||||
u32 call;
|
u32 call;
|
||||||
@ -41,7 +42,9 @@ public:
|
|||||||
|
|
||||||
void EndEvents();
|
void EndEvents();
|
||||||
|
|
||||||
void Add(const char* name, float64 elapsedTime);
|
void BeginEvent(const char* name, float64 time);
|
||||||
|
|
||||||
|
void EndEvent(const char* name, float64 time);
|
||||||
|
|
||||||
ProfilerRecord* FindRecord(const char* name);
|
ProfilerRecord* FindRecord(const char* name);
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ class TestbedListener : public ProfilerListener
|
|||||||
public:
|
public:
|
||||||
void BeginEvents() override
|
void BeginEvents() override
|
||||||
{
|
{
|
||||||
m_recorderProfiler.BeginEvents();
|
m_recorderListener.BeginEvents();
|
||||||
|
|
||||||
#if (PROFILE_JSON == 1)
|
#if (PROFILE_JSON == 1)
|
||||||
m_jsonListener.BeginEvents();
|
m_jsonListener.BeginEvents();
|
||||||
@ -46,7 +46,7 @@ public:
|
|||||||
|
|
||||||
void EndEvents() override
|
void EndEvents() override
|
||||||
{
|
{
|
||||||
m_recorderProfiler.EndEvents();
|
m_recorderListener.EndEvents();
|
||||||
|
|
||||||
#if (PROFILE_JSON == 1)
|
#if (PROFILE_JSON == 1)
|
||||||
m_jsonListener.EndEvents();
|
m_jsonListener.EndEvents();
|
||||||
@ -56,6 +56,8 @@ public:
|
|||||||
|
|
||||||
void BeginEvent(const char* name, float64 time) override
|
void BeginEvent(const char* name, float64 time) override
|
||||||
{
|
{
|
||||||
|
m_recorderListener.BeginEvent(name, time);
|
||||||
|
|
||||||
#if (PROFILE_JSON == 1)
|
#if (PROFILE_JSON == 1)
|
||||||
m_jsonListener.BeginEvent(name, time);
|
m_jsonListener.BeginEvent(name, time);
|
||||||
#endif
|
#endif
|
||||||
@ -63,18 +65,14 @@ public:
|
|||||||
|
|
||||||
void EndEvent(const char* name, float64 time) override
|
void EndEvent(const char* name, float64 time) override
|
||||||
{
|
{
|
||||||
|
m_recorderListener.EndEvent(name, time);
|
||||||
|
|
||||||
#if (PROFILE_JSON == 1)
|
#if (PROFILE_JSON == 1)
|
||||||
m_jsonListener.EndEvent(name, time);
|
m_jsonListener.EndEvent(name, time);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Duration(const char* name, float64 duration) override
|
RecorderProfiler m_recorderListener;
|
||||||
{
|
|
||||||
m_recorderProfiler.Add(name, duration);
|
|
||||||
}
|
|
||||||
|
|
||||||
RecorderProfiler m_recorderProfiler;
|
|
||||||
|
|
||||||
#if (PROFILE_JSON == 1)
|
#if (PROFILE_JSON == 1)
|
||||||
JsonProfiler m_jsonListener;
|
JsonProfiler m_jsonListener;
|
||||||
|
Reference in New Issue
Block a user