Flutter Engine
The Flutter Engine
|
#include <SkBitmapDevice.h>
Classes | |
class | BDDraw |
Public Member Functions | |
SkBitmapDevice (const SkBitmap &bitmap) | |
SkBitmapDevice (const SkBitmap &bitmap, const SkSurfaceProps &surfaceProps, void *externalHandle=nullptr) | |
void | drawPaint (const SkPaint &paint) override |
void | drawPoints (SkCanvas::PointMode mode, size_t count, const SkPoint[], const SkPaint &paint) override |
void | drawRect (const SkRect &r, const SkPaint &paint) override |
void | drawOval (const SkRect &oval, const SkPaint &paint) override |
void | drawRRect (const SkRRect &rr, const SkPaint &paint) override |
void | drawPath (const SkPath &, const SkPaint &, bool pathIsMutable) override |
void | drawImageRect (const SkImage *, const SkRect *src, const SkRect &dst, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) override |
void | drawVertices (const SkVertices *, sk_sp< SkBlender >, const SkPaint &, bool) override |
void | drawMesh (const SkMesh &, sk_sp< SkBlender >, const SkPaint &) override |
void | drawAtlas (const SkRSXform[], const SkRect[], const SkColor[], int count, sk_sp< SkBlender >, const SkPaint &) override |
void | pushClipStack () override |
void | popClipStack () override |
void | clipRect (const SkRect &rect, SkClipOp, bool aa) override |
void | clipRRect (const SkRRect &rrect, SkClipOp, bool aa) override |
void | clipPath (const SkPath &path, SkClipOp, bool aa) override |
void | clipRegion (const SkRegion &deviceRgn, SkClipOp) override |
void | replaceClip (const SkIRect &rect) override |
bool | isClipAntiAliased () const override |
bool | isClipEmpty () const override |
bool | isClipRect () const override |
bool | isClipWideOpen () const override |
void | android_utils_clipAsRgn (SkRegion *) const override |
SkIRect | devClipBounds () const override |
void | drawSpecial (SkSpecialImage *, const SkMatrix &, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) override |
sk_sp< SkSpecialImage > | makeSpecial (const SkBitmap &) override |
sk_sp< SkSpecialImage > | makeSpecial (const SkImage *) override |
sk_sp< SkSpecialImage > | snapSpecial (const SkIRect &, bool forceCopy=false) override |
sk_sp< SkDevice > | createDevice (const CreateInfo &, const SkPaint *) override |
sk_sp< SkSurface > | makeSurface (const SkImageInfo &, const SkSurfaceProps &) override |
void | setImmutable () override |
void * | getRasterHandle () const override |
Public Member Functions inherited from SkDevice | |
SkDevice (const SkImageInfo &, const SkSurfaceProps &) | |
const SkImageInfo & | imageInfo () const |
int | width () const |
int | height () const |
bool | isOpaque () const |
SkIRect | bounds () const |
SkISize | size () const |
const SkSurfaceProps & | surfaceProps () const |
SkScalerContextFlags | scalerContextFlags () const |
virtual SkStrikeDeviceInfo | strikeDeviceInfo () const |
bool | writePixels (const SkPixmap &src, int x, int y) |
bool | readPixels (const SkPixmap &dst, int x, int y) |
bool | accessPixels (SkPixmap *pmap) |
bool | peekPixels (SkPixmap *) |
const SkM44 & | localToDevice44 () const |
const SkMatrix & | localToDevice () const |
const SkM44 & | deviceToGlobal () const |
const SkM44 & | globalToDevice () const |
SkIPoint | getOrigin () const |
bool | isPixelAlignedToGlobal () const |
SkMatrix | getRelativeTransform (const SkDevice &) const |
void | setLocalToDevice (const SkM44 &localToDevice) |
void | setGlobalCTM (const SkM44 &ctm) |
void | getGlobalBounds (SkIRect *bounds) const |
SkIRect | getGlobalBounds () const |
virtual SkIRect | devClipBounds () const =0 |
virtual void | pushClipStack ()=0 |
virtual void | popClipStack ()=0 |
virtual void | clipRect (const SkRect &rect, SkClipOp op, bool aa)=0 |
virtual void | clipRRect (const SkRRect &rrect, SkClipOp op, bool aa)=0 |
virtual void | clipPath (const SkPath &path, SkClipOp op, bool aa)=0 |
virtual void | clipRegion (const SkRegion ®ion, SkClipOp op)=0 |
void | clipShader (sk_sp< SkShader > sh, SkClipOp op) |
virtual void | replaceClip (const SkIRect &rect)=0 |
virtual bool | isClipAntiAliased () const =0 |
virtual bool | isClipEmpty () const =0 |
virtual bool | isClipRect () const =0 |
virtual bool | isClipWideOpen () const =0 |
virtual void | android_utils_clipAsRgn (SkRegion *) const =0 |
virtual bool | android_utils_clipWithStencil () |
virtual bool | useDrawCoverageMaskForMaskFilters () const |
virtual bool | isNoPixelsDevice () const |
virtual void * | getRasterHandle () const |
virtual GrRecordingContext * | recordingContext () const |
virtual skgpu::graphite::Recorder * | recorder () const |
virtual skgpu::ganesh::Device * | asGaneshDevice () |
virtual skgpu::graphite::Device * | asGraphiteDevice () |
virtual void | setImmutable () |
virtual sk_sp< SkSurface > | makeSurface (const SkImageInfo &, const SkSurfaceProps &) |
virtual sk_sp< SkDevice > | createDevice (const CreateInfo &, const SkPaint *) |
void | drawGlyphRunList (SkCanvas *, const sktext::GlyphRunList &glyphRunList, const SkPaint &paint) |
virtual sk_sp< sktext::gpu::Slug > | convertGlyphRunListToSlug (const sktext::GlyphRunList &glyphRunList, const SkPaint &paint) |
virtual void | drawSlug (SkCanvas *, const sktext::gpu::Slug *slug, const SkPaint &paint) |
virtual void | drawPaint (const SkPaint &paint)=0 |
virtual void | drawPoints (SkCanvas::PointMode mode, size_t count, const SkPoint[], const SkPaint &paint)=0 |
virtual void | drawRect (const SkRect &r, const SkPaint &paint)=0 |
virtual void | drawRegion (const SkRegion &r, const SkPaint &paint) |
virtual void | drawOval (const SkRect &oval, const SkPaint &paint)=0 |
virtual void | drawArc (const SkArc &arc, const SkPaint &paint) |
virtual void | drawRRect (const SkRRect &rr, const SkPaint &paint)=0 |
virtual void | drawDRRect (const SkRRect &outer, const SkRRect &inner, const SkPaint &) |
virtual void | drawPath (const SkPath &path, const SkPaint &paint, bool pathIsMutable=false)=0 |
virtual void | drawImageRect (const SkImage *, const SkRect *src, const SkRect &dst, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint)=0 |
virtual bool | shouldDrawAsTiledImageRect () const |
virtual bool | drawAsTiledImageRect (SkCanvas *, const SkImage *, const SkRect *src, const SkRect &dst, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) |
virtual void | drawImageLattice (const SkImage *, const SkCanvas::Lattice &, const SkRect &dst, SkFilterMode, const SkPaint &) |
virtual void | drawVertices (const SkVertices *, sk_sp< SkBlender >, const SkPaint &, bool skipColorXform=false)=0 |
virtual void | drawMesh (const SkMesh &mesh, sk_sp< SkBlender >, const SkPaint &)=0 |
virtual void | drawShadow (const SkPath &, const SkDrawShadowRec &) |
virtual void | drawPatch (const SkPoint cubics[12], const SkColor colors[4], const SkPoint texCoords[4], sk_sp< SkBlender >, const SkPaint &paint) |
virtual void | drawAtlas (const SkRSXform[], const SkRect[], const SkColor[], int count, sk_sp< SkBlender >, const SkPaint &) |
virtual void | drawAnnotation (const SkRect &, const char[], SkData *) |
virtual void | drawEdgeAAQuad (const SkRect &rect, const SkPoint clip[4], SkCanvas::QuadAAFlags aaFlags, const SkColor4f &color, SkBlendMode mode) |
virtual void | drawEdgeAAImageSet (const SkCanvas::ImageSetEntry[], int count, const SkPoint dstClips[], const SkMatrix preViewMatrices[], const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint) |
virtual void | drawDrawable (SkCanvas *, SkDrawable *, const SkMatrix *) |
virtual sk_sp< SkSpecialImage > | snapSpecial (const SkIRect &subset, bool forceCopy=false) |
virtual sk_sp< SkSpecialImage > | snapSpecialScaled (const SkIRect &subset, const SkISize &dstDims) |
sk_sp< SkSpecialImage > | snapSpecial () |
virtual void | drawDevice (SkDevice *, const SkSamplingOptions &, const SkPaint &) |
virtual void | drawSpecial (SkSpecialImage *, const SkMatrix &localToDevice, const SkSamplingOptions &, const SkPaint &, SkCanvas::SrcRectConstraint constraint=SkCanvas::kStrict_SrcRectConstraint) |
virtual void | drawCoverageMask (const SkSpecialImage *, const SkMatrix &maskToDevice, const SkSamplingOptions &, const SkPaint &) |
virtual bool | drawBlurredRRect (const SkRRect &, const SkPaint &, float deviceSigma) |
void | drawFilteredImage (const skif::Mapping &mapping, SkSpecialImage *src, SkColorType ct, const SkImageFilter *, const SkSamplingOptions &, const SkPaint &) |
Public Member Functions inherited from SkRefCntBase | |
SkRefCntBase () | |
virtual | ~SkRefCntBase () |
bool | unique () const |
void | ref () const |
void | unref () const |
Static Public Member Functions | |
static sk_sp< SkBitmapDevice > | Create (const SkImageInfo &, const SkSurfaceProps &, SkRasterHandleAllocator *=nullptr) |
Friends | |
class | SkDraw |
class | SkDrawBase |
class | SkDrawTiler |
class | SkSurface_Raster |
Additional Inherited Members | |
Protected Member Functions inherited from SkDevice | |
virtual sk_sp< SkSpecialImage > | makeSpecial (const SkBitmap &) |
virtual sk_sp< SkSpecialImage > | makeSpecial (const SkImage *) |
void | setDeviceCoordinateSystem (const SkM44 &deviceToGlobal, const SkM44 &globalToDevice, const SkM44 &localToDevice, int bufferOriginX, int bufferOriginY) |
void | setOrigin (const SkM44 &globalCTM, int x, int y) |
bool | checkLocalToDeviceDirty () |
Definition at line 45 of file SkBitmapDevice.h.
SkBitmapDevice::SkBitmapDevice | ( | const SkBitmap & | bitmap | ) |
Construct a new device with the specified bitmap as its backend. It is valid for the bitmap to have no pixels associated with it. In that case, any drawing to this device will have no effect.
Definition at line 230 of file SkBitmapDevice.cpp.
SkBitmapDevice::SkBitmapDevice | ( | const SkBitmap & | bitmap, |
const SkSurfaceProps & | surfaceProps, | ||
void * | externalHandle = nullptr |
||
) |
Construct a new device with the specified bitmap as its backend. It is valid for the bitmap to have no pixels associated with it. In that case, any drawing to this device will have no effect.
|
overridevirtual |
Implements SkDevice.
Definition at line 681 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 634 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 626 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 642 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 630 of file SkBitmapDevice.cpp.
|
static |
Definition at line 248 of file SkBitmapDevice.cpp.
|
overridevirtual |
Create a new device based on CreateInfo. If the paint is not null, then it represents a preview of how the new device will be composed with its creator device (this).
The subclass may be handed this device in drawDevice(), so it must always return a device that it knows how to draw, and that it knows how to identify if it is not of the same subclass (since drawDevice is passed a SkDevice*). If the subclass cannot fulfill that contract (e.g. PDF cannot support some settings on the paint) it should return NULL, and the caller may then decide to explicitly create a bitmapdevice, knowing that later it could not call drawDevice with it (but it could call drawSprite or drawBitmap).
Reimplemented from SkDevice.
Definition at line 292 of file SkBitmapDevice.cpp.
|
overridevirtual |
Returns the bounding box of the current clip, in this device's coordinate space. No pixels outside of these bounds will be touched by draws unless the clip is further modified (at which point this will return the updated bounds).
Implements SkDevice.
Definition at line 690 of file SkBitmapDevice.cpp.
|
overridevirtual |
Reimplemented from SkDevice.
Definition at line 555 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 414 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 551 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 357 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 344 of file SkBitmapDevice.cpp.
|
overridevirtual |
If pathIsMutable, then the implementation is allowed to cast path to a non-const pointer and modify it in place (as an optimization). Canvas may do this to implement helpers such as drawOval, by placing a temp path on the stack to hold the representation of the oval.
Implements SkDevice.
Definition at line 373 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 348 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 353 of file SkBitmapDevice.cpp.
Implements SkDevice.
Definition at line 363 of file SkBitmapDevice.cpp.
|
overridevirtual |
Draw the special image's subset to this device, subject to the given matrix transform instead of the device's current local to device matrix.
If 'constraint' is kFast, the rendered geometry of the image still reflects the extent of the SkSpecialImage's subset, but it's assumed that the pixel data beyond the subset is valid (e.g. SkSpecialImage::makeSubset() was called to crop a larger image).
Reimplemented from SkDevice.
Definition at line 571 of file SkBitmapDevice.cpp.
|
overridevirtual |
If skipColorXform is true, then the implementation should assume that the provided vertex colors are already in the destination color space.
Implements SkDevice.
Definition at line 539 of file SkBitmapDevice.cpp.
|
inlineoverridevirtual |
Reimplemented from SkDevice.
Definition at line 116 of file SkBitmapDevice.h.
|
overridevirtual |
Implements SkDevice.
Definition at line 676 of file SkBitmapDevice.cpp.
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
Implements SkDevice.
Definition at line 660 of file SkBitmapDevice.cpp.
|
overridevirtual |
Reimplemented from SkDevice.
Definition at line 592 of file SkBitmapDevice.cpp.
|
overridevirtual |
Reimplemented from SkDevice.
Definition at line 596 of file SkBitmapDevice.cpp.
|
overridevirtual |
Reimplemented from SkDevice.
Definition at line 612 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 622 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 618 of file SkBitmapDevice.cpp.
|
overridevirtual |
Implements SkDevice.
Definition at line 654 of file SkBitmapDevice.cpp.
|
inlineoverridevirtual |
Reimplemented from SkDevice.
Definition at line 114 of file SkBitmapDevice.h.
|
overridevirtual |
Reimplemented from SkDevice.
Definition at line 602 of file SkBitmapDevice.cpp.
|
friend |
Definition at line 120 of file SkBitmapDevice.h.
|
friend |
Definition at line 121 of file SkBitmapDevice.h.
|
friend |
Definition at line 122 of file SkBitmapDevice.h.
|
friend |
Definition at line 123 of file SkBitmapDevice.h.