/* * Copyright 2022 Google LLC * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef SkCapabilities_DEFINED #define SkCapabilities_DEFINED #include "include/core/SkRefCnt.h" #ifdef SK_ENABLE_SKSL #include "include/sksl/SkSLVersion.h" namespace SkSL { struct ShaderCaps; } #endif class SK_API SkCapabilities : public SkRefCnt { public: static sk_sp RasterBackend(); #ifdef SK_ENABLE_SKSL SkSL::Version skslVersion() const { return fSkSLVersion; } #endif protected: SkCapabilities() = default; #ifdef SK_ENABLE_SKSL void initSkCaps(const SkSL::ShaderCaps*); SkSL::Version fSkSLVersion = SkSL::Version::k100; #endif }; #endif