X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fclock.cpp;h=93828cb90e5d87f728b4265a3bbed3f48ca03405;hb=9b07b35fd438f077896652258ac26453fc1c15dc;hp=1f467e81ba32369d3640693f24acf7e0b2c4e81c;hpb=f6f08a66299ab4ac2bd3fca29a528bd609a9a672;p=r2c2.git diff --git a/source/libr2c2/clock.cpp b/source/libr2c2/clock.cpp index 1f467e8..93828cb 100644 --- a/source/libr2c2/clock.cpp +++ b/source/libr2c2/clock.cpp @@ -1,5 +1,6 @@ #include "clock.h" +using namespace std; using namespace Msp; namespace R2C2 { @@ -29,4 +30,23 @@ void Clock::tick(const Time::TimeDelta &dt) signal_minute.emit(); } +void Clock::save(list &st) const +{ + st.push_back((DataFile::Statement("rate"), rate)); + st.push_back((DataFile::Statement("time"), current_time.raw())); +} + + +Clock::Loader::Loader(Clock &c): + DataFile::ObjectLoader(c) +{ + add("rate", &Clock::rate); + add("time", &Loader::time); +} + +void Clock::Loader::time(Time::RawTime t) +{ + obj.set_current_time(Time::TimeDelta(t)); +} + } // namespace R2C2