Flutter Engine
The Flutter Engine
third_party
skia
client_utils
android
BitmapRegionDecoder.h
Go to the documentation of this file.
1
/*
2
* Copyright 2015 Google Inc.
3
*
4
* Use of this source code is governed by a BSD-style license that can be
5
* found in the LICENSE file.
6
*/
7
8
#ifndef BitmapRegionDecoder_DEFINED
9
#define BitmapRegionDecoder_DEFINED
10
11
#include "
client_utils/android/BRDAllocator.h
"
12
#include "
include/codec/SkAndroidCodec.h
"
13
#include "
include/core/SkBitmap.h
"
14
#include "
include/core/SkData.h
"
15
16
namespace
android
{
17
namespace
skia
{
18
19
class
BitmapRegionDecoder
final {
20
public
:
21
static
std::unique_ptr<BitmapRegionDecoder>
Make
(
sk_sp<SkData>
data
);
22
23
bool
decodeRegion
(
SkBitmap
*
bitmap
,
24
BRDAllocator
* allocator,
25
const
SkIRect
& desiredSubset,
26
int
sampleSize,
27
SkColorType
colorType
,
28
bool
requireUnpremul,
29
sk_sp<SkColorSpace>
prefColorSpace);
30
31
SkEncodedImageFormat
getEncodedFormat
() {
return
fCodec->getEncodedFormat(); }
32
33
SkColorType
computeOutputColorType
(
SkColorType
requestedColorType) {
34
return
fCodec->computeOutputColorType(requestedColorType);
35
}
36
37
sk_sp<SkColorSpace>
computeOutputColorSpace
(
SkColorType
outputColorType,
38
sk_sp<SkColorSpace>
prefColorSpace =
nullptr
) {
39
return
fCodec->computeOutputColorSpace(outputColorType, std::move(prefColorSpace));
40
}
41
42
int
width
()
const
;
43
int
height
()
const
;
44
45
bool
getAndroidGainmap
(
SkGainmapInfo
* outInfo,
46
std::unique_ptr<SkStream>* outGainmapImageStream) {
47
return
fCodec->getAndroidGainmap(outInfo, outGainmapImageStream);
48
}
49
50
private
:
51
BitmapRegionDecoder
(std::unique_ptr<SkAndroidCodec> codec);
52
53
std::unique_ptr<SkAndroidCodec> fCodec;
54
};
55
56
}
// namespace skia
57
}
// namespace android
58
#endif
// BitmapRegionDecoder_DEFINED
BRDAllocator.h
SkAndroidCodec.h
SkBitmap.h
SkColorType
SkColorType
Definition:
SkColorType.h:19
SkData.h
SkEncodedImageFormat
SkEncodedImageFormat
Definition:
SkEncodedImageFormat.h:16
colorType
static SkColorType colorType(AImageDecoder *decoder, const AImageDecoderHeaderInfo *headerInfo)
Definition:
SkImageGeneratorNDK.cpp:53
SkBitmap
Definition:
SkBitmap.h:59
android::skia::BRDAllocator
Definition:
BRDAllocator.h:22
android::skia::BitmapRegionDecoder
Definition:
BitmapRegionDecoder.h:19
android::skia::BitmapRegionDecoder::decodeRegion
bool decodeRegion(SkBitmap *bitmap, BRDAllocator *allocator, const SkIRect &desiredSubset, int sampleSize, SkColorType colorType, bool requireUnpremul, sk_sp< SkColorSpace > prefColorSpace)
Definition:
BitmapRegionDecoder.cpp:49
android::skia::BitmapRegionDecoder::Make
static std::unique_ptr< BitmapRegionDecoder > Make(sk_sp< SkData > data)
Definition:
BitmapRegionDecoder.cpp:17
android::skia::BitmapRegionDecoder::getEncodedFormat
SkEncodedImageFormat getEncodedFormat()
Definition:
BitmapRegionDecoder.h:31
android::skia::BitmapRegionDecoder::getAndroidGainmap
bool getAndroidGainmap(SkGainmapInfo *outInfo, std::unique_ptr< SkStream > *outGainmapImageStream)
Definition:
BitmapRegionDecoder.h:45
android::skia::BitmapRegionDecoder::width
int width() const
Definition:
BitmapRegionDecoder.cpp:41
android::skia::BitmapRegionDecoder::height
int height() const
Definition:
BitmapRegionDecoder.cpp:45
android::skia::BitmapRegionDecoder::computeOutputColorSpace
sk_sp< SkColorSpace > computeOutputColorSpace(SkColorType outputColorType, sk_sp< SkColorSpace > prefColorSpace=nullptr)
Definition:
BitmapRegionDecoder.h:37
android::skia::BitmapRegionDecoder::computeOutputColorType
SkColorType computeOutputColorType(SkColorType requestedColorType)
Definition:
BitmapRegionDecoder.h:33
sk_sp< SkData >
android
Definition:
BitmapRegionDecoder.cpp:14
bitmap
Definition:
bitmap.py:1
skia
Definition:
DartTypes.h:13
SkGainmapInfo
Definition:
SkGainmapInfo.h:43
SkIRect
Definition:
SkRect.h:32
data
std::shared_ptr< const fml::Mapping > data
Definition:
texture_gles.cc:63
Generated on Sun Jun 23 2024 21:55:54 for Flutter Engine by
1.9.4