| // Copyright 2022 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef DEVICE_VR_OPENXR_OPENXR_DEBUG_UTIL_H_ |
| #define DEVICE_VR_OPENXR_OPENXR_DEBUG_UTIL_H_ |
| |
| #include "third_party/openxr/src/include/openxr/openxr.h" |
| |
| namespace device { |
| |
| class OpenXrExtensionHelper; |
| |
| // We want to discourage general usage of these methods without being |
| // intentional about it. We use a debug namespace to help ensure they aren't |
| // accidentally used. |
| namespace debug { |
| // XrTime is generally meant to be an opaque concept; and we should thus think |
| // carefully about using it. If we want to leverage this more broadly than for |
| // debugging, we should think carefully about how to construct/get it so |
| // that we can ensure we're using it in appropriate ways. Of particular |
| // concern is that there may be time drift between XrTime and the system time, |
| // so the value returned from this shouldn't be stored and used as the basis |
| // of many/any calculations. |
| XrResult GetCurrentXrTime(const XrInstance& instance_, |
| const OpenXrExtensionHelper& extension_helper, |
| XrTime* current_time); |
| } // namespace debug |
| |
| } // namespace device |
| |
| #endif // DEVICE_VR_OPENXR_OPENXR_DEBUG_UTIL_H_ |