35 Clock(
const std::string& msg_ = std::string())
36 : startTime(std::chrono::system_clock::now()),
43 startTime = std::chrono::system_clock::now();
49 endTime = std::chrono::system_clock::now();
52 std::string message()
const {
58 std::cout << *
this << std::endl;
61 friend std::ostream& operator<<(std::ostream& stream,
const Clock& clock) {
62 if (!clock.msg.empty())
63 stream << clock.msg <<
": ";
65 stream << clock.num_seconds() <<
"s\n";
72 double num_seconds()
const {
74 auto end = std::chrono::system_clock::now();
75 return std::chrono::duration_cast<std::chrono::milliseconds>(end-startTime).count() / 1000.;
77 return std::chrono::duration_cast<std::chrono::milliseconds>(endTime-startTime).count() / 1000.;
82 mutable std::chrono::time_point<std::chrono::system_clock> startTime, endTime;
83 mutable bool end_called;
Definition: SimplicialComplexForAlpha.h:26