Grok 10.0.5
SIZMarker.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016-2023 Grok Image Compression Inc.
3 *
4 * This source code is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Affero General Public License, version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This source code is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Affero General Public License for more details.
12 *
13 * You should have received a copy of the GNU Affero General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 *
17 * This source code incorporates work covered by the BSD 2-clause license.
18 * Please see the LICENSE file in the root directory for details.
19 *
20 */
21
22#pragma once
23
24namespace grk
25{
26class CodeStreamDecompress;
27class CodeStreamCompress;
28
29class SIZMarker
30{
31 public:
39 bool read(CodeStreamDecompress* codeStream, uint8_t* headerData, uint16_t header_size);
40
48 bool write(CodeStreamCompress* codeStream, BufferedStream* stream);
49
50 private:
51 void subsampleAndReduceHeaderImageComponents(GrkImage* headerImage, const CodingParams* p_cp);
52};
53
54} // namespace grk
BufferedStream * stream
Definition BitIO.h:88
CodeStreamCompress * codeStream
Definition FileFormatCompress.h:60
GrkImage * headerImage
Definition TileProcessor.h:122
Copyright (C) 2016-2023 Grok Image Compression Inc.
Definition ICacheable.h:20