Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(546)

Side by Side Diff: src/effects/SkMorphologyImageFilter.cpp

Issue 148883011: Make SkImageFilter methods const. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: More fixes to gm/ Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/effects/SkMergeImageFilter.cpp ('k') | src/effects/SkOffsetImageFilter.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 The Android Open Source Project 2 * Copyright 2012 The Android Open Source Project
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SkMorphologyImageFilter.h" 8 #include "SkMorphologyImageFilter.h"
9 #include "SkBitmap.h" 9 #include "SkBitmap.h"
10 #include "SkColorPriv.h" 10 #include "SkColorPriv.h"
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 radiusY, bounds.height(), bounds.width(), 136 radiusY, bounds.height(), bounds.width(),
137 src.rowBytesAsPixels(), dst->rowBytesAsPixels()); 137 src.rowBytesAsPixels(), dst->rowBytesAsPixels());
138 } 138 }
139 139
140 bool SkMorphologyImageFilter::filterImageGeneric(SkMorphologyImageFilter::Proc p rocX, 140 bool SkMorphologyImageFilter::filterImageGeneric(SkMorphologyImageFilter::Proc p rocX,
141 SkMorphologyImageFilter::Proc p rocY, 141 SkMorphologyImageFilter::Proc p rocY,
142 Proxy* proxy, 142 Proxy* proxy,
143 const SkBitmap& source, 143 const SkBitmap& source,
144 const SkMatrix& ctm, 144 const SkMatrix& ctm,
145 SkBitmap* dst, 145 SkBitmap* dst,
146 SkIPoint* offset) { 146 SkIPoint* offset) const {
147 SkBitmap src = source; 147 SkBitmap src = source;
148 SkIPoint srcOffset = SkIPoint::Make(0, 0); 148 SkIPoint srcOffset = SkIPoint::Make(0, 0);
149 if (getInput(0) && !getInput(0)->filterImage(proxy, source, ctm, &src, &srcO ffset)) { 149 if (getInput(0) && !getInput(0)->filterImage(proxy, source, ctm, &src, &srcO ffset)) {
150 return false; 150 return false;
151 } 151 }
152 152
153 if (src.config() != SkBitmap::kARGB_8888_Config) { 153 if (src.config() != SkBitmap::kARGB_8888_Config) {
154 return false; 154 return false;
155 } 155 }
156 156
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 } else if (height > 0) { 207 } else if (height > 0) {
208 callProcY(procY, src, dst, height, srcBounds); 208 callProcY(procY, src, dst, height, srcBounds);
209 } 209 }
210 offset->fX = bounds.left(); 210 offset->fX = bounds.left();
211 offset->fY = bounds.top(); 211 offset->fY = bounds.top();
212 return true; 212 return true;
213 } 213 }
214 214
215 bool SkErodeImageFilter::onFilterImage(Proxy* proxy, 215 bool SkErodeImageFilter::onFilterImage(Proxy* proxy,
216 const SkBitmap& source, const SkMatrix& c tm, 216 const SkBitmap& source, const SkMatrix& c tm,
217 SkBitmap* dst, SkIPoint* offset) { 217 SkBitmap* dst, SkIPoint* offset) const {
218 Proc erodeXProc = SkMorphologyGetPlatformProc(kErodeX_SkMorphologyProcType); 218 Proc erodeXProc = SkMorphologyGetPlatformProc(kErodeX_SkMorphologyProcType);
219 if (!erodeXProc) { 219 if (!erodeXProc) {
220 erodeXProc = erode<kX>; 220 erodeXProc = erode<kX>;
221 } 221 }
222 Proc erodeYProc = SkMorphologyGetPlatformProc(kErodeY_SkMorphologyProcType); 222 Proc erodeYProc = SkMorphologyGetPlatformProc(kErodeY_SkMorphologyProcType);
223 if (!erodeYProc) { 223 if (!erodeYProc) {
224 erodeYProc = erode<kY>; 224 erodeYProc = erode<kY>;
225 } 225 }
226 return this->filterImageGeneric(erodeXProc, erodeYProc, proxy, source, ctm, dst, offset); 226 return this->filterImageGeneric(erodeXProc, erodeYProc, proxy, source, ctm, dst, offset);
227 } 227 }
228 228
229 bool SkDilateImageFilter::onFilterImage(Proxy* proxy, 229 bool SkDilateImageFilter::onFilterImage(Proxy* proxy,
230 const SkBitmap& source, const SkMatrix& ctm, 230 const SkBitmap& source, const SkMatrix& ctm,
231 SkBitmap* dst, SkIPoint* offset) { 231 SkBitmap* dst, SkIPoint* offset) const {
232 Proc dilateXProc = SkMorphologyGetPlatformProc(kDilateX_SkMorphologyProcType ); 232 Proc dilateXProc = SkMorphologyGetPlatformProc(kDilateX_SkMorphologyProcType );
233 if (!dilateXProc) { 233 if (!dilateXProc) {
234 dilateXProc = dilate<kX>; 234 dilateXProc = dilate<kX>;
235 } 235 }
236 Proc dilateYProc = SkMorphologyGetPlatformProc(kDilateY_SkMorphologyProcType ); 236 Proc dilateYProc = SkMorphologyGetPlatformProc(kDilateY_SkMorphologyProcType );
237 if (!dilateYProc) { 237 if (!dilateYProc) {
238 dilateYProc = dilate<kY>; 238 dilateYProc = dilate<kY>;
239 } 239 }
240 return this->filterImageGeneric(dilateXProc, dilateYProc, proxy, source, ctm , dst, offset); 240 return this->filterImageGeneric(dilateXProc, dilateYProc, proxy, source, ctm , dst, offset);
241 } 241 }
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 return SkImageFilterUtils::WrapTexture(src, rect.width(), rect.height(), dst ); 533 return SkImageFilterUtils::WrapTexture(src, rect.width(), rect.height(), dst );
534 } 534 }
535 535
536 }; 536 };
537 537
538 bool SkMorphologyImageFilter::filterImageGPUGeneric(bool dilate, 538 bool SkMorphologyImageFilter::filterImageGPUGeneric(bool dilate,
539 Proxy* proxy, 539 Proxy* proxy,
540 const SkBitmap& src, 540 const SkBitmap& src,
541 const SkMatrix& ctm, 541 const SkMatrix& ctm,
542 SkBitmap* result, 542 SkBitmap* result,
543 SkIPoint* offset) { 543 SkIPoint* offset) const {
544 SkBitmap input; 544 SkBitmap input;
545 SkIPoint srcOffset = SkIPoint::Make(0, 0); 545 SkIPoint srcOffset = SkIPoint::Make(0, 0);
546 if (!SkImageFilterUtils::GetInputResultGPU(getInput(0), proxy, src, ctm, &in put, &srcOffset)) { 546 if (!SkImageFilterUtils::GetInputResultGPU(getInput(0), proxy, src, ctm, &in put, &srcOffset)) {
547 return false; 547 return false;
548 } 548 }
549 SkIRect bounds; 549 SkIRect bounds;
550 input.getBounds(&bounds); 550 input.getBounds(&bounds);
551 bounds.offset(srcOffset); 551 bounds.offset(srcOffset);
552 if (!this->applyCropRect(&bounds, ctm)) { 552 if (!this->applyCropRect(&bounds, ctm)) {
553 return false; 553 return false;
(...skipping 21 matching lines...) Expand all
575 if (!apply_morphology(input, srcBounds, type, 575 if (!apply_morphology(input, srcBounds, type,
576 SkISize::Make(width, height), result)) { 576 SkISize::Make(width, height), result)) {
577 return false; 577 return false;
578 } 578 }
579 offset->fX = bounds.left(); 579 offset->fX = bounds.left();
580 offset->fY = bounds.top(); 580 offset->fY = bounds.top();
581 return true; 581 return true;
582 } 582 }
583 583
584 bool SkDilateImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, cons t SkMatrix& ctm, 584 bool SkDilateImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, cons t SkMatrix& ctm,
585 SkBitmap* result, SkIPoint* offset) { 585 SkBitmap* result, SkIPoint* offset) con st {
586 return this->filterImageGPUGeneric(true, proxy, src, ctm, result, offset); 586 return this->filterImageGPUGeneric(true, proxy, src, ctm, result, offset);
587 } 587 }
588 588
589 bool SkErodeImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, const SkMatrix& ctm, 589 bool SkErodeImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, const SkMatrix& ctm,
590 SkBitmap* result, SkIPoint* offset) { 590 SkBitmap* result, SkIPoint* offset) cons t {
591 return this->filterImageGPUGeneric(false, proxy, src, ctm, result, offset); 591 return this->filterImageGPUGeneric(false, proxy, src, ctm, result, offset);
592 } 592 }
593 593
594 #endif 594 #endif
OLDNEW
« no previous file with comments | « src/effects/SkMergeImageFilter.cpp ('k') | src/effects/SkOffsetImageFilter.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698