Code Review
/
apps
/
agl-service-can-low-level.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Static code review fixes.
[apps/agl-service-can-low-level.git]
/
CAN-binder
/
low-can-binding
/
utils
/
timer.cpp
diff --git
a/CAN-binder/low-can-binding/utils/timer.cpp
b/CAN-binder/low-can-binding/utils/timer.cpp
index
8c6215b
..
4584b85
100644
(file)
--- a/
CAN-binder/low-can-binding/utils/timer.cpp
+++ b/
CAN-binder/low-can-binding/utils/timer.cpp
@@
-24,7
+24,7
@@
long long int system_time_us()
{
struct timespec t_usec;
long long int system_time_us()
{
struct timespec t_usec;
- long long int timestamp_usec;
+ long long int timestamp_usec
= 0
;
if(!::clock_gettime(CLOCK_MONOTONIC, &t_usec))
timestamp_usec = (t_usec.tv_nsec / 1000ll) + (t_usec.tv_sec* 1000000ll);
if(!::clock_gettime(CLOCK_MONOTONIC, &t_usec))
timestamp_usec = (t_usec.tv_nsec / 1000ll) + (t_usec.tv_sec* 1000000ll);
@@
-34,7
+34,7
@@
long long int system_time_us()
long long int system_time_ms()
{
struct timespec t_msec;
long long int system_time_ms()
{
struct timespec t_msec;
- long long int timestamp_msec;
+ long long int timestamp_msec
= 0
;
if(!::clock_gettime(CLOCK_MONOTONIC, &t_msec))
timestamp_msec = (t_msec.tv_nsec / 1000000ll) + (t_msec.tv_sec* 1000ll);
if(!::clock_gettime(CLOCK_MONOTONIC, &t_msec))
timestamp_msec = (t_msec.tv_nsec / 1000000ll) + (t_msec.tv_sec* 1000ll);
@@
-44,7
+44,7
@@
long long int system_time_ms()
long long int system_time_s()
{
struct timespec t_sec;
long long int system_time_s()
{
struct timespec t_sec;
- long long int timestamp_sec;
+ long long int timestamp_sec
= 0
;
if(!::clock_gettime(CLOCK_MONOTONIC, &t_sec))
timestamp_sec = t_sec.tv_sec;
if(!::clock_gettime(CLOCK_MONOTONIC, &t_sec))
timestamp_sec = t_sec.tv_sec;
@@
-57,20
+57,29
@@
frequency_clock_t::frequency_clock_t()
frequency_clock_t::frequency_clock_t(float frequency)
: unit_{1000000}, frequency_{frequency}, last_tick_{0}, time_function_{nullptr}
frequency_clock_t::frequency_clock_t(float frequency)
: unit_{1000000}, frequency_{frequency}, last_tick_{0}, time_function_{nullptr}
-{}
+{
+ if(frequency_ <= 0)
+ frequency_ = 1;
+}
+frequency_clock_t::frequency_clock_t(float frequency, uint64_t last_tick, time_function_t time_function)
+ : unit_{1000000}, frequency_{frequency}, last_tick_{0}, time_function_{nullptr}
+{
+ if(frequency_ <= 0)
+ frequency_ = 1;
+}
/// @brief Return the period in ms given the frequency in hertz.
/// @param[in] frequency - Frequency to convert, in hertz
/// @brief Return the period in ms given the frequency in hertz.
/// @param[in] frequency - Frequency to convert, in hertz
-float frequency_clock_t::frequency_to_period()
+float frequency_clock_t::frequency_to_period()
const
{
{
- return frequency_ == 0 ? 0 : 1 / frequency_
* unit_
;
+ return frequency_ == 0 ? 0 : 1 / frequency_;
}
const struct timeval frequency_clock_t::get_timeval_from_period() const
{
struct timeval freq = {0, 0};
float f;
}
const struct timeval frequency_clock_t::get_timeval_from_period() const
{
struct timeval freq = {0, 0};
float f;
- freq.tv_usec = (long int)
std::modf(frequency_, &f
);
+ freq.tv_usec = (long int)
(std::modf(frequency_to_period(), &f) * unit_
);
freq.tv_sec = (time_t)f;
return freq;
freq.tv_sec = (time_t)f;
return freq;
@@
-94,7
+103,7
@@
bool frequency_clock_t::elapsed(bool stagger)
last_tick_ = get_time_function()() - (rand() % int(period));
// Make sure it ticks the the first call
last_tick_ = get_time_function()() - (rand() % int(period));
// Make sure it ticks the the first call
- elapsed_time = !started() ? period :
get_time_function()() -
last_tick_;
+ elapsed_time = !started() ? period :
(float)get_time_function()() - (float)
last_tick_;
return frequency_ == 0 || elapsed_time >= period;
}
return frequency_ == 0 || elapsed_time >= period;
}
@@
-106,7
+115,7
@@
float frequency_clock_t::get_frequency() const
/// @brief Force the clock to tick, regardless of it its time has actually
/// elapsed.
/// @brief Force the clock to tick, regardless of it its time has actually
/// elapsed.
-void frequency_clock_t::tick()
+void frequency_clock_t::tick(
uint64_t timestamp
)
{
{
- last_tick_ =
get_time_function()()
;
+ last_tick_ =
timestamp
;
}
\ No newline at end of file
}
\ No newline at end of file