diff options
Diffstat (limited to 'libs/hwui/OpenGLRenderer.h')
-rw-r--r-- | libs/hwui/OpenGLRenderer.h | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/libs/hwui/OpenGLRenderer.h b/libs/hwui/OpenGLRenderer.h index 2fc88e1..3c2d09e 100644 --- a/libs/hwui/OpenGLRenderer.h +++ b/libs/hwui/OpenGLRenderer.h @@ -123,6 +123,8 @@ public: virtual void drawLines(float* points, int count, SkPaint* paint); virtual void drawPoints(float* points, int count, SkPaint* paint); virtual void drawText(const char* text, int bytesCount, int count, float x, float y, + SkPaint* paint, float length = -1.0f); + virtual void drawPosText(const char* text, int bytesCount, int count, const float* positions, SkPaint* paint); virtual void resetShader(); @@ -134,6 +136,16 @@ public: virtual void resetShadow(); virtual void setupShadow(float radius, float dx, float dy, int color); + virtual void resetPaintFilter(); + virtual void setupPaintFilter(int clearBits, int setBits); + + SkPaint* filterPaint(SkPaint* paint); + + ANDROID_API static uint32_t getStencilSize(); + + void startMark(const char* name) const; + void endMark() const; + protected: /** * Compose the layer defined in the current snapshot with the layer @@ -498,6 +510,7 @@ private: */ void setupDrawWithTexture(bool isAlpha8 = false); void setupDrawWithExternalTexture(); + void setupDrawNoTexture(); void setupDrawAALine(); void setupDrawPoint(float pointSize); void setupDrawColor(int color); @@ -530,6 +543,7 @@ private: void setupDrawTextureTransform(); void setupDrawTextureTransformUniforms(mat4& transform); void setupDrawMesh(GLvoid* vertices, GLvoid* texCoords = NULL, GLuint vbo = 0); + void setupDrawMeshIndices(GLvoid* vertices, GLvoid* texCoords); void setupDrawVertices(GLvoid* vertices); void setupDrawAALine(GLvoid* vertices, GLvoid* distanceCoords, GLvoid* lengthCoords, float strokeWidth); @@ -577,6 +591,12 @@ private: float mShadowDy; int mShadowColor; + // Draw filters + bool mHasDrawFilter; + int mPaintFilterClearBits; + int mPaintFilterSetBits; + SkPaint mFilteredPaint; + // Various caches Caches& mCaches; @@ -601,8 +621,6 @@ private: GLuint mTextureUnit; // Track dirty regions, true by default bool mTrackDirtyRegions; - // Texture coordinates slot - int mTexCoordsSlot; friend class DisplayListRenderer; |