Commit e6f3548a authored by Weiliang Chen's avatar Weiliang Chen Committed by Commit Bot

viz: Avoid Struct Name Collision by Making Nested Classes

This should fix the root issue found when trying to add pixel tests for
SkiaRenderer. This CL puts DrawRPDQParams as nested classes into each
renderer.

Bug: 826970
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: If387abd00afdb19e9498fea843438da8e94aa31b
Reviewed-on: https://chromium-review.googlesource.com/1000543Reviewed-by: default avatarenne <enne@chromium.org>
Commit-Queue: weiliangc <weiliangc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549200}
parent 02d0b527
...@@ -177,8 +177,14 @@ BlendMode BlendModeFromSkXfermode(SkBlendMode mode) { ...@@ -177,8 +177,14 @@ BlendMode BlendModeFromSkXfermode(SkBlendMode mode) {
const float kAntiAliasingEpsilon = 1.0f / 1024.0f; const float kAntiAliasingEpsilon = 1.0f / 1024.0f;
} // anonymous namespace } // anonymous namespace
static GLint GetActiveTextureUnit(GLES2Interface* gl) {
GLint active_unit = 0;
gl->GetIntegerv(GL_ACTIVE_TEXTURE, &active_unit);
return active_unit;
}
// Parameters needed to draw a RenderPassDrawQuad. // Parameters needed to draw a RenderPassDrawQuad.
struct DrawRenderPassDrawQuadParams { struct GLRenderer::DrawRenderPassDrawQuadParams {
DrawRenderPassDrawQuadParams() {} DrawRenderPassDrawQuadParams() {}
~DrawRenderPassDrawQuadParams() { ~DrawRenderPassDrawQuadParams() {
// Don't leak the texture. // Don't leak the texture.
...@@ -262,12 +268,6 @@ struct DrawRenderPassDrawQuadParams { ...@@ -262,12 +268,6 @@ struct DrawRenderPassDrawQuadParams {
gfx::ColorSpace contents_and_bypass_color_space; gfx::ColorSpace contents_and_bypass_color_space;
}; };
static GLint GetActiveTextureUnit(GLES2Interface* gl) {
GLint active_unit = 0;
gl->GetIntegerv(GL_ACTIVE_TEXTURE, &active_unit);
return active_unit;
}
class GLRenderer::ScopedUseGrContext { class GLRenderer::ScopedUseGrContext {
public: public:
static std::unique_ptr<ScopedUseGrContext> Create(GLRenderer* renderer) { static std::unique_ptr<ScopedUseGrContext> Create(GLRenderer* renderer) {
......
...@@ -51,7 +51,6 @@ class DynamicGeometryBinding; ...@@ -51,7 +51,6 @@ class DynamicGeometryBinding;
class ScopedRenderPassTexture; class ScopedRenderPassTexture;
class StaticGeometryBinding; class StaticGeometryBinding;
class TextureDrawQuad; class TextureDrawQuad;
struct DrawRenderPassDrawQuadParams;
// Class that handles drawing of composited render layers using GL. // Class that handles drawing of composited render layers using GL.
class VIZ_SERVICE_EXPORT GLRenderer : public DirectRenderer { class VIZ_SERVICE_EXPORT GLRenderer : public DirectRenderer {
...@@ -168,6 +167,8 @@ class VIZ_SERVICE_EXPORT GLRenderer : public DirectRenderer { ...@@ -168,6 +167,8 @@ class VIZ_SERVICE_EXPORT GLRenderer : public DirectRenderer {
int frames_waiting_for_reuse = 0; int frames_waiting_for_reuse = 0;
}; };
struct DrawRenderPassDrawQuadParams;
// If any of the following functions returns false, then it means that drawing // If any of the following functions returns false, then it means that drawing
// is not possible. // is not possible.
bool InitializeRPDQParameters(DrawRenderPassDrawQuadParams* params); bool InitializeRPDQParameters(DrawRenderPassDrawQuadParams* params);
......
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
namespace viz { namespace viz {
// Parameters needed to draw a RenderPassDrawQuad. // Parameters needed to draw a RenderPassDrawQuad.
struct DrawRenderPassDrawQuadParams { struct SkiaRenderer::DrawRenderPassDrawQuadParams {
// The "in" parameters that will be used when apply filters. // The "in" parameters that will be used when apply filters.
const cc::FilterOperations* filters = nullptr; const cc::FilterOperations* filters = nullptr;
const cc::FilterOperations* background_filters = nullptr; const cc::FilterOperations* background_filters = nullptr;
......
...@@ -26,7 +26,6 @@ class PictureDrawQuad; ...@@ -26,7 +26,6 @@ class PictureDrawQuad;
class SolidColorDrawQuad; class SolidColorDrawQuad;
class TextureDrawQuad; class TextureDrawQuad;
class TileDrawQuad; class TileDrawQuad;
struct DrawRenderPassDrawQuadParams;
class VIZ_SERVICE_EXPORT SkiaRenderer : public DirectRenderer { class VIZ_SERVICE_EXPORT SkiaRenderer : public DirectRenderer {
public: public:
...@@ -73,6 +72,8 @@ class VIZ_SERVICE_EXPORT SkiaRenderer : public DirectRenderer { ...@@ -73,6 +72,8 @@ class VIZ_SERVICE_EXPORT SkiaRenderer : public DirectRenderer {
void GenerateMipmap() override; void GenerateMipmap() override;
private: private:
struct DrawRenderPassDrawQuadParams;
void ClearCanvas(SkColor color); void ClearCanvas(SkColor color);
void ClearFramebuffer(); void ClearFramebuffer();
void SetClipRect(const gfx::Rect& rect); void SetClipRect(const gfx::Rect& rect);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment