diff options
Diffstat (limited to 'gfx/angle/src/libANGLE/renderer/vulkan/RendererVk.h')
-rwxr-xr-x | gfx/angle/src/libANGLE/renderer/vulkan/RendererVk.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gfx/angle/src/libANGLE/renderer/vulkan/RendererVk.h b/gfx/angle/src/libANGLE/renderer/vulkan/RendererVk.h new file mode 100755 index 000000000..8a7489496 --- /dev/null +++ b/gfx/angle/src/libANGLE/renderer/vulkan/RendererVk.h @@ -0,0 +1,46 @@ +// +// Copyright 2016 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// RendererVk.h: +// Defines the class interface for RendererVk. +// + +#ifndef LIBANGLE_RENDERER_VULKAN_RENDERERVK_H_ +#define LIBANGLE_RENDERER_VULKAN_RENDERERVK_H_ + +#include "common/angleutils.h" +#include "libANGLE/Caps.h" + +namespace rx +{ + +class RendererVk : angle::NonCopyable +{ + public: + RendererVk(); + ~RendererVk(); + + const gl::Caps &getNativeCaps() const; + const gl::TextureCapsMap &getNativeTextureCaps() const; + const gl::Extensions &getNativeExtensions() const; + const gl::Limitations &getNativeLimitations() const; + + private: + void ensureCapsInitialized() const; + void generateCaps(gl::Caps *outCaps, + gl::TextureCapsMap *outTextureCaps, + gl::Extensions *outExtensions, + gl::Limitations *outLimitations) const; + + mutable bool mCapsInitialized; + mutable gl::Caps mNativeCaps; + mutable gl::TextureCapsMap mNativeTextureCaps; + mutable gl::Extensions mNativeExtensions; + mutable gl::Limitations mNativeLimitations; +}; + +} // namespace rx + +#endif // LIBANGLE_RENDERER_VULKAN_RENDERERVK_H_ |