2 * Copyright 2014 Google Inc.
3 * Copyright 2015 Xamarin Inc.
4 * Copyright 2017 Bluebeam Inc.
5 * Copyright 2017 Microsoft Corporation. All rights reserved.
7 * Use of this source code is governed by a BSD-style license that can be
8 * found in the LICENSE file.
15 #include "sk_types_priv.h"
17 uint8_t* sk_mask_alloc_image(size_t bytes) {
18 return SkMask::AllocImage(bytes);
21 void sk_mask_free_image(void* image) {
22 SkMask::FreeImage(image);
25 bool sk_mask_is_empty(sk_mask_t* cmask) {
26 return AsMask(cmask)->isEmpty();
29 size_t sk_mask_compute_image_size(sk_mask_t* cmask) {
30 return AsMask(cmask)->computeImageSize();
33 size_t sk_mask_compute_total_image_size(sk_mask_t* cmask) {
34 return AsMask(cmask)->computeTotalImageSize();
37 uint8_t sk_mask_get_addr_1(sk_mask_t* cmask, int x, int y) {
38 return *(AsMask(cmask)->getAddr1(x, y));
41 uint8_t sk_mask_get_addr_8(sk_mask_t* cmask, int x, int y) {
42 return *(AsMask(cmask)->getAddr8(x, y));
45 uint16_t sk_mask_get_addr_lcd_16(sk_mask_t* cmask, int x, int y) {
46 return *(AsMask(cmask)->getAddrLCD16(x, y));
49 uint32_t sk_mask_get_addr_32(sk_mask_t* cmask, int x, int y) {
50 return *(AsMask(cmask)->getAddr32(x, y));
53 void* sk_mask_get_addr(sk_mask_t* cmask, int x, int y) {
54 return AsMask(cmask)->getAddr(x, y);