This repository has been archived on 2020-09-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
libs/pip/doc/examples/pitimer.cpp
Бычков Андрей ba8bc27298 1
git-svn-id: svn://db.shs.com.ru/libs@1 a8b55f48-bf90-11e4-a774-851b48703e85
2015-02-28 21:28:53 +00:00

69 lines
1.3 KiB
C++

#include "pip.h"
//! [delimiter]
void tfunc(void * , int delim) {
piCout << "tick with delimiter" << delim;
};
void tfunc4(void * , int delim) {
piCout << "tick4 with delimiter" << delim;
};
int main() {
PITimer timer(tfunc);
timer.addDelimiter(2);
timer.addDelimiter(4, tfunc4);
timer.start(50);
piMSleep(200);
timer.stop();
timer.waitForFinish();
return 0;
};
/* Result:
tick with delimiter 1
tick with delimiter 1
tick with delimiter 2
tick with delimiter 1
tick with delimiter 1
tick with delimiter 2
tick4 with delimiter 4
*/
//! [delimiter]
//! [elapsed]
int main() {
PITimer timer;
piMSleep(100);
piCout << "elapsed" << timer.elapsed_m() << "ms";
piMSleep(100);
piCout << "elapsed" << timer.elapsed_m() << "ms";
timer.reset();
piMSleep(150);
piCout << "elapsed" << timer.elapsed_s() << "s";
return 0;
};
/* Result:
elapsed 100 ms
elapsed 200 ms
elapsed 0.15 s
*/
//! [elapsed]
//! [system_time]
int main() {
PISystemTime t0; // s = ns = 0
t0.addMilliseconds(200); // s = 0, ns = 200000000
t0.addMilliseconds(900); // s = 1, ns = 100000000
t0 -= PISystemTime::fromSeconds(0.1); // s = 1, ns = 0
t0.sleep(); // sleep for 1 second
PISystemTime t1;
t0 = currentSystemTime();
piMSleep(500);
t1 = currentSystemTime();
(t1 - t0).sleep(); // sleep for 500 milliseconds
return 0;
};
//! [system_time]
void _() {
};