1 // Copyright 2017 The Dawn Authors
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #include "common/Platform.h"
16 
17 #if defined(DAWN_PLATFORM_WINDOWS)
18 #    include <Windows.h>
19 #elif defined(DAWN_PLATFORM_POSIX)
20 #    include <unistd.h>
21 #else
22 #    error "Unsupported platform."
23 #endif
24 
25 namespace utils {
26 
27 #if defined(DAWN_PLATFORM_WINDOWS)
USleep(unsigned int usecs)28     void USleep(unsigned int usecs) {
29         Sleep(static_cast<DWORD>(usecs / 1000));
30     }
31 #elif defined(DAWN_PLATFORM_POSIX)
32     void USleep(unsigned int usecs) {
33         usleep(usecs);
34     }
35 #else
36 #    error "Implement USleep for your platform."
37 #endif
38 
39 }  // namespace utils
40