// Copyright 2024 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_VIZ_COMMON_QUADS_FRAME_INTERVAL_INPUTS_H_ #define COMPONENTS_VIZ_COMMON_QUADS_FRAME_INTERVAL_INPUTS_H_ #include <cstdint> #include <string> #include <vector> #include "base/time/time.h" #include "components/viz/common/viz_common_export.h" namespace viz { // Information passed from viz clients used to compute the overall ideal frame // interval. Information should generally be descriptive of information in // clients, but clients should generally avoid doing aggregation itself to allow // viz decide using full description of all clients. For example clients should // not compute a preferred frame interval unless the content it's displaying // actually has a fixed or specified frame interval. // This file should generally avoid OS build flags checks (eg IS_ANDROID), // though exception can be made for if the information is expensive to compute, // or if feature is really specific to a specific platform. // The type of content that has a fixed or specified frame interval. enum class ContentFrameIntervalType { … }; VIZ_COMMON_EXPORT std::string ContentFrameIntervalTypeToString( ContentFrameIntervalType type); struct VIZ_COMMON_EXPORT ContentFrameIntervalInfo { … }; struct VIZ_COMMON_EXPORT FrameIntervalInputs { … }; } // namespace viz #endif // COMPONENTS_VIZ_COMMON_QUADS_FRAME_INTERVAL_INPUTS_H_