Goby3 3.2.3
2025.05.13
Loading...
Searching...
No Matches
io.h
Go to the documentation of this file.
1// Copyright 2009-2021:
2// GobySoft, LLC (2013-)
3// Massachusetts Institute of Technology (2007-2014)
4// Community contributors (see AUTHORS file)
5// File authors:
6// Toby Schneider <toby@gobysoft.org>
7//
8//
9// This file is part of the Goby Underwater Autonomy Project Libraries
10// ("The Goby Libraries").
11//
12// The Goby Libraries are free software: you can redistribute them and/or modify
13// them under the terms of the GNU Lesser General Public License as published by
14// the Free Software Foundation, either version 2.1 of the License, or
15// (at your option) any later version.
16//
17// The Goby Libraries are distributed in the hope that they will be useful,
18// but WITHOUT ANY WARRANTY; without even the implied warranty of
19// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20// GNU Lesser General Public License for more details.
21//
22// You should have received a copy of the GNU Lesser General Public License
23// along with Goby. If not, see <http://www.gnu.org/licenses/>.
24
25#ifndef GOBY_TIME_IO_H
26#define GOBY_TIME_IO_H
27
28#include "goby/time/convert.h"
31
32namespace goby
33{
34namespace time
35{
36inline std::ostream& operator<<(std::ostream& out, const goby::time::SystemClock::time_point& time)
37{
38 return (out << goby::time::convert<boost::posix_time::ptime>(time));
39}
40inline std::ostream& operator<<(std::ostream& out, const goby::time::SteadyClock::time_point& time)
41{
42 return (out << std::chrono::duration_cast<std::chrono::microseconds>(time.time_since_epoch())
43 .count()
44 << " us");
45}
46
47inline std::ostream& operator<<(std::ostream& out,
49{
50 return (out << std::chrono::duration_cast<std::chrono::microseconds>(duration).count()
51 << " us");
52}
53
54} // namespace time
55} // namespace goby
56
57using goby::time::operator<<;
58
59#endif
unit< time_dimension, si::system > time
Definition time.hpp:22
The global namespace for the Goby project.
std::chrono::time_point< SteadyClock > time_point
std::chrono::time_point< SystemClock > time_point
std::chrono::microseconds duration
Duration type.