]> git.tdb.fi Git - r2c2.git/blob - source/libr2c2/clock.cpp
Display the current time in the main window
[r2c2.git] / source / libr2c2 / clock.cpp
1 #include "clock.h"
2
3 using namespace Msp;
4
5 namespace R2C2 {
6
7 Clock::Clock():
8         rate(1)
9 { }
10
11 void Clock::set_rate(float s)
12 {
13         rate = s;
14 }
15
16 void Clock::tick(const Time::TimeDelta &dt)
17 {
18         unsigned prev_minute = current_time/Time::min;
19         current_time += dt*rate;
20         if(current_time>=Time::day)
21                 current_time -= Time::day;
22         unsigned minute = current_time/Time::min;
23         if(minute!=prev_minute)
24                 signal_minute.emit();
25 }
26
27 } // namespace R2C2