#include #include #include "clemtime.h" double time1, time2, time3, total_time; void total_callback(double time) { total_time += time; } void callback1(double time) { time1 += time; } void callback2(double time) { time2 += time; } void callback3(double time) { time3 += time; } void wait_a_bit(double wait_until) { int i = 0; double oldtime1 = 0; double oldtime2 = 0; double oldtime3 = 0; while(i < 1000000 && total_time < wait_until){ if(oldtime1 != time1 || oldtime2 != time2 || oldtime3 != time3){ oldtime1 = time1; oldtime2 = time2; oldtime3 = time3; printf("time1 = %g, time2 = %g, time3 = %g\n", time1, time2, time3); } i++; } } main() { ClemTimer timer; printf("timer.read_tick_interval() = %g\n\n", timer.read_tick_interval()); total_time = 0; time1 = 0; time2 = 0; time3 = 0; printf("adding total_callback.\n"); timer.add_callback(&total_callback, 1, 0); printf("adding callback1.\n"); timer.add_callback(&callback1, 10, 1); wait_a_bit(.2); printf("adding callback2.\n"); timer.add_callback(&callback2, 7, 2); wait_a_bit(.4); printf("adding callback3.\n"); timer.add_callback(&callback3, 13, 0); wait_a_bit(.6); printf("deleting callback1.\n"); timer.delete_callback(&callback1, 10); wait_a_bit(.8); printf("deleting callback3.\n"); timer.delete_callback(&callback3, 13); wait_a_bit(1.0); printf("deleting callback2.\n"); timer.delete_callback(&callback2, 7); timer.close(); }