#include <compat.h>
#include <chrono>
#include <cstdint>
#include <string>
Go to the source code of this file.
|
struct | NodeClock |
| Mockable clock in the context of tests, otherwise the system clock. More...
|
|
|
using | NodeSeconds = std::chrono::time_point< NodeClock, std::chrono::seconds > |
|
using | SteadyClock = std::chrono::steady_clock |
|
using | SteadySeconds = std::chrono::time_point< std::chrono::steady_clock, std::chrono::seconds > |
|
using | SteadyMilliseconds = std::chrono::time_point< std::chrono::steady_clock, std::chrono::milliseconds > |
|
using | SteadyMicroseconds = std::chrono::time_point< std::chrono::steady_clock, std::chrono::microseconds > |
|
using | HoursDouble = std::chrono::duration< double, std::chrono::hours::period > |
|
using | SecondsDouble = std::chrono::duration< double, std::chrono::seconds::period > |
|
◆ HoursDouble
using HoursDouble = std::chrono::duration<double, std::chrono::hours::period> |
◆ NodeSeconds
◆ SecondsDouble
using SecondsDouble = std::chrono::duration<double, std::chrono::seconds::period> |
◆ SteadyClock
◆ SteadyMicroseconds
using SteadyMicroseconds = std::chrono::time_point<std::chrono::steady_clock, std::chrono::microseconds> |
◆ SteadyMilliseconds
using SteadyMilliseconds = std::chrono::time_point<std::chrono::steady_clock, std::chrono::milliseconds> |
◆ SteadySeconds
using SteadySeconds = std::chrono::time_point<std::chrono::steady_clock, std::chrono::seconds> |
◆ ChronoSanityCheck()
bool ChronoSanityCheck |
( |
| ) |
|
Sanity check epoch match normal Unix epoch.
Definition at line 30 of file time.cpp.
◆ count_microseconds()
constexpr int64_t count_microseconds |
( |
std::chrono::microseconds |
t | ) |
|
|
constexpr |
◆ count_milliseconds()
constexpr int64_t count_milliseconds |
( |
std::chrono::milliseconds |
t | ) |
|
|
constexpr |
◆ count_seconds()
constexpr int64_t count_seconds |
( |
std::chrono::seconds |
t | ) |
|
|
constexpr |
◆ CountSecondsDouble()
Helper to count the seconds in any std::chrono::duration type.
Definition at line 72 of file time.h.
◆ FormatISO8601Date()
std::string FormatISO8601Date |
( |
int64_t |
nTime | ) |
|
◆ FormatISO8601DateTime()
std::string FormatISO8601DateTime |
( |
int64_t |
nTime | ) |
|
ISO 8601 formatting is preferred.
Use the FormatISO8601{DateTime,Date} helper functions if possible.
Definition at line 113 of file time.cpp.
◆ GetMockTime()
std::chrono::seconds GetMockTime |
( |
| ) |
|
For testing.
Definition at line 97 of file time.cpp.
◆ GetTime() [1/2]
DEPRECATED Use either ClockType::now() or Now<TimePointType>() if a cast is needed.
ClockType is
- std::chrono::steady_clock for steady time
- std::chrono::system_clock for system time
- NodeClock for mockable system time
Definition at line 109 of file time.cpp.
◆ GetTime() [2/2]
DEPRECATED, see GetTime.
Definition at line 113 of file time.h.
◆ GetTimeMicros()
int64_t GetTimeMicros |
( |
| ) |
|
Returns the system time (not mockable)
Definition at line 105 of file time.cpp.
◆ GetTimeMillis()
int64_t GetTimeMillis |
( |
| ) |
|
Returns the system time (not mockable)
Definition at line 101 of file time.cpp.
◆ MillisToTimeval() [1/2]
struct timeval MillisToTimeval |
( |
int64_t |
nTimeout | ) |
|
Convert milliseconds to a struct timeval for e.g.
select.
Definition at line 158 of file time.cpp.
◆ MillisToTimeval() [2/2]
struct timeval MillisToTimeval |
( |
std::chrono::milliseconds |
ms | ) |
|
Convert milliseconds to a struct timeval for e.g.
select.
Definition at line 165 of file time.cpp.
◆ Now()
Return the current time point cast to the given precision.
Only use this when an exact precision is needed, otherwise use T::clock::now() directly.
Definition at line 109 of file time.h.
◆ ParseISO8601DateTime()
int64_t ParseISO8601DateTime |
( |
const std::string & |
str | ) |
|
◆ SetMockTime() [1/2]
void SetMockTime |
( |
int64_t |
nMockTimeIn | ) |
|
DEPRECATED Use SetMockTime with chrono type.
- Parameters
-
[in] | nMockTimeIn | Time in seconds. |
Definition at line 89 of file time.cpp.
◆ SetMockTime() [2/2]
void SetMockTime |
( |
std::chrono::seconds |
mock_time_in | ) |
|
For testing.
Set e.g. with the setmocktime rpc, or -mocktime argument
Definition at line 94 of file time.cpp.
◆ Ticks()
template<typename Dur1 , typename Dur2 >
constexpr auto Ticks |
( |
Dur2 |
d | ) |
|
|
constexpr |
Helper to count the seconds of a duration/time_point.
All durations/time_points should be using std::chrono and calling this should generally be avoided in code. Though, it is still preferred to an inline t.count() to protect against a reliance on the exact type of t.
This helper is used to convert durations/time_points before passing them over an interface that doesn't support std::chrono (e.g. RPC, debug log, or the GUI)
Definition at line 48 of file time.h.
◆ TicksSinceEpoch()
template<typename Duration , typename Timepoint >
constexpr auto TicksSinceEpoch |
( |
Timepoint |
t | ) |
|
|
constexpr |
◆ UninterruptibleSleep()
void UninterruptibleSleep |
( |
const std::chrono::microseconds & |
n | ) |
|