summaryrefslogtreecommitdiffstats
path: root/src/core/compositor/native_skia_output_device_vulkan.h
blob: bead0cc111448a2ba421149cef541e4f51d5d4df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only

#ifndef NATIVE_SKIA_OUTPUT_DEVICE_VULKAN_H
#define NATIVE_SKIA_OUTPUT_DEVICE_VULKAN_H

#include "native_skia_output_device.h"

namespace QtWebEngineCore {

class NativeSkiaOutputDeviceVulkan final : public NativeSkiaOutputDevice
{
public:
    NativeSkiaOutputDeviceVulkan(
            scoped_refptr<gpu::SharedContextState> contextState, bool requiresAlpha,
            gpu::MemoryTracker *memoryTracker, viz::SkiaOutputSurfaceDependency *dependency,
            gpu::SharedImageFactory *shared_image_factory,
            gpu::SharedImageRepresentationFactory *shared_image_representation_factory,
            DidSwapBufferCompleteCallback didSwapBufferCompleteCallback);
    ~NativeSkiaOutputDeviceVulkan() override;

    // Overridden from Compositor:
    QSGTexture *texture(QQuickWindow *win, uint32_t textureOptions) override;
};

} // namespace QtWebEngineCore

#endif // NATIVE_SKIA_OUTPUT_DEVICE_VULKAN_H