summaryrefslogtreecommitdiff
path: root/lib/common/BoxTimeToUnix.h
blob: f8a8797ef306bc26b2436e9fc3085a09792becdb (plain)
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
// --------------------------------------------------------------------------
//
// File
//		Name:    BoxTimeToUnix.h
//		Purpose: Convert times in 64 bit values to UNIX structures
//		Created: 2003/10/07
//
// --------------------------------------------------------------------------

#ifndef FILEMODIFICATIONTIMETOTIMEVAL__H
#define FILEMODIFICATIONTIMETOTIMEVAL__H

#ifdef WIN32
#include <time.h>
#else
#include <sys/time.h>
#endif

#include "BoxTime.h"

inline void BoxTimeToTimeval(box_time_t Time, struct timeval &tv)
{
	tv.tv_sec = (long)(Time / MICRO_SEC_IN_SEC_LL);
	tv.tv_usec = (long)(Time % MICRO_SEC_IN_SEC_LL);
}

inline void BoxTimeToTimespec(box_time_t Time, struct timespec &tv)
{
	tv.tv_sec = (time_t)(Time / MICRO_SEC_IN_SEC_LL);
	tv.tv_nsec = ((long)(Time % MICRO_SEC_IN_SEC_LL)) * NANO_SEC_IN_USEC;
}

#endif // FILEMODIFICATIONTIMETOTIMEVAL__H