summaryrefslogtreecommitdiff
path: root/graphics/asymptote/seconds.h
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-08-07 03:02:55 +0000
committerNorbert Preining <norbert@preining.info>2020-08-07 03:02:55 +0000
commit3710c23789342d9d88783cbe9ad23eb5263a7c33 (patch)
tree1c40b2bfb9f6b652f7877ad0991f5d6b44391154 /graphics/asymptote/seconds.h
parentd99fea72e367e8d4d2809b43b3b0206b1bb526b8 (diff)
CTAN sync 202008070302
Diffstat (limited to 'graphics/asymptote/seconds.h')
-rw-r--r--graphics/asymptote/seconds.h70
1 files changed, 35 insertions, 35 deletions
diff --git a/graphics/asymptote/seconds.h b/graphics/asymptote/seconds.h
index 37f8e32cdc..0b92e902e2 100644
--- a/graphics/asymptote/seconds.h
+++ b/graphics/asymptote/seconds.h
@@ -9,65 +9,65 @@
#include <iostream>
#if defined(_MSC_VER) || defined(_MSC_EXTENSIONS)
- #define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64
+#define DELTA_EPOCH_IN_MICROSECS 11644473600000000Ui64
#else
- #define DELTA_EPOCH_IN_MICROSECS 11644473600000000ULL
+#define DELTA_EPOCH_IN_MICROSECS 11644473600000000ULL
#endif
-
+
struct timezone
{
int tz_minuteswest; /* minutes W of Greenwich */
int tz_dsttime; /* type of dst correction */
};
-
+
// Definition of a gettimeofday function
-
+
inline int gettimeofday(struct timeval *tv, struct timezone *tz)
{
// Define a structure to receive the current Windows filetime
FILETIME ft;
-
+
// Initialize the present time to 0 and the timezone to UTC
unsigned __int64 tmpres = 0;
static int tzflag = 0;
-
+
if (NULL != tv)
- {
- GetSystemTimeAsFileTime(&ft);
-
-// The GetSystemTimeAsFileTime returns the number of 100 nanosecond
-// intervals since Jan 1, 1601 in a structure. Copy the high bits to
+ {
+ GetSystemTimeAsFileTime(&ft);
+
+// The GetSystemTimeAsFileTime returns the number of 100 nanosecond
+// intervals since Jan 1, 1601 in a structure. Copy the high bits to
// the 64 bit tmpres, shift it left by 32 then or in the low 32 bits.
- tmpres |= ft.dwHighDateTime;
- tmpres <<= 32;
- tmpres |= ft.dwLowDateTime;
-
+ tmpres |= ft.dwHighDateTime;
+ tmpres <<= 32;
+ tmpres |= ft.dwLowDateTime;
+
// Convert to microseconds by dividing by 10
- tmpres /= 10;
-
-// The Unix epoch starts on Jan 1 1970. Need to subtract the difference
+ tmpres /= 10;
+
+// The Unix epoch starts on Jan 1 1970. Need to subtract the difference
// in seconds from Jan 1 1601.
- tmpres -= DELTA_EPOCH_IN_MICROSECS;
-
-// Finally change microseconds to seconds and place in the seconds value.
+ tmpres -= DELTA_EPOCH_IN_MICROSECS;
+
+// Finally change microseconds to seconds and place in the seconds value.
// The modulus picks up the microseconds.
- tv->tv_sec = (long)(tmpres / 1000000UL);
- tv->tv_usec = (long)(tmpres % 1000000UL);
- }
-
+ tv->tv_sec = (long)(tmpres / 1000000UL);
+ tv->tv_usec = (long)(tmpres % 1000000UL);
+ }
+
if (NULL != tz)
- {
- if (!tzflag)
{
- _tzset();
- tzflag++;
- }
-
+ if (!tzflag)
+ {
+ _tzset();
+ tzflag++;
+ }
+
// Adjust for the timezone west of Greenwich
tz->tz_minuteswest = _timezone / 60;
- tz->tz_dsttime = _daylight;
- }
-
+ tz->tz_dsttime = _daylight;
+ }
+
return 0;
}