1 // Copyright 2018 Espressif Systems (Shanghai) PTE LTD
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 
16 #ifndef _ESP_TIME_H
17 #define _ESP_TIME_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 #include_next <time.h>
23 
24 #define _POSIX_TIMERS 1
25 #ifndef CLOCK_MONOTONIC
26 #define CLOCK_MONOTONIC (clockid_t)4
27 #endif
28 #ifndef CLOCK_BOOTTIME
29 #define CLOCK_BOOTTIME (clockid_t)4
30 #endif
31 
32 int clock_settime(clockid_t clock_id, const struct timespec *tp);
33 int clock_gettime(clockid_t clock_id, struct timespec *tp);
34 int clock_getres(clockid_t clock_id, struct timespec *res);
35 
36 #ifdef __cplusplus
37 }
38 #endif
39 #endif /* _ESP_TIME_H */
40