| // Copyright 2020 The Pigweed Authors |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); you may not |
| // use this file except in compliance with the License. You may obtain a copy of |
| // the License at |
| // |
| // https://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| // License for the specific language governing permissions and limitations under |
| // the License. |
| |
| // These tests call the pw_chrono module system_clock API from C. The return |
| // values are checked in the main C++ tests. |
| |
| #include "pw_chrono/system_clock.h" |
| |
| pw_chrono_SystemClock_TimePoint pw_chrono_SystemClock_CallNow(void) { |
| return pw_chrono_SystemClock_Now(); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_CallTimeElapsed( |
| pw_chrono_SystemClock_TimePoint last_time, |
| pw_chrono_SystemClock_TimePoint current_time) { |
| return pw_chrono_SystemClock_TimeElapsed(last_time, current_time); |
| } |
| |
| pw_chrono_SystemClock_Nanoseconds pw_chrono_SystemClock_CallDurationToNsFloor( |
| pw_chrono_SystemClock_Duration ticks) { |
| return pw_chrono_SystemClock_DurationToNsFloor(ticks); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_100ms(void) { |
| return PW_SYSTEM_CLOCK_MS(100); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_10s(void) { |
| return PW_SYSTEM_CLOCK_S(10); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_1min(void) { |
| return PW_SYSTEM_CLOCK_MIN(1); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_2h(void) { |
| return PW_SYSTEM_CLOCK_H(2); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_100msCeil(void) { |
| return PW_SYSTEM_CLOCK_MS_CEIL(100); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_10sCeil(void) { |
| return PW_SYSTEM_CLOCK_S_CEIL(10); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_1minCeil(void) { |
| return PW_SYSTEM_CLOCK_MIN_CEIL(1); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_2hCeil(void) { |
| return PW_SYSTEM_CLOCK_H_CEIL(2); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_100msFloor(void) { |
| return PW_SYSTEM_CLOCK_MS_FLOOR(100); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_10sFloor(void) { |
| return PW_SYSTEM_CLOCK_S_FLOOR(10); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_1minFloor(void) { |
| return PW_SYSTEM_CLOCK_MIN_FLOOR(1); |
| } |
| |
| pw_chrono_SystemClock_Duration pw_chrono_SystemClock_Macros_2hFloor(void) { |
| return PW_SYSTEM_CLOCK_H_FLOOR(2); |
| } |