Bazaar developer reference

cvStopWatch::PerfLog(const char *, double)

Defined in
cvStopWatch.cpp, line 78
Class
cvStopWatch
Hook name
CivHooks::cvStopWatch_PerfLog

Hooks

static bool BeforecvStopWatch_PerfLog(cvStopWatch* self, const char* szName, double dtSeconds);static void AftercvStopWatch_PerfLog(cvStopWatch* self, const char* szName, double dtSeconds);static void ReplacecvStopWatch_PerfLog(void (*original)(cvStopWatch*, const char*, double), cvStopWatch* self, const char* szName, double dtSeconds);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::cvStopWatch_PerfLog::ID, CIV_HOOK_BEFORE, (void*)&BeforecvStopWatch_PerfLog);host->RegisterHook(host->pluginIndex, CivHooks::cvStopWatch_PerfLog::ID, CIV_HOOK_AFTER, (void*)&AftercvStopWatch_PerfLog);host->RegisterHook(host->pluginIndex, CivHooks::cvStopWatch_PerfLog::ID, CIV_HOOK_REPLACE, (void*)&ReplacecvStopWatch_PerfLog);

Code

78void cvStopWatch::PerfLog(const char* szName, double dtSeconds)79{80	if (!m_bDisable)81	{82		const char* szLogFile = (m_szLogFile == NULL)? "stopwatch.log" : m_szLogFile;83		if (m_bShowNesting)84		{85			if (m_nesting == 0)86				LOGFILEMGR.GetLog(szLogFile, m_logFlags)->Msg(", %d, %s, %f", m_nesting, szName, dtSeconds);87			else88			{89				const int MAX_NESTING = 20;90				static const char ms_nestingOffset[] = ",,,,,,,,,,,,,,,,,,,,";91				LOGFILEMGR.GetLog(szLogFile, m_logFlags)->Msg(", %d, %s,%s %f", m_nesting, szName, ((m_nesting < MAX_NESTING)?(&ms_nestingOffset[MAX_NESTING - m_nesting]):(&ms_nestingOffset[0])), dtSeconds);92			}93		}94		else95			LOGFILEMGR.GetLog(szLogFile, m_logFlags)->Msg(", %s, %f", szName, dtSeconds);96	}97}

Calls

Called by