Flutter Engine
The Flutter Engine
vulkan_surface.h
Go to the documentation of this file.
1// Copyright 2013 The Flutter Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef FLUTTER_VULKAN_VULKAN_SURFACE_H_
6#define FLUTTER_VULKAN_VULKAN_SURFACE_H_
7
8#include "flutter/fml/macros.h"
9#include "flutter/vulkan/procs/vulkan_handle.h"
11
12namespace vulkan {
13
14class VulkanProcTable;
15class VulkanApplication;
16class VulkanNativeSurface;
17
19 public:
21 VulkanApplication& application,
22 std::unique_ptr<VulkanNativeSurface> native_surface);
23
25
26 bool IsValid() const;
27
28 /// Returns the current size of the surface or (0, 0) if invalid.
29 SkISize GetSize() const;
30
32
34
35 private:
37 VulkanApplication& application_;
38 std::unique_ptr<VulkanNativeSurface> native_surface_;
40 bool valid_;
41
42 FML_DISALLOW_COPY_AND_ASSIGN(VulkanSurface);
43};
44
45} // namespace vulkan
46
47#endif // FLUTTER_VULKAN_VULKAN_SURFACE_H_
SkISize GetSize() const
Returns the current size of the surface or (0, 0) if invalid.
const VulkanNativeSurface & GetNativeSurface() const
const VulkanHandle< VkSurfaceKHR > & Handle() const
VulkanSurface(VulkanProcTable &vk, VulkanApplication &application, std::unique_ptr< VulkanNativeSurface > native_surface)
Definition: SkSize.h:16