mirror of
https://github.com/Xahau/xahaud.git
synced 2025-12-06 17:27:52 +00:00
38 lines
712 B
C++
38 lines
712 B
C++
|
|
LoadEvent::LoadEvent (LoadMonitor& monitor, const std::string& name, bool shouldStart)
|
|
: mMonitor (monitor)
|
|
, mRunning (false)
|
|
, mName (name)
|
|
{
|
|
mStartTime = boost::posix_time::microsec_clock::universal_time();
|
|
|
|
if (shouldStart)
|
|
start();
|
|
}
|
|
|
|
LoadEvent::~LoadEvent()
|
|
{
|
|
if (mRunning)
|
|
stop();
|
|
}
|
|
|
|
void LoadEvent::reName(const std::string& name)
|
|
{
|
|
mName = name;
|
|
}
|
|
|
|
void LoadEvent::start()
|
|
{
|
|
mRunning = true;
|
|
mStartTime = boost::posix_time::microsec_clock::universal_time();
|
|
}
|
|
|
|
void LoadEvent::stop()
|
|
{
|
|
assert(mRunning);
|
|
|
|
mRunning = false;
|
|
mMonitor.addCountAndLatency (mName,
|
|
static_cast<int>((boost::posix_time::microsec_clock::universal_time() - mStartTime).total_milliseconds()));
|
|
}
|