Commit 640a12be authored by Michael Ludwig's avatar Michael Ludwig Committed by Commit Bot

SkiaRenderer: Add const modifiers to support functions

Just a minor clean up to some of the internal drawing/prep functions
that don't actually modify SkiaRenderer itself.

CalculateRPDQParams cannot be const because it needs to create
ScopedSkImageBuilders, which don't work with const SkiaRenderer*'s.

Bug: 1013735
Change-Id: Ic3bddd6cea28dfaf4b977ebef77e1ced4eea6089
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863629
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: default avatarweiliangc <weiliangc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#712669}
parent 9ca028a9
......@@ -1253,7 +1253,7 @@ SkiaRenderer::DrawQuadParams SkiaRenderer::CalculateDrawQuadParams(
const gfx::Transform& target_to_device,
const gfx::Rect* scissor_rect,
const DrawQuad* quad,
const gfx::QuadF* draw_region) {
const gfx::QuadF* draw_region) const {
DrawQuadParams params(
target_to_device * quad->shared_quad_state->quad_to_target_transform,
gfx::RectF(quad->visible_rect), SkCanvas::kNone_QuadAAFlags,
......@@ -1392,7 +1392,7 @@ const DrawQuad* SkiaRenderer::CanPassBeDrawnDirectly(const RenderPass* pass) {
SkiaRenderer::BypassMode SkiaRenderer::CalculateBypassParams(
const DrawQuad* bypass_quad,
DrawRPDQParams* rpdq_params,
DrawQuadParams* params) {
DrawQuadParams* params) const {
// Depending on bypass_quad's blend mode, its content may be irrelevant
if (RenderPassRemainsTransparent(
bypass_quad->shared_quad_state->blend_mode)) {
......@@ -1469,9 +1469,10 @@ SkiaRenderer::BypassMode SkiaRenderer::CalculateBypassParams(
return BypassMode::kDrawBypassQuad;
}
SkCanvas::ImageSetEntry SkiaRenderer::MakeEntry(const SkImage* image,
int matrix_index,
const DrawQuadParams& params) {
SkCanvas::ImageSetEntry SkiaRenderer::MakeEntry(
const SkImage* image,
int matrix_index,
const DrawQuadParams& params) const {
return SkCanvas::ImageSetEntry(
{sk_ref_sp(image), gfx::RectFToSkRect(params.vis_tex_coords),
gfx::RectFToSkRect(params.visible_rect), matrix_index, params.opacity,
......@@ -1481,7 +1482,7 @@ SkCanvas::ImageSetEntry SkiaRenderer::MakeEntry(const SkImage* image,
SkCanvas::SrcRectConstraint SkiaRenderer::ResolveTextureConstraints(
const SkImage* image,
const gfx::RectF& valid_texel_bounds,
DrawQuadParams* params) {
DrawQuadParams* params) const {
if (params->aa_flags == SkCanvas::kNone_QuadAAFlags &&
params->filter_quality == kNone_SkFilterQuality) {
// Non-AA and no bilinear filtering so rendering won't filter outside the
......@@ -1523,7 +1524,7 @@ SkCanvas::SrcRectConstraint SkiaRenderer::ResolveTextureConstraints(
bool SkiaRenderer::MustFlushBatchedQuads(const DrawQuad* new_quad,
const DrawRPDQParams* rpdq_params,
const DrawQuadParams& params) {
const DrawQuadParams& params) const {
if (batched_quads_.empty())
return false;
......
......@@ -127,28 +127,28 @@ class VIZ_SERVICE_EXPORT SkiaRenderer : public DirectRenderer {
DrawQuadParams CalculateDrawQuadParams(const gfx::Transform& target_to_device,
const gfx::Rect* scissor_rect,
const DrawQuad* quad,
const gfx::QuadF* draw_region);
const gfx::QuadF* draw_region) const;
DrawRPDQParams CalculateRPDQParams(const RenderPassDrawQuad* quad,
DrawQuadParams* params);
// Modifies |params| and |rpdq_params| to apply correctly when drawing the
// RenderPass directly via |bypass_quad|.
BypassMode CalculateBypassParams(const DrawQuad* bypass_quad,
DrawRPDQParams* rpdq_params,
DrawQuadParams* params);
DrawQuadParams* params) const;
SkCanvas::ImageSetEntry MakeEntry(const SkImage* image,
int matrix_index,
const DrawQuadParams& params);
const DrawQuadParams& params) const;
// Returns overall constraint to pass to Skia, and modifies |params| to
// emulate content area clamping different from the provided texture coords.
SkCanvas::SrcRectConstraint ResolveTextureConstraints(
const SkImage* image,
const gfx::RectF& valid_texel_bounds,
DrawQuadParams* params);
DrawQuadParams* params) const;
bool MustFlushBatchedQuads(const DrawQuad* new_quad,
const DrawRPDQParams* rpdq_params,
const DrawQuadParams& params);
const DrawQuadParams& params) const;
void AddQuadToBatch(const SkImage* image,
const gfx::RectF& valid_texel_bounds,
DrawQuadParams* params);
......
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