Grok  9.5.0
T1OpenHTJ2K.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016-2021 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 #pragma once
19 #include "T1Interface.h"
20 #include "TileProcessor.h"
21 
22 namespace openhtj2k
23 {
24 struct TileCodingParams;
25 
27  {
28  public:
29  T1OpenHTJ2K(bool isCompressor, grk::TileCodingParams* tcp, uint32_t maxCblkW, uint32_t maxCblkH);
30  virtual ~T1OpenHTJ2K();
31 
32  bool compress(grk::CompressBlockExec* block);
34 
35  private:
36  void preCompress(grk::CompressBlockExec* block, grk::Tile* tile);
38 
39  uint32_t coded_data_size;
40  uint8_t* coded_data;
42  int32_t* unencoded_data;
43  };
44 } // namespace openhtj2k
Definition: T1Interface.h:26
Definition: T1OpenHTJ2K.h:27
uint8_t * coded_data
Definition: T1OpenHTJ2K.h:40
bool compress(grk::CompressBlockExec *block)
Definition: T1OpenHTJ2K.cpp:82
uint32_t unencoded_data_size
Definition: T1OpenHTJ2K.h:41
uint32_t coded_data_size
Definition: T1OpenHTJ2K.h:39
void preCompress(grk::CompressBlockExec *block, grk::Tile *tile)
Definition: T1OpenHTJ2K.cpp:41
int32_t * unencoded_data
Definition: T1OpenHTJ2K.h:42
bool postProcess(grk::DecompressBlockExec *block)
virtual ~T1OpenHTJ2K()
Definition: T1OpenHTJ2K.cpp:36
T1OpenHTJ2K(bool isCompressor, grk::TileCodingParams *tcp, uint32_t maxCblkW, uint32_t maxCblkH)
Definition: T1OpenHTJ2K.cpp:28
bool decompress(grk::DecompressBlockExec *block)
Definition: T1OpenHTJ2K.cpp:105
Definition: PostT1DecompressFiltersOpenHTJ2K.h:6
Definition: BlockExec.h:57
Definition: BlockExec.h:45
Tile coding parameters : this structure is used to store coding/decoding parameters common to all til...
Definition: CodingParams.h:122
Definition: TileProcessor.h:39