Flutter Engine
The Flutter Engine
GrD3DSemaphore.h
Go to the documentation of this file.
1/*
2 * Copyright 2020 Google LLC
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef GrMtlSemaphore_DEFINED
9#define GrMtlSemaphore_DEFINED
10
15
16class GrD3DGpu;
17
19public:
20 static std::unique_ptr<GrD3DSemaphore> Make(GrD3DGpu* gpu);
21
22 static std::unique_ptr<GrD3DSemaphore> MakeWrapped(const GrD3DFenceInfo&);
23
24 ~GrD3DSemaphore() override {}
25
26 ID3D12Fence* fence() const { return fFenceInfo.fFence.get(); }
27 uint64_t value() const { return fFenceInfo.fValue; }
28
29 GrBackendSemaphore backendSemaphore() const override;
30
31private:
33
34 void setIsOwned() override {}
35
36 GrD3DFenceInfo fFenceInfo;
37
38 using INHERITED = GrSemaphore;
39};
40
41#endif
static std::unique_ptr< GrD3DSemaphore > Make(GrD3DGpu *gpu)
uint64_t value() const
~GrD3DSemaphore() override
GrBackendSemaphore backendSemaphore() const override
ID3D12Fence * fence() const
static std::unique_ptr< GrD3DSemaphore > MakeWrapped(const GrD3DFenceInfo &)
T * get() const
Definition: GrD3DTypes.h:108
gr_cp< ID3D12Fence > fFence
Definition: GrD3DTypes.h:235
uint64_t fValue
Definition: GrD3DTypes.h:236