Skia
2DGraphicsLibrary
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GrSurface Class Reference
Inheritance diagram for GrSurface:
GrGpuResource GrIORef< GrGpuResource > GrRenderTarget GrTexture

Public Member Functions

int width () const
 Retrieves the width of the surface.
 
int height () const
 Retrieves the height of the surface.
 
SkRect getBoundsRect () const
 Helper that gets the width and height of the surface as a bounding rectangle.
 
GrSurfaceOrigin origin () const
 
GrPixelConfig config () const
 Retrieves the pixel config specified when the surface was created. More...
 
virtual GrTextureasTexture ()
 
virtual const GrTextureasTexture () const
 
virtual GrRenderTargetasRenderTarget ()
 
virtual const GrRenderTargetasRenderTarget () const
 
GrSurfacePriv surfacePriv ()
 Access methods that are only to be used within Skia code. More...
 
const GrSurfacePriv surfacePriv () const
 
- Public Member Functions inherited from GrGpuResource
bool wasDestroyed () const
 Tests whether a object has been abandoned or released. More...
 
const GrContextgetContext () const
 Retrieves the context that owns the object. More...
 
GrContextgetContext ()
 
size_t gpuMemorySize () const
 Retrieves the amount of GPU memory used by this resource in bytes. More...
 
UniqueID uniqueID () const
 Gets an id that is unique for this GrGpuResource object. More...
 
const GrUniqueKeygetUniqueKey () const
 Returns the current unique key for the resource. More...
 
CacheAccess cacheAccess ()
 
const CacheAccess cacheAccess () const
 
ResourcePriv resourcePriv ()
 
const ResourcePriv resourcePriv () const
 
void abandon ()
 Removes references to objects in the underlying 3D API without freeing them. More...
 
virtual void dumpMemoryStatistics (SkTraceMemoryDump *traceMemoryDump) const
 Dumps memory usage information for this GrGpuResource to traceMemoryDump. More...
 
- Public Member Functions inherited from GrIORef< GrGpuResource >
void ref () const
 
void unref () const
 
void validate () const
 

Static Public Member Functions

static size_t WorstCaseSize (const GrSurfaceDesc &desc, bool useNextPow2=false)
 
static size_t ComputeSize (GrPixelConfig config, int width, int height, int colorSamplesPerPixel, bool hasMIPMaps, bool useNextPow2=false)
 
- Static Public Member Functions inherited from GrGpuResource
static uint32_t CreateUniqueID ()
 

Protected Member Functions

bool hasPendingRead () const
 
bool hasPendingWrite () const
 
bool hasPendingIO () const
 
 GrSurface (GrGpu *gpu, const GrSurfaceDesc &desc)
 
void onRelease () override
 Overridden to free GPU resources in the backend API. More...
 
void onAbandon () override
 Overridden to abandon any internal handles, ptrs, etc to backend API resources. More...
 
- Protected Member Functions inherited from GrGpuResource
void registerWithCache (SkBudgeted)
 
void registerWithCacheWrapped ()
 
 GrGpuResource (GrGpu *)
 
GrGpu * getGpu () const
 
void didChangeGpuMemorySize () const
 This entry point should be called whenever gpuMemorySize() should report a different size. More...
 
virtual void setMemoryBacking (SkTraceMemoryDump *, const SkString &) const
 Allows subclasses to add additional backing information to the SkTraceMemoryDump. More...
 
- Protected Member Functions inherited from GrIORef< GrGpuResource >
bool isPurgeable () const
 
bool internalHasPendingRead () const
 
bool internalHasPendingWrite () const
 
bool internalHasPendingIO () const
 
bool internalHasRef () const
 

Private Types

typedef GrGpuResource INHERITED
 

Private Attributes

GrPixelConfig fConfig
 
int fWidth
 
int fHeight
 
GrSurfaceOrigin fOrigin
 

Friends

class GrSurfacePriv
 

Additional Inherited Members

- Protected Types inherited from GrIORef< GrGpuResource >
enum  CntType
 

Member Function Documentation

virtual GrRenderTarget* GrSurface::asRenderTarget ( )
inlinevirtual
Returns
the render target underlying this surface, may be null.

Reimplemented in GrRenderTarget.

virtual GrTexture* GrSurface::asTexture ( )
inlinevirtual
Returns
the texture associated with the surface, may be null.

Reimplemented in GrTexture.

GrPixelConfig GrSurface::config ( ) const
inline

Retrieves the pixel config specified when the surface was created.

For render targets this can be kUnknown_GrPixelConfig if client asked us to render to a target that has a pixel config that isn't equivalent with one of our configs.

void GrSurface::onAbandon ( )
overrideprotectedvirtual

Overridden to abandon any internal handles, ptrs, etc to backend API resources.

This may be called when the underlying 3D context is no longer valid and so no backend API calls should be made.

Reimplemented from GrGpuResource.

void GrSurface::onRelease ( )
overrideprotectedvirtual

Overridden to free GPU resources in the backend API.

Reimplemented from GrGpuResource.

GrSurfacePriv GrSurface::surfacePriv ( )
inline

Access methods that are only to be used within Skia code.


The documentation for this class was generated from the following file: