chromium/third_party/skia/src/gpu/ganesh/GrCaps.h


/*
 * Copyright 2013 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */
#ifndef GrCaps_DEFINED
#define GrCaps_DEFINED

#include "include/core/SkCapabilities.h"
#include "include/core/SkRefCnt.h"
#include "include/core/SkTypes.h"
#include "include/gpu/ganesh/GrDriverBugWorkarounds.h"
#include "include/gpu/ganesh/GrTypes.h"
#include "include/private/base/SkMacros.h"
#include "include/private/base/SkTo.h"
#include "include/private/gpu/ganesh/GrTypesPriv.h"
#include "src/gpu/Blend.h"
#include "src/gpu/Swizzle.h"
#include "src/gpu/ganesh/GrSamplerState.h"
#include "src/gpu/ganesh/GrShaderCaps.h"
#include "src/gpu/ganesh/GrSurfaceProxy.h"

#include <algorithm>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <string>
#include <string_view>
#include <tuple>
#include <vector>

class GrBackendFormat;
class GrBackendRenderTarget;
class GrProgramDesc;
class GrProgramInfo;
class GrRenderTarget;
class GrRenderTargetProxy;
class GrSurface;
class SkJSONWriter;
enum class SkTextureCompressionType;
struct GrContextOptions;
struct SkIRect;
struct SkISize;

namespace skgpu {
    class KeyBuilder;
    enum class Mipmapped : bool;
}
namespace GrTest {
    struct TestFormatColorTypeCombination;
}

/**
 * Represents the capabilities of a GrContext.
 */
class GrCaps : public SkCapabilities {};

SK_MAKE_BITFIELD_CLASS_OPS(GrCaps::ProgramDescOverrideFlags)

#endif