| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2008 The Android Open Source Project | 3 * Copyright 2008 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 "SkBitmap.h" | 10 #include "SkBitmap.h" |
| (...skipping 480 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 491 } | 491 } |
| 492 | 492 |
| 493 void SkBitmap::setIsVolatile(bool isVolatile) { | 493 void SkBitmap::setIsVolatile(bool isVolatile) { |
| 494 if (isVolatile) { | 494 if (isVolatile) { |
| 495 fFlags |= kImageIsVolatile_Flag; | 495 fFlags |= kImageIsVolatile_Flag; |
| 496 } else { | 496 } else { |
| 497 fFlags &= ~kImageIsVolatile_Flag; | 497 fFlags &= ~kImageIsVolatile_Flag; |
| 498 } | 498 } |
| 499 } | 499 } |
| 500 | 500 |
| 501 bool SkBitmap::is3DLut() const { |
| 502 return (fFlags & kIs3DLut_Flag) != 0; |
| 503 } |
| 504 |
| 505 void SkBitmap::setIs3DLut(bool is3DLut) { |
| 506 if (is3DLut && ((width() * width()) == height())) { |
| 507 fFlags |= kIs3DLut_Flag; |
| 508 } else { |
| 509 fFlags &= ~kIs3DLut_Flag; |
| 510 } |
| 511 } |
| 512 |
| 501 void* SkBitmap::getAddr(int x, int y) const { | 513 void* SkBitmap::getAddr(int x, int y) const { |
| 502 SkASSERT((unsigned)x < (unsigned)this->width()); | 514 SkASSERT((unsigned)x < (unsigned)this->width()); |
| 503 SkASSERT((unsigned)y < (unsigned)this->height()); | 515 SkASSERT((unsigned)y < (unsigned)this->height()); |
| 504 | 516 |
| 505 char* base = (char*)this->getPixels(); | 517 char* base = (char*)this->getPixels(); |
| 506 if (base) { | 518 if (base) { |
| 507 base += y * this->rowBytes(); | 519 base += y * this->rowBytes(); |
| 508 switch (this->colorType()) { | 520 switch (this->colorType()) { |
| 509 case kRGBA_8888_SkColorType: | 521 case kRGBA_8888_SkColorType: |
| 510 case kBGRA_8888_SkColorType: | 522 case kBGRA_8888_SkColorType: |
| (...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1311 // colorTypes report opaque for their alphatype | 1323 // colorTypes report opaque for their alphatype |
| 1312 if (kRGB_565_SkColorType == fInfo.colorType()) { | 1324 if (kRGB_565_SkColorType == fInfo.colorType()) { |
| 1313 SkASSERT(kOpaque_SkAlphaType == fInfo.alphaType()); | 1325 SkASSERT(kOpaque_SkAlphaType == fInfo.alphaType()); |
| 1314 } | 1326 } |
| 1315 | 1327 |
| 1316 SkASSERT(fInfo.validRowBytes(fRowBytes)); | 1328 SkASSERT(fInfo.validRowBytes(fRowBytes)); |
| 1317 uint8_t allFlags = kImageIsVolatile_Flag; | 1329 uint8_t allFlags = kImageIsVolatile_Flag; |
| 1318 #ifdef SK_BUILD_FOR_ANDROID | 1330 #ifdef SK_BUILD_FOR_ANDROID |
| 1319 allFlags |= kHasHardwareMipMap_Flag; | 1331 allFlags |= kHasHardwareMipMap_Flag; |
| 1320 #endif | 1332 #endif |
| 1333 allFlags |= kIs3DLut_Flag; |
| 1321 SkASSERT((~allFlags & fFlags) == 0); | 1334 SkASSERT((~allFlags & fFlags) == 0); |
| 1322 SkASSERT(fPixelLockCount >= 0); | 1335 SkASSERT(fPixelLockCount >= 0); |
| 1323 | 1336 |
| 1324 if (fPixels) { | 1337 if (fPixels) { |
| 1325 SkASSERT(fPixelRef); | 1338 SkASSERT(fPixelRef); |
| 1326 SkASSERT(fPixelLockCount > 0); | 1339 SkASSERT(fPixelLockCount > 0); |
| 1327 SkASSERT(fPixelRef->isLocked()); | 1340 SkASSERT(fPixelRef->isLocked()); |
| 1328 SkASSERT(fPixelRef->rowBytes() == fRowBytes); | 1341 SkASSERT(fPixelRef->rowBytes() == fRowBytes); |
| 1329 SkASSERT(fPixelRefOrigin.fX >= 0); | 1342 SkASSERT(fPixelRefOrigin.fX >= 0); |
| 1330 SkASSERT(fPixelRefOrigin.fY >= 0); | 1343 SkASSERT(fPixelRefOrigin.fY >= 0); |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1380 /////////////////////////////////////////////////////////////////////////////// | 1393 /////////////////////////////////////////////////////////////////////////////// |
| 1381 | 1394 |
| 1382 #ifdef SK_DEBUG | 1395 #ifdef SK_DEBUG |
| 1383 void SkImageInfo::validate() const { | 1396 void SkImageInfo::validate() const { |
| 1384 SkASSERT(fWidth >= 0); | 1397 SkASSERT(fWidth >= 0); |
| 1385 SkASSERT(fHeight >= 0); | 1398 SkASSERT(fHeight >= 0); |
| 1386 SkASSERT(SkColorTypeIsValid(fColorType)); | 1399 SkASSERT(SkColorTypeIsValid(fColorType)); |
| 1387 SkASSERT(SkAlphaTypeIsValid(fAlphaType)); | 1400 SkASSERT(SkAlphaTypeIsValid(fAlphaType)); |
| 1388 } | 1401 } |
| 1389 #endif | 1402 #endif |
| OLD | NEW |