| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2011 Google Inc. | 2 * Copyright 2011 Google Inc. |
| 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 "SkBitmap.h" | 8 #include "SkBitmap.h" |
| 9 #include "SkRect.h" | 9 #include "SkRect.h" |
| 10 #include "SkTemplates.h" |
| 10 #include "Test.h" | 11 #include "Test.h" |
| 11 | 12 |
| 12 static const char* boolStr(bool value) { | 13 static const char* boolStr(bool value) { |
| 13 return value ? "true" : "false"; | 14 return value ? "true" : "false"; |
| 14 } | 15 } |
| 15 | 16 |
| 16 // these are in the same order as the SkColorType enum | 17 // these are in the same order as the SkColorType enum |
| 17 static const char* gColorTypeName[] = { | 18 static const char* gColorTypeName[] = { |
| 18 "None", "A8", "565", "4444", "RGBA", "BGRA", "Index8" | 19 "None", "A8", "565", "4444", "RGBA", "BGRA", "Index8" |
| 19 }; | 20 }; |
| (...skipping 393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 | 414 |
| 414 // Not all configurations will generate a valid 'subset'. | 415 // Not all configurations will generate a valid 'subset'. |
| 415 if (srcReady) { | 416 if (srcReady) { |
| 416 | 417 |
| 417 // Allocate our target buffer 'buf' for all copies. | 418 // Allocate our target buffer 'buf' for all copies. |
| 418 // To simplify verifying correctness of copies attach | 419 // To simplify verifying correctness of copies attach |
| 419 // buf to a SkBitmap, but copies are done using the | 420 // buf to a SkBitmap, but copies are done using the |
| 420 // raw buffer pointer. | 421 // raw buffer pointer. |
| 421 const size_t bufSize = subH * | 422 const size_t bufSize = subH * |
| 422 SkColorTypeMinRowBytes(src.colorType(), subW) * 2; | 423 SkColorTypeMinRowBytes(src.colorType(), subW) * 2; |
| 423 SkAutoMalloc autoBuf (bufSize); | 424 SkAutoTMalloc<uint8_t> autoBuf (bufSize); |
| 424 uint8_t* buf = static_cast<uint8_t*>(autoBuf.get()); | 425 uint8_t* buf = autoBuf.get(); |
| 425 | 426 |
| 426 SkBitmap bufBm; // Attach buf to this bitmap. | 427 SkBitmap bufBm; // Attach buf to this bitmap. |
| 427 bool successExpected; | 428 bool successExpected; |
| 428 | 429 |
| 429 // Set up values for each pixel being copied. | 430 // Set up values for each pixel being copied. |
| 430 Coordinates coords(subW * subH); | 431 Coordinates coords(subW * subH); |
| 431 for (int x = 0; x < subW; ++x) | 432 for (int x = 0; x < subW; ++x) |
| 432 for (int y = 0; y < subH; ++y) | 433 for (int y = 0; y < subH; ++y) |
| 433 { | 434 { |
| 434 int index = y * subW + x; | 435 int index = y * subW + x; |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 REPORTER_ASSERT(reporter, check_4x4_pixel(dstC, sx, sy))
; | 625 REPORTER_ASSERT(reporter, check_4x4_pixel(dstC, sx, sy))
; |
| 625 } else { | 626 } else { |
| 626 REPORTER_ASSERT(reporter, 0 == dstC); | 627 REPORTER_ASSERT(reporter, 0 == dstC); |
| 627 } | 628 } |
| 628 } | 629 } |
| 629 } | 630 } |
| 630 } | 631 } |
| 631 } | 632 } |
| 632 } | 633 } |
| 633 | 634 |
| OLD | NEW |