// Copyright 2015 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. #ifndef SKY_COMPOSITOR_COMPOSITOR_OPTIONS_H_ #define SKY_COMPOSITOR_COMPOSITOR_OPTIONS_H_ #include "base/macros.h" #include namespace sky { namespace compositor { class CompositorOptions { public: using OptionType = unsigned int; enum class Option : OptionType { // SkPictures that dont mutate from frame to frame are rasterized by the // picture rasterizer. This guard enables highlighting the rasterized // images. Useful when debugging caching. HightlightRasterizedImages, TerminationSentinel, }; CompositorOptions(); ~CompositorOptions(); bool isEnabled(Option option) const; void setEnabled(Option option, bool enabled); private: std::vector options_; DISALLOW_COPY_AND_ASSIGN(CompositorOptions); }; } // namespace compositor } // namespace sky #endif // SKY_COMPOSITOR_COMPOSITOR_OPTIONS_H_