blob: 2e49e7767d52477f77816fd33708cd82bdb4d329 [file] [log] [blame]
// Copyright 2018 The Fuchsia 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 <lib/fzl/time.h>
#include <lib/zx/time.h>
#include <zircon/compiler.h>
#include <zircon/syscalls.h>
#include <zircon/types.h>
namespace fzl {
zx::ticks NsToTicks(zx::duration ns) { return zx::ticks(ns_to_ticks(ns.get())); }
zx::duration TicksToNs(zx::ticks ticks) { return zx::duration(ticks_to_ns(ticks.get())); }
} // namespace fzl
zx_ticks_t ns_to_ticks(zx_duration_t ns) {
return static_cast<zx_ticks_t>(static_cast<__uint128_t>(ns) * zx_ticks_per_second() / ZX_SEC(1));
}
zx_duration_t ticks_to_ns(zx_ticks_t ticks) {
return static_cast<zx_duration_t>(static_cast<__uint128_t>(ticks) * ZX_SEC(1) /
zx_ticks_per_second());
}