/* * Copyright (c) 2017 Oticon A/S * * SPDX-License-Identifier: Apache-2.0 */ #ifndef NSI_COMMON_SRC_INCL_HW_SCHEDULER_H #define NSI_COMMON_SRC_INCL_HW_SCHEDULER_H #include #ifdef __cplusplus extern "C" { #endif #define NSI_NEVER UINT64_MAX /* API intended for the native simulator specific embedded drivers: */ static inline uint64_t nsi_hws_get_time(void) { extern uint64_t nsi_simu_time; return nsi_simu_time; } /* Internal APIs to the native_simulator and its HW models: */ void nsi_hws_init(void); void nsi_hws_cleanup(void); void nsi_hws_one_event(void); void nsi_hws_set_end_of_time(uint64_t new_end_of_time); void nsi_hws_find_next_event(void); uint64_t nsi_hws_get_next_event_time(void); #ifdef __cplusplus } #endif #endif /* NSI_COMMON_SRC_INCL_HW_SCHEDULER_H */