Migrate Clock to third_party/nearby

PiperOrigin-RevId: 516972534
This commit is contained in:
Qin Wang
2023-03-15 17:24:11 -07:00
committed by Copybara-Service
parent 52d41aa671
commit c2d8d44767
4 changed files with 86 additions and 0 deletions
+3
View File
@@ -303,6 +303,7 @@ cc_test(
cc_library(
name = "types",
srcs = [
"clock_impl.cc",
"device_info_impl.cc",
"monitored_runnable.cc",
"pending_job_registry.cc",
@@ -317,6 +318,8 @@ cc_library(
"cancelable.h",
"cancelable_alarm.h",
"cancellable_task.h",
"clock.h",
"clock_impl.h",
"condition_variable.h",
"count_down_latch.h",
"crypto.h",
+30
View File
@@ -0,0 +1,30 @@
// Copyright 2021 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef PLATFORM_PUBLIC_CLOCK_H_
#define PLATFORM_PUBLIC_CLOCK_H_
#include "absl/time/time.h"
namespace nearby {
class Clock {
public:
virtual ~Clock() = default;
virtual absl::Time Now() const = 0;
};
} // namespace nearby
#endif // PLATFORM_PUBLIC_CLOCK_H_
+23
View File
@@ -0,0 +1,23 @@
// Copyright 2021 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "internal/platform/clock_impl.h"
#include "absl/time/clock.h"
namespace nearby {
absl::Time ClockImpl::Now() const { return absl::Now(); }
} // namespace nearby
+30
View File
@@ -0,0 +1,30 @@
// Copyright 2021 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef PLATFORM_PUBLIC_CLOCK_IMPL_H_
#define PLATFORM_PUBLIC_CLOCK_IMPL_H_
#include "absl/time/time.h"
#include "internal/platform/clock.h"
namespace nearby {
class ClockImpl : public Clock {
public:
absl::Time Now() const override;
};
} // namespace nearby
#endif // PLATFORM_PUBLIC_CLOCK_IMPL_H_