1// Copyright 2019 Google LLC.
2// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3#include "tools/fiddle/examples.h"
4// HASH=53e00899ef2e00e2096daf7a07d9b059
5REG_FIDDLE(Bitmap_getAddr16, 256, 256, true, 3) {
6void draw(SkCanvas* canvas) {
7    SkBitmap bitmap16;
8    SkImageInfo dstInfo = SkImageInfo::Make(source.width(), source.height(), kARGB_4444_SkColorType,
9                     kPremul_SkAlphaType);
10    bitmap16.allocPixels(dstInfo);
11    if (source.readPixels(dstInfo, bitmap16.getPixels(), bitmap16.rowBytes(), 0, 0)) {
12        uint16_t* row0 = bitmap16.getAddr16(0, 0);
13        uint16_t* row1 = bitmap16.getAddr16(0, 1);
14        size_t interval = (row1 - row0) * bitmap16.bytesPerPixel();
15        SkDebugf("addr interval %c= rowBytes\n", interval == bitmap16.rowBytes() ? '=' : '!');
16    }
17}
18}  // END FIDDLE
19