24 namespace benchmarks {
59 std::cout <<
"Loop period [ms]: " <<
period_ms << std::endl;
60 std::cout <<
"Average latency [ms]: " <<
avg << std::endl;
61 std::cout <<
"Maximum latency [ms]: " <<
max << std::endl;
98 std::cout << std::endl;
99 std::cout <<
"***********************************************************" << std::endl;
100 std::cout <<
" Snooze Latency" << std::endl;
101 std::cout <<
"***********************************************************" << std::endl;
102 std::cout <<
"* " << std::endl;
103 std::cout <<
"* Latency is the absolute time behind where it should be." << std::endl;
104 std::cout <<
"* This is only a factor for the first snooze loop." << std::endl;
105 std::cout <<
"*" << std::endl;
106 std::cout <<
"* Latency noise is more important. After the first loop," << std::endl;
107 std::cout <<
"* with an ideal noise value of zero, the loop will time" << std::endl;
108 std::cout <<
"* exactly as you specify. Practically, this is not the case," << std::endl;
109 std::cout <<
"* but you should get good results from this without having" << std::endl;
110 std::cout <<
"* to use system timers. Use with loops which need to be" << std::endl;
111 std::cout <<
"* 5ms or over. Faster loops really require a RTOS." << std::endl;
112 std::cout <<
"* " << std::endl;
113 std::cout <<
"*****************************************************************" << std::endl;
114 std::cout << std::endl;
115 std::cout <<
"Looping commencing..." << std::endl;
119 for(
int i = 0; i < 100; ++i ) {
125 std::cout << std::endl;
126 std::cout <<
"***********************************************************" << std::endl;
127 std::cout <<
" Passed" << std::endl;
128 std::cout <<
"***********************************************************" << std::endl;
129 std::cout << std::endl;
TimeStructure time_actual
LogSnooze(const long &ms)