Grok 10.0.5
T2Decompress.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 */
18
19#pragma once
20
21namespace grk
22{
23struct TileProcessor;
24
28struct T2Decompress
29{
30 T2Decompress(TileProcessor* tileProc);
31 virtual ~T2Decompress(void) = default;
32 void decompressPackets(uint16_t tileno, SparseBuffer* src, bool* truncated);
33
34 private:
35 TileProcessor* tileProcessor;
36 void decompressPacket(PacketParser* parser, bool skipData);
37 bool processPacket(uint16_t compno, uint8_t resno, uint64_t precinctIndex, uint16_t layno,
38 SparseBuffer* src);
39 void readPacketData(Resolution* res, PacketParser* parser, uint64_t precinctIndex, bool defer);
40};
41
42} // namespace grk
uint64_t precinctIndex
Definition BlockExec.h:78
uint8_t resno
Definition BlockExec.h:53
uint16_t layno
Definition PacketIter.h:259
uint16_t tileno
Definition PacketManager.h:96
TileProcessor * tileProcessor
Definition PacketManager.h:100
bool truncated
Definition TileProcessor.h:172
Copyright (C) 2016-2023 Grok Image Compression Inc.
Definition ICacheable.h:20
uint16_t compno
Definition plugin_interface.h:43