dpl_cputime.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2020 Inria
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
9 #pragma once
10 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 #include "os/os_cputime.h"
27 
33 static inline uint32_t dpl_cputime_get32(void)
34 {
35  return os_cputime_get32();
36 }
37 
45 static inline uint32_t dpl_cputime_usecs_to_ticks(uint32_t usecs)
46 {
47  return os_cputime_usecs_to_ticks(usecs);
48 }
49 
57 static inline uint32_t dpl_cputime_ticks_to_usecs(uint32_t ticks)
58 {
59  return os_cputime_ticks_to_usecs(ticks);
60 }
61 
67 static inline void dpl_cputime_delay_ticks(uint32_t ticks)
68 {
69  os_cputime_delay_ticks(ticks);
70 }
71 
77 static inline void dpl_cputime_delay_usecs(uint32_t usecs)
78 {
79  os_cputime_delay_usecs(usecs);
80 }
81 
89 static inline void dpl_cputime_timer_init(struct hal_timer *timer, hal_timer_cb fp,
90  void *arg)
91 {
92  os_cputime_timer_init(timer, fp, arg);
93 }
94 
108 static inline int dpl_cputime_timer_start(struct hal_timer *timer, uint32_t cputime)
109 {
110  return os_cputime_timer_start(timer, cputime);
111 }
112 
125 static inline int dpl_cputime_timer_relative(struct hal_timer *timer, uint32_t usecs)
126 {
127  return os_cputime_timer_relative(timer, usecs);
128 }
129 
139 static inline void dpl_cputime_timer_stop(struct hal_timer *timer)
140 {
141  os_cputime_timer_stop(timer);
142 }
143 
144 #ifdef __cplusplus
145 }
146 #endif
static uint32_t dpl_cputime_ticks_to_usecs(uint32_t ticks)
Convert the given number of ticks into microseconds.
Definition: dpl_cputime.h:57
static uint32_t dpl_cputime_get32(void)
Returns the low 32 bits of cputime.
Definition: dpl_cputime.h:33
static void dpl_cputime_delay_usecs(uint32_t usecs)
Wait until 'usecs' microseconds has elapsed.
Definition: dpl_cputime.h:77
static uint32_t dpl_cputime_usecs_to_ticks(uint32_t usecs)
Converts the given number of microseconds into cputime ticks.
Definition: dpl_cputime.h:45
static void dpl_cputime_timer_stop(struct hal_timer *timer)
Stops a cputimer from running.
Definition: dpl_cputime.h:139
static int dpl_cputime_timer_start(struct hal_timer *timer, uint32_t cputime)
Start a cputimer that will expire at 'cputime'.
Definition: dpl_cputime.h:108
static void dpl_cputime_delay_ticks(uint32_t ticks)
Wait until the number of ticks has elapsed.
Definition: dpl_cputime.h:67
static void dpl_cputime_timer_init(struct hal_timer *timer, hal_timer_cb fp, void *arg)
Initialize a CPU timer, using the given HAL timer.
Definition: dpl_cputime.h:89
static int dpl_cputime_timer_relative(struct hal_timer *timer, uint32_t usecs)
Sets a cpu timer that will expire 'usecs' microseconds from the current cputime.
Definition: dpl_cputime.h:125