Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
SkJpegGainmapEncoder.h
Go to the documentation of this file.
1/*
2 * Copyright 2023 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 SkJpegGainmapEncoder_DEFINED
9#define SkJpegGainmapEncoder_DEFINED
10
12
13class SkPixmap;
14class SkWStream;
15struct SkGainmapInfo;
16
18public:
19 /**
20 * Encode an UltraHDR image to |dst|.
21 *
22 * The base image is specified by |base|, and |baseOptions| controls the encoding behavior for
23 * the base image.
24 *
25 * The gainmap image is specified by |gainmap|, and |gainmapOptions| controls the encoding
26 * behavior for the gainmap image.
27 *
28 * The rendering behavior of the gainmap image is provided in |gainmapInfo|.
29 *
30 * If |baseOptions| or |gainmapOptions| specify XMP metadata, then that metadata will be
31 * overwritten.
32 *
33 * Returns true on success. Returns false on an invalid or unsupported |src|.
34 */
35 static bool EncodeHDRGM(SkWStream* dst,
36 const SkPixmap& base,
37 const SkJpegEncoder::Options& baseOptions,
38 const SkPixmap& gainmap,
39 const SkJpegEncoder::Options& gainmapOptions,
40 const SkGainmapInfo& gainmapInfo);
41
42 /**
43 * Write a Multi Picture Format containing the |imageCount| images specified by |images|.
44 */
45 static bool MakeMPF(SkWStream* dst, const SkData** images, size_t imageCount);
46};
47
48#endif
#define SK_API
Definition SkAPI.h:35
std::array< MockImage, 3 > images