Flutter Engine
The Flutter Engine
third_party
skia
src
gpu
ganesh
GrBackendSemaphorePriv.h
Go to the documentation of this file.
1
/*
2
* Copyright 2023 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 GrBackendSemaphorePriv_DEFINED
9
#define GrBackendSemaphorePriv_DEFINED
10
11
#include "
include/core/SkTypes.h
"
12
#include "
include/gpu/GrBackendSemaphore.h
"
13
14
enum class
GrBackendApi
:
unsigned
int
;
15
16
class
GrBackendSemaphoreData
{
17
public
:
18
virtual
~GrBackendSemaphoreData
();
19
20
#if defined(SK_DEBUG)
21
virtual
GrBackendApi
type
()
const
= 0;
22
#endif
23
protected
:
24
GrBackendSemaphoreData
() =
default
;
25
GrBackendSemaphoreData
(
const
GrBackendSemaphoreData
&) =
default
;
26
27
using
AnySemaphoreData
=
GrBackendSemaphore::AnySemaphoreData
;
28
29
private
:
30
friend
class
GrBackendSemaphore
;
31
virtual
void
copyTo
(
AnySemaphoreData
&)
const
= 0;
32
};
33
34
class
GrBackendSemaphorePriv
final {
35
public
:
36
template
<
typename
SemaphoreData>
37
static
GrBackendSemaphore
MakeGrBackendSemaphore
(
GrBackendApi
backend
,
38
const
SemaphoreData&
data
) {
39
return
GrBackendSemaphore
(
backend
,
data
);
40
}
41
42
static
const
GrBackendSemaphoreData
*
GetBackendData
(
const
GrBackendSemaphore
& sem) {
43
return
sem.fSemaphoreData.
get
();
44
}
45
};
46
47
#endif
backend
const char * backend
Definition:
CommonFlagsConfig.cpp:42
GrBackendSemaphore.h
GrBackendApi
GrBackendApi
Definition:
GrTypes.h:95
SkTypes.h
type
GLenum type
Definition:
blit_command_gles.cc:126
GrBackendSemaphoreData
Definition:
GrBackendSemaphorePriv.h:16
GrBackendSemaphoreData::copyTo
virtual void copyTo(AnySemaphoreData &) const =0
GrBackendSemaphoreData::GrBackendSemaphoreData
GrBackendSemaphoreData(const GrBackendSemaphoreData &)=default
GrBackendSemaphoreData::~GrBackendSemaphoreData
virtual ~GrBackendSemaphoreData()
GrBackendSemaphoreData::GrBackendSemaphoreData
GrBackendSemaphoreData()=default
GrBackendSemaphorePriv
Definition:
GrBackendSemaphorePriv.h:34
GrBackendSemaphorePriv::GetBackendData
static const GrBackendSemaphoreData * GetBackendData(const GrBackendSemaphore &sem)
Definition:
GrBackendSemaphorePriv.h:42
GrBackendSemaphorePriv::MakeGrBackendSemaphore
static GrBackendSemaphore MakeGrBackendSemaphore(GrBackendApi backend, const SemaphoreData &data)
Definition:
GrBackendSemaphorePriv.h:37
GrBackendSemaphore
Definition:
GrBackendSemaphore.h:26
SkAnySubclass< GrBackendSemaphoreData, kMaxSubclassSize >
SkAnySubclass::get
const Base * get() const
Definition:
SkAnySubclass.h:55
tools.skpbench.skpbench.int
int
Definition:
skpbench.py:49
data
std::shared_ptr< const fml::Mapping > data
Definition:
texture_gles.cc:63
Generated on Sun Jun 23 2024 21:56:19 for Flutter Engine by
1.9.4