| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #include "SkRegionPriv.h" | 10 #include "SkRegionPriv.h" |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 SkRegion& SkRegion::operator=(const SkRegion& src) { | 117 SkRegion& SkRegion::operator=(const SkRegion& src) { |
| 118 (void)this->setRegion(src); | 118 (void)this->setRegion(src); |
| 119 return *this; | 119 return *this; |
| 120 } | 120 } |
| 121 | 121 |
| 122 void SkRegion::swap(SkRegion& other) { | 122 void SkRegion::swap(SkRegion& other) { |
| 123 SkTSwap<SkIRect>(fBounds, other.fBounds); | 123 SkTSwap<SkIRect>(fBounds, other.fBounds); |
| 124 SkTSwap<RunHead*>(fRunHead, other.fRunHead); | 124 SkTSwap<RunHead*>(fRunHead, other.fRunHead); |
| 125 } | 125 } |
| 126 | 126 |
| 127 int SkRegion::computeRegionComplexity() const { |
| 128 if (this->isEmpty()) { |
| 129 return 0; |
| 130 } else if (this->isRect()) { |
| 131 return 1; |
| 132 } |
| 133 return fRunHead->getIntervalCount(); |
| 134 } |
| 135 |
| 127 bool SkRegion::setEmpty() { | 136 bool SkRegion::setEmpty() { |
| 128 this->freeRuns(); | 137 this->freeRuns(); |
| 129 fBounds.set(0, 0, 0, 0); | 138 fBounds.set(0, 0, 0, 0); |
| 130 fRunHead = SkRegion_gEmptyRunHeadPtr; | 139 fRunHead = SkRegion_gEmptyRunHeadPtr; |
| 131 return false; | 140 return false; |
| 132 } | 141 } |
| 133 | 142 |
| 134 bool SkRegion::setRect(int32_t left, int32_t top, | 143 bool SkRegion::setRect(int32_t left, int32_t top, |
| 135 int32_t right, int32_t bottom) { | 144 int32_t right, int32_t bottom) { |
| 136 if (left >= right || top >= bottom) { | 145 if (left >= right || top >= bottom) { |
| (...skipping 1326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1463 bool SkRegion::debugSetRuns(const RunType runs[], int count) { | 1472 bool SkRegion::debugSetRuns(const RunType runs[], int count) { |
| 1464 // we need to make a copy, since the real method may modify the array, and | 1473 // we need to make a copy, since the real method may modify the array, and |
| 1465 // so it cannot be const. | 1474 // so it cannot be const. |
| 1466 | 1475 |
| 1467 SkAutoTArray<RunType> storage(count); | 1476 SkAutoTArray<RunType> storage(count); |
| 1468 memcpy(storage.get(), runs, count * sizeof(RunType)); | 1477 memcpy(storage.get(), runs, count * sizeof(RunType)); |
| 1469 return this->setRuns(storage.get(), count); | 1478 return this->setRuns(storage.get(), count); |
| 1470 } | 1479 } |
| 1471 | 1480 |
| 1472 #endif | 1481 #endif |
| OLD | NEW |