1 #ifndef LIBR2C2_CLOCK_H_
2 #define LIBR2C2_CLOCK_H_
4 #include <sigc++/signal.h>
5 #include <msp/datafile/objectloader.h>
6 #include <msp/time/timedelta.h>
13 class Loader: public Msp::DataFile::ObjectLoader<Clock>
19 void time(Msp::Time::RawTime);
22 sigc::signal<void> signal_minute;
23 sigc::signal<void> signal_discontinuity;
26 Msp::Time::TimeDelta current_time;
34 float get_rate() const { return rate; }
35 void set_current_time(const Msp::Time::TimeDelta &);
36 const Msp::Time::TimeDelta &get_current_time() const { return current_time; }
38 bool is_stopped() const { return stopped; }
39 void tick(const Msp::Time::TimeDelta &);
40 void save(std::list<Msp::DataFile::Statement> &) const;