Index: include/core/SkTextBlob.h |
diff --git a/include/core/SkTextBlob.h b/include/core/SkTextBlob.h |
index a39f378abca6151069d2a22cab3b8d779e2c83b8..228f5a5e1104775b6bdcc1575923e4fcadbc09fa 100644 |
--- a/include/core/SkTextBlob.h |
+++ b/include/core/SkTextBlob.h |
@@ -46,36 +46,16 @@ public: |
*/ |
static const SkTextBlob* CreateFromBuffer(SkReadBuffer&); |
-private: |
enum GlyphPositioning { |
kDefault_Positioning = 0, // Default glyph advances -- zero scalars per glyph. |
kHorizontal_Positioning = 1, // Horizontal positioning -- one scalar per glyph. |
kFull_Positioning = 2 // Point positioning -- two scalars per glyph. |
}; |
+ class RunIterator; |
f(malita)
2015/10/27 20:10:00
Since the definition is internal-only, it seems a
mtklein
2015/10/27 20:14:31
Both work. It's mostly a question of whether you
|
- class RunRecord; |
- |
- class RunIterator { |
- public: |
- RunIterator(const SkTextBlob* blob); |
- |
- bool done() const; |
- void next(); |
- |
- uint32_t glyphCount() const; |
- const uint16_t* glyphs() const; |
- const SkScalar* pos() const; |
- const SkPoint& offset() const; |
- void applyFontToPaint(SkPaint*) const; |
- GlyphPositioning positioning() const; |
- bool isLCD() const; |
- |
- private: |
- const RunRecord* fCurrentRun; |
- int fRemainingRuns; |
+private: |
- SkDEBUGCODE(uint8_t* fStorageTop;) |
- }; |
+ class RunRecord; |
SkTextBlob(int runCount, const SkRect& bounds); |
@@ -92,13 +72,7 @@ private: |
static unsigned ScalarsPerGlyph(GlyphPositioning pos); |
- friend class GrAtlasTextContext; |
- friend class GrStencilAndCoverTextContext; |
- friend class GrTextBlobCache; |
- friend class GrTextContext; |
- friend class SkBaseDevice; |
friend class SkTextBlobBuilder; |
- friend class TextBlobTester; |
const int fRunCount; |
const SkRect fBounds; |