53e1e4d88a
The main change is parameterizing the GrAtlasMgr so it can have a different sized backing texture and a different number of plots. This is in support of the saveLayer cache which has a smaller backing texture and only one plot. R=jvanverth@google.com, bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/217423014 git-svn-id: http://skia.googlecode.com/svn/trunk@14011 2bbb7eff-a529-9590-31e7-b0007b416f81
39 lines
1012 B
C++
39 lines
1012 B
C++
/*
|
|
* Copyright 2010 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#ifndef GrFontScaler_DEFINED
|
|
#define GrFontScaler_DEFINED
|
|
|
|
#include "GrGlyph.h"
|
|
#include "GrKey.h"
|
|
|
|
class SkPath;
|
|
|
|
/**
|
|
* This is a virtual base class which Gr's interface to the host platform's
|
|
* font scaler.
|
|
*
|
|
* The client is responsible for subclassing, and instantiating this. The
|
|
* instance is created for a specific font+size+matrix.
|
|
*/
|
|
class GrFontScaler : public SkRefCnt {
|
|
public:
|
|
SK_DECLARE_INST_COUNT(GrFontScaler)
|
|
|
|
virtual const GrKey* getKey() = 0;
|
|
virtual GrMaskFormat getMaskFormat() = 0;
|
|
virtual bool getPackedGlyphBounds(GrGlyph::PackedID, SkIRect* bounds) = 0;
|
|
virtual bool getPackedGlyphImage(GrGlyph::PackedID, int width, int height,
|
|
int rowBytes, void* image) = 0;
|
|
virtual bool getGlyphPath(uint16_t glyphID, SkPath*) = 0;
|
|
|
|
private:
|
|
typedef SkRefCnt INHERITED;
|
|
};
|
|
|
|
#endif
|