| // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #include "quiche/quic/core/quic_clock.h" | |
| #include <limits> | |
| #include "quiche/quic/platform/api/quic_logging.h" | |
| namespace quic { | |
| QuicTime QuicClock::ConvertWallTimeToQuicTime( | |
| const QuicWallTime& walltime) const { | |
| // .......................... | |
| // | | | | |
| // unix epoch |walltime| WallNow() | |
| // .......................... | |
| // | | | | |
| // clock epoch | Now() | |
| // result | |
| // | |
| // result = Now() - (WallNow() - walltime) | |
| return Now() - QuicTime::Delta::FromMicroseconds( | |
| WallNow() | |
| .Subtract(QuicTime::Delta::FromMicroseconds( | |
| walltime.ToUNIXMicroseconds())) | |
| .ToUNIXMicroseconds()); | |
| } | |
| } // namespace quic |