diff options
author | Chris Craik <ccraik@google.com> | 2015-02-12 10:41:39 -0800 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2015-02-12 16:16:57 -0800 |
commit | 30036092b40badecbe64d9c2bff4850132147f78 (patch) | |
tree | ea5a86b5bd90dd3c2fd0c16ce7676cdf2fcd678a /libs/hwui/Glop.h | |
parent | 5b14d9893aced2b3ba46f1d90a0752c1a9a43f2f (diff) | |
download | frameworks_base-30036092b40badecbe64d9c2bff4850132147f78.zip frameworks_base-30036092b40badecbe64d9c2bff4850132147f78.tar.gz frameworks_base-30036092b40badecbe64d9c2bff4850132147f78.tar.bz2 |
Glop path texture support
Change-Id: I505eb05991ca4c9b2e01e49988b8f962fad51462
Diffstat (limited to 'libs/hwui/Glop.h')
-rw-r--r-- | libs/hwui/Glop.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/libs/hwui/Glop.h b/libs/hwui/Glop.h index 12c6e45..10dbd5c 100644 --- a/libs/hwui/Glop.h +++ b/libs/hwui/Glop.h @@ -39,7 +39,6 @@ class RoundRectClipState; * are enabled/disabled dynamically based on mesh content. */ enum VertexAttribFlags { - // NOTE: position attribute always enabled kNone_Attrib = 0, kTextureCoord_Attrib = 1 << 0, kColor_Attrib = 1 << 1, @@ -61,9 +60,6 @@ enum VertexAttribFlags { */ // TODO: PREVENT_COPY_AND_ASSIGN(...) or similar struct Glop { - Rect bounds; - const RoundRectClipState* roundRectClipState; - /* * Stores mesh - vertex and index data. * @@ -85,8 +81,10 @@ struct Glop { struct Fill { Program* program; + Texture* texture; GLenum textureFilter; + GLenum textureClamp; bool colorEnabled; FloatColor color; @@ -113,12 +111,25 @@ struct Glop { bool fudgingOffset; } transform; + const RoundRectClipState* roundRectClipState; + + /** + * Blending to be used by this draw - both GL_NONE if blending is disabled. + * + * Defined by fill step, but can be force-enabled by presence of kAlpha_Attrib + */ struct Blend { GLenum src; GLenum dst; } blend; /** + * Bounds of the drawing command in layer space. Only mapped into layer + * space once GlopBuilder::build() is called. + */ + Rect bounds; + + /** * Additional render state to enumerate: * - scissor + (bits for whether each of LTRB needed?) * - stencil mode (draw into, mask, count, etc) |