#include <GrTextureProxy.h>
|
GrTextureProxy * | asTextureProxy () override |
|
const GrTextureProxy * | asTextureProxy () const override |
|
bool | instantiate (GrResourceProvider *) override |
|
skgpu::Mipmapped | mipmapped () const |
|
bool | mipmapsAreDirty () const |
|
void | markMipmapsDirty () |
|
void | markMipmapsClean () |
|
skgpu::Mipmapped | proxyMipmapped () const |
|
GrTextureType | textureType () const |
|
bool | hasRestrictedSampling () const |
|
const skgpu::UniqueKey & | getUniqueKey () const override |
|
CacheAccess | cacheAccess () |
|
const CacheAccess | cacheAccess () const |
|
GrTextureProxyPriv | texPriv () |
|
const GrTextureProxyPriv | texPriv () const |
|
| GrTextureProxy (const GrBackendFormat &, SkISize, skgpu::Mipmapped, GrMipmapStatus, SkBackingFit, skgpu::Budgeted, skgpu::Protected, GrInternalSurfaceFlags, UseAllocator, GrDDLProvider creatingProvider, std::string_view label) |
|
| GrTextureProxy (LazyInstantiateCallback &&, const GrBackendFormat &, SkISize, skgpu::Mipmapped, GrMipmapStatus, SkBackingFit, skgpu::Budgeted, skgpu::Protected, GrInternalSurfaceFlags, UseAllocator, GrDDLProvider creatingProvider, std::string_view label) |
|
| GrTextureProxy (sk_sp< GrSurface >, UseAllocator, GrDDLProvider creatingProvider) |
|
| ~GrTextureProxy () override |
|
sk_sp< GrSurface > | createSurface (GrResourceProvider *) const override |
|
void | setTargetKeySync (bool sync) |
|
virtual | ~GrSurfaceProxy () |
|
bool | isLazy () const |
|
bool | isFullyLazy () const |
|
SkISize | dimensions () const |
|
int | width () const |
|
int | height () const |
|
SkISize | backingStoreDimensions () const |
|
SkRect | getBoundsRect () const |
|
bool | isFunctionallyExact () const |
|
SkRect | backingStoreBoundsRect () const |
|
SkIRect | backingStoreBoundsIRect () const |
|
const GrBackendFormat & | backendFormat () const |
|
bool | isFormatCompressed (const GrCaps *) const |
|
UniqueID | uniqueID () const |
|
UniqueID | underlyingUniqueID () const |
|
virtual bool | instantiate (GrResourceProvider *)=0 |
|
void | deinstantiate () |
|
bool | canSkipResourceAllocator () const |
|
virtual GrTextureProxy * | asTextureProxy () |
|
virtual const GrTextureProxy * | asTextureProxy () const |
|
virtual GrRenderTargetProxy * | asRenderTargetProxy () |
|
virtual const GrRenderTargetProxy * | asRenderTargetProxy () const |
|
virtual const skgpu::UniqueKey & | getUniqueKey () const |
|
bool | isInstantiated () const |
|
void | isUsedAsTaskTarget () |
|
int | getTaskTargetCount () const |
|
GrSurface * | peekSurface () const |
|
GrTexture * | peekTexture () const |
|
GrRenderTarget * | peekRenderTarget () const |
|
skgpu::Budgeted | isBudgeted () const |
|
bool | readOnly () const |
|
bool | framebufferOnly () const |
|
bool | requiresManualMSAAResolve () const |
|
size_t | gpuMemorySize () const |
|
std::string_view | getLabel () const |
|
GrSurfaceProxyPriv | priv () |
|
const GrSurfaceProxyPriv | priv () const |
|
bool | isDDLTarget () const |
|
GrProtected | isProtected () const |
|
bool | isPromiseProxy () |
|
| SkNVRefCnt () |
|
| ~SkNVRefCnt () |
|
bool | unique () const |
|
void | ref () const |
|
void | unref () const |
|
void | deref () const |
|
bool | refCntGreaterThan (int32_t threadIsolatedTestCnt) const |
|
|
static bool | ProxiesAreCompatibleAsDynamicState (const GrSurfaceProxy *first, const GrSurfaceProxy *second) |
|
static sk_sp< GrSurfaceProxy > | Copy (GrRecordingContext *, sk_sp< GrSurfaceProxy > src, GrSurfaceOrigin, skgpu::Mipmapped, SkIRect srcRect, SkBackingFit, skgpu::Budgeted, std::string_view label, RectsMustMatch=RectsMustMatch::kNo, sk_sp< GrRenderTask > *outTask=nullptr) |
|
static sk_sp< GrSurfaceProxy > | Copy (GrRecordingContext *, sk_sp< GrSurfaceProxy > src, GrSurfaceOrigin, skgpu::Mipmapped, SkBackingFit, skgpu::Budgeted, std::string_view label, sk_sp< GrRenderTask > *outTask=nullptr) |
|
|
enum class | ResolveFlags { kNone = 0
, kMSAA = 1 << 0
, kMipMaps = 1 << 1
} |
|
enum class | LazyInstantiationKeyMode { kUnsynced
, kSynced
} |
|
enum class | UseAllocator { kNo = false
, kYes = true
} |
|
enum class | RectsMustMatch : bool { kNo = false
, kYes = true
} |
|
using | LazyInstantiateCallback = std::function< LazyCallbackResult(GrResourceProvider *, const LazySurfaceDesc &)> |
|
| GrSurfaceProxy (const GrBackendFormat &, SkISize, SkBackingFit, skgpu::Budgeted, GrProtected, GrInternalSurfaceFlags, UseAllocator, std::string_view label) |
|
| GrSurfaceProxy (LazyInstantiateCallback &&, const GrBackendFormat &, SkISize, SkBackingFit, skgpu::Budgeted, GrProtected, GrInternalSurfaceFlags, UseAllocator, std::string_view label) |
|
| GrSurfaceProxy (sk_sp< GrSurface >, SkBackingFit, UseAllocator) |
|
bool | ignoredByResourceAllocator () const |
|
void | setIgnoredByResourceAllocator () |
|
void | computeScratchKey (const GrCaps &, skgpu::ScratchKey *) const |
|
virtual sk_sp< GrSurface > | createSurface (GrResourceProvider *) const =0 |
|
void | assign (sk_sp< GrSurface > surface) |
|
sk_sp< GrSurface > | createSurfaceImpl (GrResourceProvider *, int sampleCnt, GrRenderable, skgpu::Mipmapped) const |
|
void | setLazyDimensions (SkISize dimensions) |
|
bool | instantiateImpl (GrResourceProvider *resourceProvider, int sampleCnt, GrRenderable, skgpu::Mipmapped, const skgpu::UniqueKey *) |
|
sk_sp< GrSurface > | fTarget |
|
GrInternalSurfaceFlags | fSurfaceFlags |
|
Definition at line 34 of file GrTextureProxy.h.
◆ GrTextureProxy() [1/3]
GrTextureProxy::GrTextureProxy |
( |
const GrBackendFormat & |
format, |
|
|
SkISize |
dimensions, |
|
|
skgpu::Mipmapped |
mipmapped, |
|
|
GrMipmapStatus |
mipmapStatus, |
|
|
SkBackingFit |
fit, |
|
|
skgpu::Budgeted |
budgeted, |
|
|
skgpu::Protected |
isProtected, |
|
|
GrInternalSurfaceFlags |
surfaceFlags, |
|
|
UseAllocator |
useAllocator, |
|
|
GrDDLProvider |
creatingProvider, |
|
|
std::string_view |
label |
|
) |
| |
Definition at line 30 of file GrTextureProxy.cpp.
44 , fMipmapStatus(mipmapStatus) SkDEBUGCODE(, fInitialMipmapStatus(fMipmapStatus))
45 , fCreatingProvider(creatingProvider)
46 , fProxyProvider(nullptr)
47 , fDeferredUploader(nullptr) {
51 }
52}
#define INHERITED(method,...)
GrProtected isProtected() const
SkISize dimensions() const
GrInternalSurfaceFlags fSurfaceFlags
GrTextureType textureType() const
skgpu::Mipmapped mipmapped() const
uint32_t uint32_t * format
◆ GrTextureProxy() [2/3]
GrTextureProxy::GrTextureProxy |
( |
LazyInstantiateCallback && |
callback, |
|
|
const GrBackendFormat & |
format, |
|
|
SkISize |
dimensions, |
|
|
skgpu::Mipmapped |
mipmapped, |
|
|
GrMipmapStatus |
mipmapStatus, |
|
|
SkBackingFit |
fit, |
|
|
skgpu::Budgeted |
budgeted, |
|
|
skgpu::Protected |
isProtected, |
|
|
GrInternalSurfaceFlags |
surfaceFlags, |
|
|
UseAllocator |
useAllocator, |
|
|
GrDDLProvider |
creatingProvider, |
|
|
std::string_view |
label |
|
) |
| |
Definition at line 55 of file GrTextureProxy.cpp.
70 fit,
71 budgeted,
73 surfaceFlags,
74 useAllocator,
75 label)
77 , fMipmapStatus(mipmapStatus) SkDEBUGCODE(, fInitialMipmapStatus(fMipmapStatus))
78 , fCreatingProvider(creatingProvider)
79 , fProxyProvider(nullptr)
80 , fDeferredUploader(nullptr) {
84 }
85}
FlKeyEvent uint64_t FlKeyResponderAsyncCallback callback
◆ GrTextureProxy() [3/3]
Definition at line 88 of file GrTextureProxy.cpp.
94 SkDEBUGCODE(, fInitialMipmapStatus(fMipmapStatus))
95 , fCreatingProvider(creatingProvider)
96 , fProxyProvider(nullptr)
97 , fDeferredUploader(nullptr) {
101 }
104 }
105}
GrDirectContextPriv priv()
const GrDirectContext * getContext() const
const skgpu::UniqueKey & getUniqueKey() const
void adoptUniqueKeyFromSurface(GrTextureProxy *proxy, const GrSurface *)
GrProxyProvider * proxyProvider()
sk_sp< GrSurface > fTarget
virtual GrTexture * asTexture()
skgpu::Mipmapped mipmapped() const
GrMipmapStatus mipmapStatus() const
◆ ~GrTextureProxy()
GrTextureProxy::~GrTextureProxy |
( |
| ) |
|
|
override |
Definition at line 107 of file GrTextureProxy.cpp.
107 {
108
109
111
112
113
114
115 if (fUniqueKey.
isValid() && fProxyProvider) {
118 } else {
120 }
121}
void processInvalidUniqueKey(const skgpu::UniqueKey &, GrTextureProxy *, InvalidateGPUResource)
◆ asTextureProxy() [1/2]
◆ asTextureProxy() [2/2]
◆ cacheAccess() [1/2]
◆ cacheAccess() [2/2]
◆ createSurface()
Implements GrSurfaceProxy.
Definition at line 137 of file GrTextureProxy.cpp.
137 {
139 fMipmapped);
141 return nullptr;
142 }
143
147}
sk_sp< GrSurface > createSurfaceImpl(GrResourceProvider *, int sampleCnt, GrRenderable, skgpu::Mipmapped) const
◆ getUniqueKey()
Return the texture proxy's unique key. It will be invalid if the proxy doesn't have one.
Reimplemented from GrSurfaceProxy.
Definition at line 84 of file GrTextureProxy.h.
84 {
85#ifdef SK_DEBUG
90
92
93
94
95
97 }
98#endif
99
100 return fUniqueKey;
101 }
GrSurface * peekSurface() const
bool isInstantiated() const
◆ hasRestrictedSampling()
bool GrTextureProxy::hasRestrictedSampling |
( |
| ) |
const |
|
inline |
If true then the texture does not support MIP maps and only supports clamp wrap mode.
Definition at line 70 of file GrTextureProxy.h.
70 {
72 }
static bool GrTextureTypeHasRestrictedSampling(GrTextureType type)
◆ instantiate()
Implements GrSurfaceProxy.
Definition at line 123 of file GrTextureProxy.cpp.
123 {
125 return false;
126 }
128 fUniqueKey.
isValid() ? &fUniqueKey :
nullptr)) {
129 return false;
130 }
131
134 return true;
135}
bool instantiateImpl(GrResourceProvider *resourceProvider, int sampleCnt, GrRenderable, skgpu::Mipmapped, const skgpu::UniqueKey *)
GrTexture * peekTexture() const
GrRenderTarget * peekRenderTarget() const
◆ markMipmapsClean()
void GrTextureProxy::markMipmapsClean |
( |
| ) |
|
|
inline |
◆ markMipmapsDirty()
void GrTextureProxy::markMipmapsDirty |
( |
| ) |
|
|
inline |
◆ mipmapped()
◆ mipmapsAreDirty()
bool GrTextureProxy::mipmapsAreDirty |
( |
| ) |
const |
|
inline |
◆ ProxiesAreCompatibleAsDynamicState()
Definition at line 181 of file GrTextureProxy.cpp.
182 {
183
184
187}
const GrBackendFormat & backendFormat() const
◆ proxyMipmapped()
◆ setTargetKeySync()
void GrTextureProxy::setTargetKeySync |
( |
bool |
sync | ) |
|
|
inline |
◆ texPriv() [1/2]
◆ texPriv() [2/2]
◆ textureType()
◆ GrProxyProvider
◆ GrSurfaceProxyPriv
◆ GrTextureProxyPriv
The documentation for this class was generated from the following files: