1 // Copyright Maciej Sobczak 2008-2019.
2 // This file is part of YAMI4.
3 //
4 // YAMI4 is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // YAMI4 is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with YAMI4.  If not, see <http://www.gnu.org/licenses/>.
16 
17 #include "delay.h"
18 #include <time.h>
19 
20 using namespace yami;
21 using namespace details;
22 
delay(unsigned long long pause)23 void details::delay(unsigned long long pause)
24 {
25     struct timespec tm;
26     tm.tv_sec = pause / 1000;
27     tm.tv_nsec = (pause % 1000) * 1000000;
28 
29     (void)nanosleep(&tm, NULL);
30 }
31