Grok  7.6.0
T2Decode.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016-2020 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 
21 #include <T2.h>
22 
23 namespace grk {
24 
25 struct TileProcessor;
26 
35 
39 struct T2Decode : public T2 {
40  T2Decode(TileProcessor *tileProc);
41 
49  bool decode_packets(uint16_t tileno, ChunkBuffer *src_buf,
50  uint64_t *data_read);
51 
52 private:
63  uint64_t *data_read);
64 
65  bool skip_packet(TileCodingParams *p_tcp, PacketIter *p_pi, ChunkBuffer *src_buf,
66  uint64_t *p_data_read);
67 
69  bool *p_is_data_present, ChunkBuffer *src_buf,
70  uint64_t *p_data_read);
71 
73  ChunkBuffer *src_buf, uint64_t *p_data_read);
74 
76  uint64_t *p_data_read, uint64_t max_length);
77 
78 };
79 
80 }
T2.h
Implementation of a tier-2 coding (packetization of code-block data) (T2)
grk::T2Decode::decode_packets
bool decode_packets(uint16_t tileno, ChunkBuffer *src_buf, uint64_t *data_read)
Decode the packets of a tile from a source buffer.
grk::grk_resolution
Definition: TileProcessor.h:164
grk::T2Decode::skip_packet_data
bool skip_packet_data(grk_resolution *l_res, PacketIter *p_pi, uint64_t *p_data_read, uint64_t max_length)
grk::TileProcessor
Tile coder/decoder.
Definition: TileProcessor.h:211
grk::TileCodingParams
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
Definition: CodingParams.h:117
grk::T2
Definition: T2.h:23
grk::T2Decode::read_packet_data
bool read_packet_data(grk_resolution *l_res, PacketIter *p_pi, ChunkBuffer *src_buf, uint64_t *p_data_read)
grk::T2Decode::tileProcessor
TileProcessor * tileProcessor
Definition: T2Decode.h:53
grk::PacketIter
Packet iterator.
Definition: PacketIter.h:67
grk::T2Decode::read_packet_header
bool read_packet_header(TileCodingParams *p_tcp, PacketIter *p_pi, bool *p_is_data_present, ChunkBuffer *src_buf, uint64_t *p_data_read)
grk
Copyright (C) 2016-2020 Grok Image Compression Inc.
Definition: BitIO.h:27
grk::T2Decode::decode_packet
bool decode_packet(TileCodingParams *tcp, PacketIter *pi, ChunkBuffer *src_buf, uint64_t *data_read)
Decode a packet of a tile from a source buffer.
grk::T2Decode::skip_packet
bool skip_packet(TileCodingParams *p_tcp, PacketIter *p_pi, ChunkBuffer *src_buf, uint64_t *p_data_read)
grk::ChunkBuffer
Definition: ChunkBuffer.h:29
grk::T2Decode::T2Decode
T2Decode(TileProcessor *tileProc)
grk::T2Decode
Tier-2 coding.
Definition: T2Decode.h:39