aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/poco/Foundation/src/Stopwatch.cpp
blob: b793954d76fb07835fa18fc21a9499bd033d2233 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// 
// Stopwatch.cpp 
// 
// Library: Foundation 
// Package: DateTime 
// Module:  Stopwatch 
// 
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. 
// and Contributors. 
// 
// SPDX-License-Identifier:	BSL-1.0 
// 
 
 
#include "Poco/Stopwatch.h" 
 
 
namespace Poco { 
 
 
Stopwatch::Stopwatch(): _elapsed(0), _running(false) 
{ 
} 
 
 
Stopwatch::~Stopwatch() 
{ 
} 
 
 
Clock::ClockDiff Stopwatch::elapsed() const 
{ 
	if (_running) 
	{ 
		Clock current; 
		return _elapsed + (current - _start); 
	} 
	else 
	{ 
		return _elapsed; 
	} 
} 
 
 
void Stopwatch::reset() 
{ 
	_elapsed = 0; 
	_running = false; 
} 
 
 
void Stopwatch::restart() 
{ 
	_elapsed = 0; 
	_start.update(); 
	_running = true; 
} 
 
 
} // namespace Poco