19 #ifndef SNARK_TIMING_PLAY_H
20 #define SNARK_TIMING_PLAY_H
22 #include <boost/optional.hpp>
23 #include <boost/date_time/posix_time/posix_time.hpp>
34 play(
double speed = 1.0,
bool quiet =
false,
const boost::posix_time::time_duration& precision = boost::posix_time::milliseconds(1) );
35 play(
const boost::posix_time::ptime& first,
double speed = 1.0,
bool quiet =
false,
const boost::posix_time::time_duration& precision = boost::posix_time::milliseconds(1) );
37 void wait(
const boost::posix_time::ptime& time );
39 void wait(
const std::string& iso_time );
42 boost::posix_time::ptime m_systemFirst;
43 boost::optional< boost::posix_time::time_duration > m_offset;
44 boost::posix_time::ptime m_first;
45 boost::posix_time::ptime m_last;
47 const boost::posix_time::time_duration m_precision;
49 unsigned int m_lagCounter;
56 #endif // SNARK_TIMING_PLAY_H