27 #include "grk_config.h"
34 #define GRK_DEPRECATED(func) func __attribute__((deprecated))
35 #elif defined(_MSC_VER)
36 #define GRK_DEPRECATED(func) __declspec(deprecated) func
38 #pragma message("WARNING: You need to implement DEPRECATED for this compiler")
39 #define GRK_DEPRECATED(func) func
42 #if defined(GRK_STATIC) || !defined(_WIN32)
43 #if defined(GRK_STATIC)
44 #define GRK_API __attribute__((visibility("hidden")))
46 #define GRK_API __attribute__((visibility("default")))
50 #define GRK_CALLCONV __stdcall
51 #if defined(GRK_EXPORTS) || defined(DLL_EXPORT)
52 #define GRK_API __declspec(dllexport)
54 #define GRK_API __declspec(dllimport)
80 #define GRK_PATH_LEN 4096
81 #define GRK_MAX_LAYERS 100
82 #define GRK_MAX_SUPPORTED_IMAGE_PRECISION 16
89 #define GRK_J2K_MAX_DECOMP_LVLS \
92 #define GRK_J2K_MAXRLVLS \
93 (GRK_J2K_MAX_DECOMP_LVLS + 1)
94 #define GRK_J2K_MAXBANDS \
95 (3 * GRK_J2K_MAXRLVLS - 2)
97 #define GRK_IMG_INFO 1
98 #define GRK_J2K_MH_INFO 2
99 #define GRK_J2K_TH_INFO 4
100 #define GRK_J2K_TCH_INFO 8
101 #define GRK_J2K_MH_IND 16
102 #define GRK_J2K_TH_IND 32
103 #define GRK_JP2_INFO 128
104 #define GRK_JP2_IND 256
106 #define GRK_CBLKSTY_LAZY 0x001
107 #define GRK_CBLKSTY_RESET 0x002
108 #define GRK_CBLKSTY_TERMALL 0x004
109 #define GRK_CBLKSTY_VSC 0x008
110 #define GRK_CBLKSTY_PTERM 0x010
111 #define GRK_CBLKSTY_SEGSYM 0x020
112 #define GRK_CBLKSTY_HT 0x040
113 #define GRK_CBLKSTY_HT_MIXED 0x080
114 #define GRK_CBLKSTY_HT_PHLD 0x100
115 #define GRK_JPH_RSIZ_FLAG 0x4000
137 #define GRK_PROFILE_NONE 0x0000
138 #define GRK_PROFILE_0 0x0001
139 #define GRK_PROFILE_1 0x0002
140 #define GRK_PROFILE_CINEMA_2K 0x0003
141 #define GRK_PROFILE_CINEMA_4K 0x0004
142 #define GRK_PROFILE_CINEMA_S2K 0x0005
143 #define GRK_PROFILE_CINEMA_S4K 0x0006
144 #define GRK_PROFILE_CINEMA_LTS \
146 #define GRK_PROFILE_BC_SINGLE 0x0100
147 #define GRK_PROFILE_BC_MULTI 0x0200
148 #define GRK_PROFILE_BC_MULTI_R \
150 #define GRK_PROFILE_BC_MASK 0x030F
151 #define GRK_PROFILE_IMF_2K 0x0400
152 #define GRK_PROFILE_IMF_4K 0x0500
153 #define GRK_PROFILE_IMF_8K 0x0600
154 #define GRK_PROFILE_IMF_2K_R \
156 #define GRK_PROFILE_IMF_4K_R \
158 #define GRK_PROFILE_IMF_8K_R \
160 #define GRK_PROFILE_MASK 0x0FFF
161 #define GRK_PROFILE_PART2 0x8000
162 #define GRK_PROFILE_PART2_EXTENSIONS_MASK 0x3FFF
167 #define GRK_EXTENSION_NONE 0x0000
168 #define GRK_EXTENSION_MCT 0x0100
169 #define GRK_IS_PART2(v) ((v)&GRK_PROFILE_PART2)
171 #define GRK_IS_CINEMA(v) (((v) >= GRK_PROFILE_CINEMA_2K) && ((v) <= GRK_PROFILE_CINEMA_S4K))
172 #define GRK_IS_STORAGE(v) ((v) == GRK_PROFILE_CINEMA_LTS)
226 #define GRK_GET_IMF_OR_BROADCAST_PROFILE(v) \
229 #define GRK_LEVEL_MAX 11U
230 #define GRK_GET_LEVEL(v) ((v)&0xf)
234 #define GRK_IS_BROADCAST(v) \
235 (((v) >= GRK_PROFILE_BC_SINGLE) && ((v) <= (GRK_PROFILE_BC_MULTI_R | 0x000b)) && \
239 #define GRK_BROADCAST_LEVEL_1_MBITSSEC 200U
240 #define GRK_BROADCAST_LEVEL_2_MBITSSEC 200U
241 #define GRK_BROADCAST_LEVEL_3_MBITSSEC 200U
242 #define GRK_BROADCAST_LEVEL_4_MBITSSEC 400U
243 #define GRK_BROADCAST_LEVEL_5_MBITSSEC 800U
244 #define GRK_BROADCAST_LEVEL_6_MBITSSEC 1600U
245 #define GRK_BROADCAST_LEVEL_7_MBITSSEC 3200U
246 #define GRK_BROADCAST_LEVEL_8_MBITSSEC 6400U
247 #define GRK_BROADCAST_LEVEL_9_MBITSSEC 12800U
248 #define GRK_BROADCAST_LEVEL_10_MBITSSEC 25600U
249 #define GRK_BROADCAST_LEVEL_11_MBITSSEC 51200U
251 #define GRK_BROADCAST_LEVEL_1_MSAMPLESSEC 64U
252 #define GRK_BROADCAST_LEVEL_2_MSAMPLESSEC 130U
253 #define GRK_BROADCAST_LEVEL_3_MSAMPLESSEC 195U
254 #define GRK_BROADCAST_LEVEL_4_MSAMPLESSEC 260U
255 #define GRK_BROADCAST_LEVEL_5_MSAMPLESSEC 520U
256 #define GRK_BROADCAST_LEVEL_6_MSAMPLESSEC 1200U
257 #define GRK_BROADCAST_LEVEL_7_MSAMPLESSEC 2400U
258 #define GRK_BROADCAST_LEVEL_8_MSAMPLESSEC 4800U
259 #define GRK_BROADCAST_LEVEL_9_MSAMPLESSEC 9600U
260 #define GRK_BROADCAST_LEVEL_10_MSAMPLESSEC 19200U
261 #define GRK_BROADCAST_LEVEL_11_MSAMPLESSEC 38400U
265 #define GRK_IS_IMF(v) \
266 (((v) >= GRK_PROFILE_IMF_2K) && ((v) <= (GRK_PROFILE_IMF_8K_R | 0x009b)) && \
267 (((v)&0xf) <= 0xb) && (((v)&0xf0) <= 0x90))
270 #define GRK_IMF_MAINLEVEL_1_MSAMPLESSEC 65U
271 #define GRK_IMF_MAINLEVEL_2_MSAMPLESSEC 130U
272 #define GRK_IMF_MAINLEVEL_3_MSAMPLESSEC 195U
273 #define GRK_IMF_MAINLEVEL_4_MSAMPLESSEC 260U
274 #define GRK_IMF_MAINLEVEL_5_MSAMPLESSEC 520U
275 #define GRK_IMF_MAINLEVEL_6_MSAMPLESSEC 1200U
276 #define GRK_IMF_MAINLEVEL_7_MSAMPLESSEC 2400U
277 #define GRK_IMF_MAINLEVEL_8_MSAMPLESSEC 4800U
278 #define GRK_IMF_MAINLEVEL_9_MSAMPLESSEC 9600U
279 #define GRK_IMF_MAINLEVEL_10_MSAMPLESSEC 19200U
280 #define GRK_IMF_MAINLEVEL_11_MSAMPLESSEC 38400U
282 #define GRK_IMF_SUBLEVEL_MAX 9U
283 #define GRK_GET_IMF_SUBLEVEL(v) (((v) >> 4) & 0xf)
286 #define GRK_IMF_SUBLEVEL_1_MBITSSEC 200U
287 #define GRK_IMF_SUBLEVEL_2_MBITSSEC 400U
288 #define GRK_IMF_SUBLEVEL_3_MBITSSEC 800U
289 #define GRK_IMF_SUBLEVEL_4_MBITSSEC 1600U
290 #define GRK_IMF_SUBLEVEL_5_MBITSSEC 3200U
291 #define GRK_IMF_SUBLEVEL_6_MBITSSEC 6400U
292 #define GRK_IMF_SUBLEVEL_7_MBITSSEC 12800U
293 #define GRK_IMF_SUBLEVEL_8_MBITSSEC 25600U
294 #define GRK_IMF_SUBLEVEL_9_MBITSSEC 51200U
300 #define GRK_CINEMA_24_CS 1302083U
301 #define GRK_CINEMA_48_CS 651041U
302 #define GRK_CINEMA_24_COMP 1041666U
303 #define GRK_CINEMA_48_COMP 520833U
323 #define GRK_CUSTOM_CIELAB_SPACE 0x0
324 #define GRK_DEFAULT_CIELAB_SPACE 0x44454600
325 #define GRK_CIE_DAY ((((uint32_t)'C') << 24) + (((uint32_t)'T') << 16))
326 #define GRK_CIE_D50 ((uint32_t)0x00443530)
327 #define GRK_CIE_D65 ((uint32_t)0x00443635)
328 #define GRK_CIE_D75 ((uint32_t)0x00443735)
329 #define GRK_CIE_SA ((uint32_t)0x00005341)
330 #define GRK_CIE_SC ((uint32_t)0x00005343)
331 #define GRK_CIE_F2 ((uint32_t)0x00004632)
332 #define GRK_CIE_F7 ((uint32_t)0x00004637)
333 #define GRK_CIE_F11 ((uint32_t)0x00463131)
386 #define GRK_NUM_COMMENTS_SUPPORTED 256
387 #define GRK_NUM_ASOC_BOXES_SUPPORTED 256
388 #define GRK_MAX_COMMENT_LENGTH (UINT16_MAX - 2)
396 #define GRK_RANDOM_ACCESS_PLT 1
397 #define GRK_RANDOM_ACCESS_TLM 2
398 #define GRK_RANDOM_ACCESS_PLM 4
820 void* serialize_user_data,
821 void* reclaim_user_data);
854 #define GRK_DECOMPRESS_COMPRESSION_LEVEL_DEFAULT (UINT_MAX)
1083 #define GRK_DECODE_HEADER (1 << 0)
1084 #define GRK_DECODE_T2 (1 << 1)
1085 #define GRK_DECODE_T1 (1 << 2)
1086 #define GRK_DECODE_POST_T1 (1 << 3)
1087 #define GRK_PLUGIN_DECODE_CLEAN (1 << 4)
1088 #define GRK_DECODE_ALL \
1089 (GRK_PLUGIN_DECODE_CLEAN | GRK_DECODE_HEADER | GRK_DECODE_T2 | GRK_DECODE_T1 | \
1140 void* error_user_data);
1226 bool is_read_stream);
1237 bool ownsBuffer,
bool is_read_stream);
1328 float end_x,
float end_y);
1437 uint64_t data_size);
1476 int32_t* dc_shift, uint32_t nbComp);
1504 #define GRK_PLUGIN_STATE_NO_DEBUG 0x0
1521 #define GRK_PLUGIN_STATE_DEBUG 0x1
1522 #define GRK_PLUGIN_STATE_PRE_TR1 0x2
1523 #define GRK_PLUGIN_STATE_DWT_QUANTIZATION 0x4
1524 #define GRK_PLUGIN_STATE_MCT_ONLY 0x8
1582 const char* output_dir,
struct _grk_plugin_init_info grk_plugin_init_info
struct _grk_cparameters grk_cparameters
Compress parameters.
GRK_API bool GRK_CALLCONV grk_compress_tile(grk_codec *codec, uint16_t tileIndex, uint8_t *data, uint64_t data_size)
Compress uncompressed data stored in a buffer.
Definition: grok.cpp:457
GRK_API void GRK_CALLCONV grk_stream_set_seek_function(grk_stream *stream, grk_stream_seek_fn func)
Set (absolute) seek function (stream must be seekable)
Definition: grok.cpp:820
GRK_CHANNEL_TYPE_
Definition: grok.h:650
@ GRK_CHANNEL_TYPE_OPACITY
Definition: grok.h:653
@ GRK_CHANNEL_TYPE_PREMULTIPLIED_OPACITY
Definition: grok.h:654
@ GRK_CHANNEL_TYPE_COLOUR
Definition: grok.h:652
@ GRK_CHANNEL_TYPE_UNSPECIFIED
Definition: grok.h:655
struct _grk_progression grk_progression
Progression order change.
struct _grk_image grk_image
GRK_API bool GRK_CALLCONV grk_set_MCT(grk_cparameters *parameters, float *encodingMatrix, int32_t *dc_shift, uint32_t nbComp)
Set the MCT matrix to use.
Definition: grok.cpp:311
GRK_API void GRK_CALLCONV grk_plugin_stop_batch_compress(void)
Stop batch compress.
Definition: grok.cpp:693
enum grk_prec_mode grk_precision_mode
Precision mode.
GRK_API grk_image *GRK_CALLCONV grk_image_new(uint16_t numcmpts, grk_image_comp *cmptparms, GRK_COLOR_SPACE clrspc)
Create image.
Definition: grok.cpp:171
GRK_API void GRK_CALLCONV grk_plugin_stop_batch_decompress(void)
Stop batch decompress.
Definition: grok.cpp:791
struct _grk_channel_description grk_channel_description
Channel definition: channel index, type, association.
#define GRK_NUM_COMMENTS_SUPPORTED
Definition: grok.h:385
void(* grk_msg_callback)(const char *msg, void *client_data)
Logging callback.
Definition: grok.h:405
GRK_RATE_CONTROL_ALGORITHM
Definition: grok.h:59
@ GRK_RATE_CONTROL_PCRD_OPT
Definition: grok.h:61
@ GRK_RATE_CONTROL_BISECT
Definition: grok.h:60
struct _grk_serialize_buf grk_serialize_buf
GRK_API void GRK_CALLCONV grk_plugin_cleanup(void)
Release plugin resources.
Definition: grok.cpp:599
GRK_API bool GRK_CALLCONV grk_plugin_load(grk_plugin_load_info info)
Load plugin.
Definition: grok.cpp:557
GRK_API void GRK_CALLCONV grk_stream_set_user_data_length(grk_stream *stream, uint64_t data_length)
Set the length of the user data for the stream.
Definition: grok.cpp:843
GRK_API size_t GRK_CALLCONV grk_stream_get_write_mem_stream_length(grk_stream *stream)
Get length of memory stream.
Definition: grok.cpp:512
enum _GRK_CODEC_FORMAT GRK_CODEC_FORMAT
Supported codecs.
GRK_API void GRK_CALLCONV grk_set_msg_handlers(grk_msg_callback info_callback, void *info_user_data, grk_msg_callback warn_callback, void *warn_user_data, grk_msg_callback error_callback, void *error_user_data)
Definition: grok.cpp:105
grk_object grk_stream
Definition: grok.h:1105
GRK_API void GRK_CALLCONV grk_stream_set_user_data(grk_stream *stream, void *data, grk_stream_free_user_data_fn func)
Set user data for JPEG 2000 stream.
Definition: grok.cpp:835
GRK_API bool GRK_CALLCONV grk_compress_end(grk_codec *codec)
End compression.
Definition: grok.cpp:448
GRK_API uint32_t GRK_CALLCONV grk_plugin_get_debug_state()
Get debug state of plugin.
Definition: grok.cpp:584
struct _grk_prec grk_precision
Precision.
struct _grk_plugin_decompress_callback_info grk_plugin_decompress_callback_info
GRK_API bool GRK_CALLCONV grk_decompress_init(grk_codec *codec, grk_decompress_core_params *parameters)
Set up decompressor with decompress parameters.
Definition: grok.cpp:226
GRK_API void GRK_CALLCONV grk_decompress_set_default_params(grk_decompress_core_params *parameters)
Initialize decompress parameters with default values.
Definition: grok.cpp:216
GRK_API int32_t GRK_CALLCONV grk_plugin_batch_decompress(void)
Initiate batch decompress.
Definition: grok.cpp:777
enum _GRK_PROG_ORDER GRK_PROG_ORDER
Progression order.
struct _grk_object grk_object
Base Grok ref-counted object.
enum GRK_CHANNEL_TYPE_ GRK_CHANNEL_TYPE
struct _grk_raw_cparameters grk_raw_cparameters
RAW image compress parameters.
GRK_API grk_codec *GRK_CALLCONV grk_decompress_create(GRK_CODEC_FORMAT format, grk_stream *stream)
Create j2k/jp2 decompression codec.
Definition: grok.cpp:192
struct _grk_plugin_load_info grk_plugin_load_info
GRK_API int32_t GRK_CALLCONV grk_plugin_compress(grk_cparameters *compress_parameters, GRK_PLUGIN_COMPRESS_USER_CALLBACK callback)
Compress with plugin.
Definition: grok.cpp:640
struct _grk_decompress_core_params grk_decompress_core_params
Core decompress parameters.
GRK_API bool GRK_CALLCONV grk_compress(grk_codec *codec)
Compress image.
Definition: grok.cpp:435
struct _grk_image_meta grk_image_meta
struct _grk_asoc grk_asoc
GRK_API bool GRK_CALLCONV grk_compress_with_plugin(grk_codec *codec, grk_plugin_tile *tile)
Comopress an image into a JPEG 2000 code stream using plugin.
Definition: grok.cpp:439
grk_object grk_codec
Definition: grok.h:1102
#define GRK_J2K_MAXRLVLS
Definition: grok.h:91
struct _grk_palette_data grk_palette_data
Palette data.
#define GRK_API
Definition: grok.h:46
GRK_API bool GRK_CALLCONV grk_decompress_read_header(grk_codec *codec, grk_header_info *header_info)
Decompress JPEG 2000 header.
Definition: grok.cpp:241
GRK_TILE_CACHE_STRATEGY
Definition: grok.h:390
@ GRK_TILE_CACHE_IMAGE
Definition: grok.h:392
@ GRK_TILE_CACHE_NONE
Definition: grok.h:391
struct _grk_component_mapping_comp grk_component_mapping_comp
Note: "component" refers to an image component as decompressed from the code stream,...
GRK_API const char *GRK_CALLCONV grk_version(void)
Library version.
Definition: grok.cpp:166
struct _grk_image_comp grk_image_comp
Image component.
struct _grk_raw_comp_cparameters grk_raw_comp_cparameters
RAW component compress parameters.
GRK_API void GRK_CALLCONV grk_deinitialize()
De-initialize library.
Definition: grok.cpp:81
struct grk_plugin_tile_component grk_plugin_tile_component
Plugin tile component.
GRK_API int32_t GRK_CALLCONV grk_plugin_batch_compress(const char *input_dir, const char *output_dir, grk_cparameters *compress_parameters, GRK_PLUGIN_COMPRESS_USER_CALLBACK callback)
Batch compress with plugin.
Definition: grok.cpp:656
GRK_API void GRK_CALLCONV grk_object_unref(grk_object *obj)
Definition: grok.cpp:96
grk_prec_mode
Precision mode.
Definition: grok.h:715
@ GRK_PREC_MODE_SCALE
Definition: grok.h:717
@ GRK_PREC_MODE_CLIP
Definition: grok.h:716
#define GRK_MAX_LAYERS
Definition: grok.h:81
GRK_API void GRK_CALLCONV grk_compress_set_default_params(grk_cparameters *parameters)
Set compressing parameters to default values:
Definition: grok.cpp:386
struct _grk_plugin_precinct grk_plugin_precinct
Plugin precinct.
GRK_API grk_stream *GRK_CALLCONV grk_stream_new(size_t buffer_size, bool is_input)
Create an abstract stream.
Definition: grok.cpp:805
GRK_API grk_stream *GRK_CALLCONV grk_stream_create_mapped_file_stream(const char *fname, bool read_stream)
Create mapped file stream.
Definition: grok.cpp:523
struct grk_plugin_compress_user_callback_info grk_plugin_compress_user_callback_info
GRK_API bool GRK_CALLCONV grk_decompress_end(grk_codec *codec)
End decompression.
Definition: grok.cpp:290
_GRK_COLOR_SPACE
Supported color spaces.
Definition: grok.h:338
@ GRK_CLRSPC_SRGB
sRGB
Definition: grok.h:340
@ GRK_CLRSPC_EYCC
extended YCC
Definition: grok.h:343
@ GRK_CLRSPC_UNKNOWN
unknown
Definition: grok.h:339
@ GRK_CLRSPC_SYCC
standard YCC (YUV)
Definition: grok.h:342
@ GRK_CLRSPC_DEFAULT_CIE
default CIE LAB
Definition: grok.h:345
@ GRK_CLRSPC_ICC
ICC profile.
Definition: grok.h:347
@ GRK_CLRSPC_CMYK
CMYK.
Definition: grok.h:344
@ GRK_CLRSPC_GRAY
grayscale
Definition: grok.h:341
@ GRK_CLRSPC_CUSTOM_CIE
custom CIE LAB
Definition: grok.h:346
GRK_API grk_stream *GRK_CALLCONV grk_stream_create_file_stream(const char *fname, size_t buffer_size, bool is_read_stream)
Create stream from a file identified with its filename with a specific buffer size.
Definition: grok.cpp:475
bool(* GRK_PLUGIN_COMPRESS_USER_CALLBACK)(grk_plugin_compress_user_callback_info *info)
Definition: grok.h:1558
GRK_API bool GRK_CALLCONV grk_plugin_is_batch_complete(void)
Check if batch job is complete.
Definition: grok.cpp:678
enum _GRK_COLOR_SPACE GRK_COLOR_SPACE
Supported color spaces.
#define GRK_PATH_LEN
Definition: grok.h:80
GRK_ENUM_COLOUR_SPACE
Definition: grok.h:352
@ GRK_ENUM_CLRSPC_ESRGB
Definition: grok.h:368
@ GRK_ENUM_CLRSPC_CMY
Definition: grok.h:359
@ GRK_ENUM_CLRSPC_EYCC
Definition: grok.h:372
@ GRK_ENUM_CLRSPC_CIEJAB
Definition: grok.h:367
@ GRK_ENUM_CLRSPC_GRAY
Definition: grok.h:365
@ GRK_ENUM_CLRSPC_CIE
Definition: grok.h:362
@ GRK_ENUM_CLRSPC_UNKNOWN
Definition: grok.h:353
@ GRK_ENUM_CLRSPC_YCBCR3
Definition: grok.h:357
@ GRK_ENUM_CLRSPC_ROMMRGB
Definition: grok.h:369
@ GRK_ENUM_CLRSPC_YPBPR60
Definition: grok.h:370
@ GRK_ENUM_CLRSPC_SRGB
Definition: grok.h:364
@ GRK_ENUM_CLRSPC_BILEVEL2
Definition: grok.h:363
@ GRK_ENUM_CLRSPC_SYCC
Definition: grok.h:366
@ GRK_ENUM_CLRSPC_PHOTO_YCC
Definition: grok.h:358
@ GRK_ENUM_CLRSPC_YCBCR1
Definition: grok.h:355
@ GRK_ENUM_CLRSPC_CMYK
Definition: grok.h:360
@ GRK_ENUM_CLRSPC_YCCK
Definition: grok.h:361
@ GRK_ENUM_CLRSPC_YPBPR50
Definition: grok.h:371
@ GRK_ENUM_CLRSPC_BILEVEL1
Definition: grok.h:354
@ GRK_ENUM_CLRSPC_YCBCR2
Definition: grok.h:356
GRK_API bool GRK_CALLCONV grk_compress_start(grk_codec *codec)
Start compressing image.
Definition: grok.cpp:426
GRK_API bool GRK_CALLCONV grk_decompress_set_window(grk_codec *codec, float start_x, float start_y, float end_x, float end_y)
Set the given area to be decompressed.
Definition: grok.cpp:255
GRK_API int32_t GRK_CALLCONV grk_plugin_decompress(grk_decompress_parameters *decompress_parameters, grk_plugin_decompress_callback callback)
Decompress with plugin.
Definition: grok.cpp:742
GRK_API void GRK_CALLCONV grk_image_single_component_data_free(grk_image_comp *image)
Deallocate data for single image component.
Definition: grok.cpp:182
GRK_SUPPORTED_FILE_FMT
Definition: grok.h:65
@ GRK_TIF_FMT
Definition: grok.h:73
@ GRK_PAM_FMT
Definition: grok.h:71
@ GRK_RAWL_FMT
Definition: grok.h:76
@ GRK_JPG_FMT
Definition: grok.h:77
@ GRK_PNG_FMT
Definition: grok.h:75
@ GRK_PGX_FMT
Definition: grok.h:70
@ GRK_BMP_FMT
Definition: grok.h:72
@ GRK_PXM_FMT
Definition: grok.h:69
@ GRK_UNK_FMT
Definition: grok.h:66
@ GRK_JP2_FMT
Definition: grok.h:68
@ GRK_J2K_FMT
Definition: grok.h:67
@ GRK_RAW_FMT
Definition: grok.h:74
GRK_API void GRK_CALLCONV grk_stream_set_read_function(grk_stream *stream, grk_stream_read_fn func)
Set read function.
Definition: grok.cpp:812
GRK_API void GRK_CALLCONV grk_dump_codec(grk_codec *codec, uint32_t info_flag, FILE *output_stream)
Dump codec information to file.
Definition: grok.cpp:300
GRK_API grk_image *GRK_CALLCONV grk_decompress_get_composited_image(grk_codec *codec)
Get decompressed composite image.
Definition: grok.cpp:350
struct _grk_color grk_color
ICC profile, palette, channel definition.
GRK_API int32_t GRK_CALLCONV grk_plugin_init_batch_decompress(const char *input_dir, const char *output_dir, grk_decompress_parameters *decompress_parameters, grk_plugin_decompress_callback callback)
Initialize batch decompress.
Definition: grok.cpp:759
bool(* grk_stream_seek_fn)(uint64_t numBytes, void *user_data)
Definition: grok.h:919
struct _grk_decompress_params grk_decompress_parameters
Decompress parameters.
GRK_API grk_stream *GRK_CALLCONV grk_stream_create_mem_stream(uint8_t *buf, size_t buffer_len, bool ownsBuffer, bool is_read_stream)
Create stream from buffer.
Definition: grok.cpp:518
GRK_API bool GRK_CALLCONV grk_decompress_tile(grk_codec *codec, uint16_t tileIndex)
Decompress a specific tile.
Definition: grok.cpp:279
bool(* grk_serialize_pixels_callback)(grk_serialize_buf buffer, void *user_data)
Definition: grok.h:822
struct _grk_channel_definition grk_channel_definition
Channel definitions and number of definitions.
int(* GROK_INIT_DECOMPRESSORS)(grk_header_info *header_info, grk_image *image)
Definition: grok.h:1599
struct _grk_plugin_band grk_plugin_band
Plugin band.
_GRK_CODEC_FORMAT
Supported codecs.
Definition: grok.h:379
@ GRK_CODEC_J2K
JPEG 2000 code stream : read/write.
Definition: grok.h:381
@ GRK_CODEC_UNKNOWN
place-holder
Definition: grok.h:380
@ GRK_CODEC_JP2
JP2 file format : read/write.
Definition: grok.h:382
struct _grk_plugin_tile grk_plugin_tile
Plugin tile.
GRK_CHANNEL_ASSOC_
Definition: grok.h:661
@ GRK_CHANNEL_ASSOC_COLOUR_1
Definition: grok.h:664
@ GRK_CHANNEL_ASSOC_COLOUR_2
Definition: grok.h:665
@ GRK_CHANNEL_ASSOC_COLOUR_3
Definition: grok.h:666
@ GRK_CHANNEL_ASSOC_WHOLE_IMAGE
Definition: grok.h:663
@ GRK_CHANNEL_ASSOC_UNASSOCIATED
Definition: grok.h:667
#define GRK_CALLCONV
Definition: grok.h:48
GRK_API grk_codec *GRK_CALLCONV grk_compress_create(GRK_CODEC_FORMAT format, grk_stream *stream)
Creates a J2K/JP2 compression structure.
Definition: grok.cpp:363
size_t(* grk_stream_write_fn)(void *buffer, size_t numBytes, void *user_data)
Definition: grok.h:915
GRK_API grk_image_meta *GRK_CALLCONV grk_image_meta_new(void)
Definition: grok.cpp:177
void(* grk_stream_free_user_data_fn)(void *user_data)
Definition: grok.h:923
GRK_API grk_image *GRK_CALLCONV grk_decompress_get_tile_image(grk_codec *codec, uint16_t tileIndex)
Get decompressed tile image.
Definition: grok.cpp:340
#define GRK_NUM_ASOC_BOXES_SUPPORTED
Definition: grok.h:386
_GRK_PROG_ORDER
Progression order.
Definition: grok.h:308
@ GRK_RPCL
resolution-precinct-component-layer order
Definition: grok.h:312
@ GRK_CPRL
component-precinct-resolution-layer order
Definition: grok.h:314
@ GRK_RLCP
resolution-layer-component-precinct order
Definition: grok.h:311
@ GRK_PROG_UNKNOWN
place-holder
Definition: grok.h:309
@ GRK_LRCP
layer-resolution-component-precinct order
Definition: grok.h:310
@ GRK_NUM_PROGRESSION_ORDERS
Definition: grok.h:315
@ GRK_PCRL
precinct-component-resolution-layer order
Definition: grok.h:313
enum GRK_CHANNEL_ASSOC_ GRK_CHANNEL_ASSOC
GRK_API void GRK_CALLCONV grk_stream_set_write_function(grk_stream *stream, grk_stream_write_fn func)
Set write function.
Definition: grok.cpp:826
void(* grk_serialize_register_client_callback)(grk_serialize_callback reclaim_callback, void *serialize_user_data, void *reclaim_user_data)
Definition: grok.h:818
struct _grk_plugin_pass grk_plugin_pass
Plugin pass.
bool(* grk_serialize_callback)(grk_serialize_buf buffer, void *serialize_user_data)
Definition: grok.h:817
struct _grk_header_info grk_header_info
Header info.
int32_t(* grk_plugin_decompress_callback)(grk_plugin_decompress_callback_info *info)
Definition: grok.h:1625
GRK_API bool GRK_CALLCONV grk_compress_init(grk_codec *codec, grk_cparameters *parameters, grk_image *image)
Set up the compressor parameters using the current image and user parameters.
Definition: grok.cpp:415
GRK_API bool GRK_CALLCONV grk_initialize(const char *pluginPath, uint32_t numthreads)
Initialize library.
Definition: grok.cpp:68
struct _grk_plugin_resolution grk_plugin_resolution
Plugin resolution.
struct _grk_plugin_code_block grk_plugin_code_block
Plugin code block.
GRK_API bool GRK_CALLCONV grk_plugin_init(grk_plugin_init_info initInfo)
Initialize plugin.
Definition: grok.cpp:604
size_t(* grk_stream_read_fn)(void *buffer, size_t numBytes, void *user_data)
Definition: grok.h:910
GRK_API grk_object *GRK_CALLCONV grk_object_ref(grk_object *obj)
Increment ref count.
Definition: grok.cpp:87
GRK_API bool GRK_CALLCONV grk_decompress(grk_codec *codec, grk_plugin_tile *tile)
Decompress image from a JPEG 2000 code stream.
Definition: grok.cpp:267
HWY_DLLEXPORT HWY_NORETURN void int const char * format
Definition: base.h:763
const char * label
Definition: grok.h:706
uint8_t * xml
Definition: grok.h:707
uint32_t level
Definition: grok.h:705
uint32_t xml_len
Definition: grok.h:708
Channel definitions and number of definitions.
Definition: grok.h:685
uint16_t num_channel_descriptions
Definition: grok.h:687
grk_channel_description * descriptions
Definition: grok.h:686
Channel definition: channel index, type, association.
Definition: grok.h:675
uint16_t typ
Definition: grok.h:677
uint16_t asoc
Definition: grok.h:678
uint16_t channel
Definition: grok.h:676
ICC profile, palette, channel definition.
Definition: grok.h:694
grk_channel_definition * channel_definition
Definition: grok.h:698
char * icc_profile_name
Definition: grok.h:697
uint32_t icc_profile_len
Definition: grok.h:696
uint8_t * icc_profile_buf
Definition: grok.h:695
grk_palette_data * palette
Definition: grok.h:699
bool has_colour_specification_box
Definition: grok.h:700
Note: "component" refers to an image component as decompressed from the code stream,...
Definition: grok.h:622
uint8_t palette_column
Definition: grok.h:625
uint8_t mapping_type
Definition: grok.h:624
uint16_t component_index
Definition: grok.h:623
Compress parameters.
Definition: grok.h:484
uint32_t cblockw_init
initial code block width (default to 64)
Definition: grok.h:523
uint8_t numgbits
Definition: grok.h:513
char outfile[GRK_PATH_LEN]
output file name
Definition: grok.h:547
bool allocationByRateDistoration
rate control allocation by rate/distortion curve
Definition: grok.h:498
GRK_PROG_ORDER prog_order
progression order (default is LRCP)
Definition: grok.h:515
uint16_t comment_len[GRK_NUM_COMMENTS_SUPPORTED]
Definition: grok.h:507
uint32_t repeats
Definition: grok.h:606
uint32_t numThreads
Definition: grok.h:602
bool verbose
Definition: grok.h:609
uint32_t image_offset_x0
subimage compressing: origin image offset in x direction
Definition: grok.h:549
uint64_t max_cs_size
Maximum size (in bytes) for the whole code stream.
Definition: grok.h:581
grk_raw_cparameters raw_cp
Definition: grok.h:560
uint8_t numresolution
number of resolutions
Definition: grok.h:521
uint32_t image_offset_y0
subimage compressing: origin image offset in y direction
Definition: grok.h:551
bool isHT
Definition: grok.h:529
GRK_SUPPORTED_FILE_FMT decod_format
input file format
Definition: grok.h:557
uint8_t newTilePartProgressionDivider
new tile part progression divider
Definition: grok.h:569
uint32_t cblockh_init
initial code block height (default to 64)
Definition: grok.h:525
GRK_RATE_CONTROL_ALGORITHM rateControlAlgorithm
Definition: grok.h:601
bool allocationByQuality
rate control allocation by fixed_PSNR quality
Definition: grok.h:503
uint32_t roi_shift
region of interest: upshift value
Definition: grok.h:537
uint8_t subsampling_dy
subsampling value for dy
Definition: grok.h:555
bool tile_size_on
size of tile: tile_size_on = false (not in argument) or = true (in argument)
Definition: grok.h:486
uint32_t t_height
YTsiz.
Definition: grok.h:494
bool write_capture_resolution_from_file
Definition: grok.h:588
bool enableTilePartGeneration
Tile part generation.
Definition: grok.h:567
uint32_t res_spec
Definition: grok.h:539
uint8_t mct
MCT (multiple component transform)
Definition: grok.h:571
uint16_t numlayers
number of layers
Definition: grok.h:496
int32_t deviceId
Definition: grok.h:603
GRK_SUPPORTED_FILE_FMT cod_format
output file format
Definition: grok.h:559
double capture_resolution_from_file[2]
Definition: grok.h:589
uint32_t max_comp_size
Maximum size (in bytes) for each component.
Definition: grok.h:565
bool irreversible
1 : use the irreversible DWT 9-7, 0 : use lossless compression (default)
Definition: grok.h:532
uint32_t t_width
XTsiz.
Definition: grok.h:492
bool write_display_resolution
Definition: grok.h:594
uint8_t cblk_sty
code block style
Definition: grok.h:527
uint8_t csty
csty : coding style
Definition: grok.h:511
uint32_t prch_init[GRK_J2K_MAXRLVLS]
initial precinct height
Definition: grok.h:543
bool is_binary_comment[GRK_NUM_COMMENTS_SUPPORTED]
Definition: grok.h:508
uint16_t rsiz
RSIZ value To be used to combine GRK_PROFILE_*, GRK_EXTENSION_* and (sub)levels values.
Definition: grok.h:584
char infile[GRK_PATH_LEN]
input file name
Definition: grok.h:545
double layer_distortion[GRK_MAX_LAYERS]
layer PSNR values
Definition: grok.h:505
void * mct_data
Naive implementation of MCT restricted to a single reversible array based compressing without offset ...
Definition: grok.h:574
uint32_t tx0
XTOsiz.
Definition: grok.h:488
char * comment[GRK_NUM_COMMENTS_SUPPORTED]
Definition: grok.h:506
bool write_capture_resolution
Definition: grok.h:591
uint8_t subsampling_dx
subsampling value for dx
Definition: grok.h:553
bool writeTLM
Definition: grok.h:608
uint32_t prcw_init[GRK_J2K_MAXRLVLS]
initial precinct width
Definition: grok.h:541
size_t num_comments
Definition: grok.h:509
uint16_t framerate
Definition: grok.h:585
double display_resolution[2]
Definition: grok.h:595
bool writePLT
Definition: grok.h:607
int32_t roi_compno
region of interest: affected component in [0..3]; -1 indicates no ROI
Definition: grok.h:535
uint32_t ty0
YTOsiz.
Definition: grok.h:490
uint32_t duration
Definition: grok.h:604
double layer_rate[GRK_MAX_LAYERS]
layers rates expressed as compression ratios.
Definition: grok.h:501
uint32_t kernelBuildOptions
Definition: grok.h:605
grk_progression progression[GRK_J2K_MAXRLVLS]
progressions
Definition: grok.h:517
uint32_t numpocs
number of progression order changes (POCs), default to 0
Definition: grok.h:519
double capture_resolution[2]
Definition: grok.h:592
Core decompress parameters.
Definition: grok.h:828
uint32_t randomAccessFlags_
Definition: grok.h:846
void * serialize_user_data
Definition: grok.h:849
grk_serialize_pixels_callback serialize_buffer_callback
Definition: grok.h:848
GRK_TILE_CACHE_STRATEGY tileCacheStrategy
Definition: grok.h:844
uint8_t reduce
Set the number of highest resolution levels to be discarded.
Definition: grok.h:836
grk_serialize_register_client_callback serialize_register_client_callback
Definition: grok.h:850
uint16_t max_layers
Set the maximum number of quality layers to decompress.
Definition: grok.h:843
Decompress parameters.
Definition: grok.h:859
float dw_y1
Decompress window bottom boundary.
Definition: grok.h:877
int32_t deviceId
Definition: grok.h:899
float dw_x0
Decompress window left boundary.
Definition: grok.h:871
grk_precision * precision
Definition: grok.h:881
uint32_t numThreads
Definition: grok.h:903
GRK_SUPPORTED_FILE_FMT cod_format
output file format
Definition: grok.h:869
uint32_t kernelBuildOptions
Definition: grok.h:901
char infile[GRK_PATH_LEN]
input file name
Definition: grok.h:863
uint32_t compressionLevel
Definition: grok.h:896
bool force_rgb
Definition: grok.h:884
uint32_t compression
Definition: grok.h:891
bool singleTileDecompress
Definition: grok.h:880
GRK_SUPPORTED_FILE_FMT decod_format
input file format
Definition: grok.h:867
uint32_t repeats
Definition: grok.h:902
bool upsample
Definition: grok.h:886
grk_decompress_core_params core
core library parameters
Definition: grok.h:861
uint16_t tileIndex
tile number of the decompressed tile
Definition: grok.h:879
bool serialize_xml
Definition: grok.h:890
bool verbose_
Verbose mode.
Definition: grok.h:898
uint32_t duration
Definition: grok.h:900
float dw_y0
Decompress window up boundary.
Definition: grok.h:875
uint32_t numPrecision
Definition: grok.h:882
bool split_pnm
Definition: grok.h:888
float dw_x1
Decompress window right boundary.
Definition: grok.h:873
char outfile[GRK_PATH_LEN]
output file name
Definition: grok.h:865
Image component.
Definition: grok.h:929
uint32_t h
data height
Definition: grok.h:939
uint8_t dy
YRsiz: vertical separation of a sample of component with respect to the reference grid.
Definition: grok.h:945
GRK_CHANNEL_ASSOC association
Definition: grok.h:951
GRK_CHANNEL_TYPE type
Definition: grok.h:950
uint8_t dx
XRsiz: horizontal separation of a sample of component with respect to the reference grid.
Definition: grok.h:942
bool sgnd
Definition: grok.h:949
uint32_t w
data width
Definition: grok.h:935
uint8_t prec
precision
Definition: grok.h:947
uint16_t Ycrg
Definition: grok.h:953
int32_t * data
image component data
Definition: grok.h:955
uint32_t x0
x component offset compared to the whole image
Definition: grok.h:931
uint16_t Xcrg
Definition: grok.h:953
uint32_t y0
y component offset compared to the whole image
Definition: grok.h:933
uint32_t stride
data stride
Definition: grok.h:937
uint16_t decompressNumComps
Definition: grok.h:998
grk_precision * precision
Definition: grok.h:994
bool has_capture_resolution
Definition: grok.h:987
uint16_t numcomps
number of components in the image
Definition: grok.h:983
uint64_t packedRowBytes
Definition: grok.h:1005
uint32_t y0
YOsiz: vertical offset from the origin of the reference grid to the top side of the image area.
Definition: grok.h:977
GRK_COLOR_SPACE color_space
Definition: grok.h:984
bool upsample
Definition: grok.h:993
grk_image_comp * comps
Definition: grok.h:1007
bool splitByComponent
Definition: grok.h:997
bool channelDefinitionApplied_
Definition: grok.h:986
uint32_t decompressWidth
Definition: grok.h:999
GRK_COLOR_SPACE decompressColourSpace
Definition: grok.h:1002
uint32_t x0
XOsiz: horizontal offset from the origin of the reference grid to the left side of the image area.
Definition: grok.h:974
uint8_t decompressPrec
Definition: grok.h:1001
grk_object obj
Definition: grok.h:971
uint32_t numPrecision
Definition: grok.h:995
bool has_display_resolution
Definition: grok.h:989
double display_resolution[2]
Definition: grok.h:990
grk_serialize_buf interleavedData
Definition: grok.h:1003
uint32_t y1
Ysiz: height of the reference grid.
Definition: grok.h:981
double capture_resolution[2]
Definition: grok.h:988
grk_image_meta * meta
Definition: grok.h:1006
bool multiTile
Definition: grok.h:996
uint32_t x1
Xsiz: width of the reference grid.
Definition: grok.h:979
GRK_SUPPORTED_FILE_FMT decompressFormat
Definition: grok.h:991
bool forceRGB
Definition: grok.h:992
uint32_t rowsPerStrip
Definition: grok.h:1004
uint32_t decompressHeight
Definition: grok.h:1000
bool paletteApplied_
Definition: grok.h:985
Base Grok ref-counted object.
Definition: grok.h:413
void * wrapper
Definition: grok.h:414
Palette data.
Definition: grok.h:632
grk_component_mapping_comp * component_mapping
Definition: grok.h:635
uint8_t num_channels
Definition: grok.h:636
int32_t * lut
Definition: grok.h:633
uint16_t num_entries
Definition: grok.h:634
bool * channel_sign
Definition: grok.h:637
uint8_t * channel_prec
Definition: grok.h:638
Plugin band.
Definition: grok.h:1056
float stepsize
Definition: grok.h:1060
uint8_t orientation
Definition: grok.h:1057
uint64_t numPrecincts
Definition: grok.h:1058
grk_plugin_precinct ** precincts
Definition: grok.h:1059
Plugin code block.
Definition: grok.h:1027
uint8_t * compressedData
Definition: grok.h:1035
uint32_t y0
Definition: grok.h:1031
size_t numPasses
Definition: grok.h:1038
unsigned int sortedIndex
Definition: grok.h:1040
uint8_t numBitPlanes
Definition: grok.h:1037
grk_plugin_pass passes[67]
Definition: grok.h:1039
uint32_t x0
Definition: grok.h:1031
unsigned int * contextStream
Definition: grok.h:1032
uint32_t y1
Definition: grok.h:1031
uint32_t numPix
Definition: grok.h:1034
uint32_t x1
Definition: grok.h:1031
uint32_t compressedDataLength
Definition: grok.h:1036
grk_codec * codec
Definition: grok.h:1612
GRK_SUPPORTED_FILE_FMT decod_format
Definition: grok.h:1608
uint32_t full_image_y0
Definition: grok.h:1621
unsigned int error_code
Definition: grok.h:1618
grk_decompress_parameters * decompressor_parameters
Definition: grok.h:1614
grk_header_info header_info
Definition: grok.h:1613
GRK_SUPPORTED_FILE_FMT cod_format
Definition: grok.h:1610
size_t deviceId
Definition: grok.h:1603
grk_plugin_tile * tile
Definition: grok.h:1617
uint32_t full_image_x0
Definition: grok.h:1620
void * user_data
Definition: grok.h:1622
bool plugin_owns_image
Definition: grok.h:1616
uint32_t decompress_flags
Definition: grok.h:1619
const char * output_file_name
Definition: grok.h:1606
GROK_INIT_DECOMPRESSORS init_decompressors_func
Definition: grok.h:1604
grk_stream * stream
Definition: grok.h:1611
const char * input_file_name
Definition: grok.h:1605
grk_image * image
Definition: grok.h:1615
bool verbose
Definition: grok.h:1536
int32_t deviceId
Definition: grok.h:1535
const char * pluginPath
Definition: grok.h:1487
Plugin pass.
Definition: grok.h:1017
size_t rate
Definition: grok.h:1019
size_t length
Definition: grok.h:1020
double distortionDecrease
Definition: grok.h:1018
Plugin precinct.
Definition: grok.h:1047
grk_plugin_code_block ** blocks
Definition: grok.h:1049
uint64_t numBlocks
Definition: grok.h:1048
Plugin resolution.
Definition: grok.h:1067
size_t numBands
Definition: grok.h:1069
size_t level
Definition: grok.h:1068
grk_plugin_band ** band
Definition: grok.h:1070
Plugin tile.
Definition: grok.h:1095
uint32_t decompress_flags
Definition: grok.h:1096
grk_plugin_tile_component ** tileComponents
Definition: grok.h:1098
size_t numComponents
Definition: grok.h:1097
Precision.
Definition: grok.h:724
uint8_t prec
Definition: grok.h:725
grk_precision_mode mode
Definition: grok.h:726
Progression order change.
Definition: grok.h:422
uint16_t comp_temp
Definition: grok.h:453
uint32_t tx1
Definition: grok.h:430
uint32_t tp_txE
Definition: grok.h:448
uint8_t res_temp
Definition: grok.h:454
GRK_PROG_ORDER specifiedCompressionPocProg
Definition: grok.h:425
uint32_t tx0
tile dimensions
Definition: grok.h:428
uint16_t compE
Definition: grok.h:434
uint8_t resS
Definition: grok.h:435
uint64_t prec_temp
Definition: grok.h:455
uint32_t tp_tyE
Definition: grok.h:450
uint64_t precE
Definition: grok.h:438
uint64_t precS
Definition: grok.h:437
uint32_t ty0
Definition: grok.h:429
uint32_t ty1
Definition: grok.h:431
uint32_t ty0_temp
Definition: grok.h:458
uint16_t tpCompE
Definition: grok.h:442
uint32_t tp_tyS
Definition: grok.h:449
uint32_t dy
Definition: grok.h:452
GRK_PROG_ORDER progression
Definition: grok.h:423
uint32_t dx
Definition: grok.h:451
uint16_t layE
Definition: grok.h:440
uint16_t layS
Definition: grok.h:439
char progressionString[5]
Definition: grok.h:424
uint8_t tpResE
Definition: grok.h:444
uint32_t tx0_temp
Definition: grok.h:457
uint32_t tileno
Definition: grok.h:426
uint16_t lay_temp
Definition: grok.h:456
uint16_t tpLayE
Definition: grok.h:446
uint64_t tpPrecE
Definition: grok.h:445
uint16_t tpCompS
Definition: grok.h:441
uint16_t compS
progression order bounds specified by POC
Definition: grok.h:433
uint32_t tp_txS
Definition: grok.h:447
uint8_t resE
Definition: grok.h:436
uint8_t tpResS
Definition: grok.h:443
RAW component compress parameters.
Definition: grok.h:463
uint8_t dy
subsampling in X direction
Definition: grok.h:465
uint8_t dx
Definition: grok.h:464
RAW image compress parameters.
Definition: grok.h:471
uint8_t prec
number of components of the raw image
Definition: grok.h:475
uint32_t width
Definition: grok.h:472
uint16_t numcomps
height of the raw image
Definition: grok.h:474
grk_raw_comp_cparameters * comps
signed/unsigned raw image
Definition: grok.h:477
bool sgnd
bit depth of the raw image
Definition: grok.h:476
uint32_t height
width of the raw image
Definition: grok.h:473
uint8_t * data
Definition: grok.h:809
uint32_t index
Definition: grok.h:814
uint64_t allocLen
Definition: grok.h:812
uint64_t offset
Definition: grok.h:810
uint64_t dataLen
Definition: grok.h:811
bool pooled
Definition: grok.h:813
bool outputFileNameIsRelative
Definition: grok.h:1547
grk_cparameters * compressor_parameters
Definition: grok.h:1549
grk_image * image
Definition: grok.h:1550
grk_plugin_tile * tile
Definition: grok.h:1551
const char * output_file_name
Definition: grok.h:1548
bool transferExifTags
Definition: grok.h:1555
size_t compressBufferLen
Definition: grok.h:1553
unsigned int error_code
Definition: grok.h:1554
const char * input_file_name
Definition: grok.h:1546
uint8_t * compressBuffer
Definition: grok.h:1552
Plugin tile component.
Definition: grok.h:1077
grk_plugin_resolution ** resolutions
Definition: grok.h:1079
size_t numResolutions
Definition: grok.h:1078