diff options
author | Jose <jose@zeroc.com> | 2014-09-01 13:54:22 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2014-09-01 13:54:22 +0200 |
commit | 3d615bbebf537bea6ae93fc46abd3af7113fab66 (patch) | |
tree | 4b0d17bc7bc2ad9430b8af719bb057fdb3de9a67 /cpp/src/IceUtil/StopWatch.h | |
parent | New fix for ICE-5637: Glacier2CryptPermissionsVerifier plugin + Glacier2Inter... (diff) | |
download | ice-3d615bbebf537bea6ae93fc46abd3af7113fab66.tar.bz2 ice-3d615bbebf537bea6ae93fc46abd3af7113fab66.tar.xz ice-3d615bbebf537bea6ae93fc46abd3af7113fab66.zip |
Fix (ICE-3445) - consider not installing internal header files
Diffstat (limited to 'cpp/src/IceUtil/StopWatch.h')
-rw-r--r-- | cpp/src/IceUtil/StopWatch.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/cpp/src/IceUtil/StopWatch.h b/cpp/src/IceUtil/StopWatch.h new file mode 100644 index 00000000000..9fe72180e6b --- /dev/null +++ b/cpp/src/IceUtil/StopWatch.h @@ -0,0 +1,54 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +#ifndef ICE_UTIL_STOPWATCH_H +#define ICE_UTIL_STOPWATCH_H + +#include <IceUtil/Time.h> + +namespace IceUtilInternal +{ + +class StopWatch +{ +public: + + StopWatch() { } + + void start() + { + _s = IceUtil::Time::now(IceUtil::Time::Monotonic); + } + + IceUtil::Int64 stop() + { + assert(isStarted()); + IceUtil::Int64 d = (IceUtil::Time::now(IceUtil::Time::Monotonic) - _s).toMicroSeconds(); + _s = IceUtil::Time(); + return d; + } + + bool isStarted() const + { + return _s != IceUtil::Time(); + } + + IceUtil::Int64 delay() + { + return (IceUtil::Time::now(IceUtil::Time::Monotonic) - _s).toMicroSeconds(); + } + +private: + + IceUtil::Time _s; +}; + +} // End namespace IceUtilInternal + +#endif |