File: util.h

package info (click to toggle)
meshlab 2020.09%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 45,124 kB
  • sloc: cpp: 400,238; ansic: 31,952; javascript: 1,578; sh: 387; yacc: 238; lex: 139; python: 86; makefile: 29
file content (41 lines) | stat: -rwxr-xr-x 852 bytes parent folder | download | duplicates (6)
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
#ifndef MT_UTIL_H
#define MT_UTIL_H

#if (defined(_MSC_VER))
#include <windows.h>
#elif (defined(__MINGW32__))
#include <windows.h>
#elif (defined(__linux__))
#include <unistd.h>
#else
#include <unistd.h>
//#error "mt utils.h : unrecognized environment."
#endif

namespace mt
{

inline void sleep_ms(unsigned int msecs)
{
#if (defined(_MSC_VER))
	Sleep(DWORD(msecs));
#elif (defined(__MINGW32__))
	Sleep(DWORD(msecs));
#elif (defined(__linux__))
	const unsigned int  secs  = ((unsigned int)(msecs / 1000));
	const unsigned long usecs = ((unsigned long)((msecs % 1000) * 1000));

	sleep(secs);
	usleep(usecs);
#else
	const unsigned int  secs  = ((unsigned int)(msecs / 1000));
	const unsigned long usecs = ((unsigned long)((msecs % 1000) * 1000));

	sleep(secs);
	usleep(usecs);
#endif
}

}

#endif // MT_UTIL_H