+++ /dev/null
-$VAR1 = {
- 'ABI_DUMPER_VERSION' => '0.99.15',
- 'ABI_DUMP_VERSION' => '3.2',
- 'Arch' => 'x86_64',
- 'GccVersion' => '4.8.5',
- 'Headers' => {
- 'openjpeg.h' => 1
- },
- 'Language' => 'C',
- 'LibraryName' => 'libopenjp2.so.2.4.0',
- 'LibraryVersion' => 'current',
- 'NameSpaces' => {},
- 'Needed' => {
- 'libc.so.6' => 1,
- 'libm.so.6' => 1,
- 'libpthread.so.0' => 1
- },
- 'PublicABI' => '1',
- 'Sources' => {
- 'cio.c' => 1,
- 'image.c' => 1,
- 'openjpeg.c' => 1,
- 'thread.c' => 1
- },
- 'SymbolInfo' => {
- '14418' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_buffer_size',
- 'type' => '9055'
- },
- '1' => {
- 'name' => 'l_is_input',
- 'type' => '2753'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '14570',
- 'ShortName' => 'opj_stream_create',
- 'Source' => 'cio.c',
- 'SourceLine' => '158'
- },
- '14576' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'l_is_input',
- 'type' => '2753'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '14570',
- 'ShortName' => 'opj_stream_default_create',
- 'Source' => 'cio.c',
- 'SourceLine' => '194'
- },
- '14653' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_destroy',
- 'Source' => 'cio.c',
- 'SourceLine' => '199'
- },
- '14746' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_function',
- 'type' => '11274'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_read_function',
- 'Source' => 'cio.c',
- 'SourceLine' => '213'
- },
- '14815' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_function',
- 'type' => '11367'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_seek_function',
- 'Source' => 'cio.c',
- 'SourceLine' => '225'
- },
- '14884' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_function',
- 'type' => '11317'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_write_function',
- 'Source' => 'cio.c',
- 'SourceLine' => '236'
- },
- '14953' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_function',
- 'type' => '11329'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_skip_function',
- 'Source' => 'cio.c',
- 'SourceLine' => '248'
- },
- '15022' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_data',
- 'type' => '130'
- },
- '2' => {
- 'name' => 'p_function',
- 'type' => '11405'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_user_data',
- 'Source' => 'cio.c',
- 'SourceLine' => '260'
- },
- '15109' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'data_length',
- 'type' => '11207'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_stream_set_user_data_length',
- 'Source' => 'cio.c',
- 'SourceLine' => '271'
- },
- '183613' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '1096',
- 'Return' => '156',
- 'ShortName' => 'opj_version',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '171'
- },
- '183933' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '1650',
- 'Param' => {
- '0' => {
- 'name' => 'cstr_info',
- 'type' => '183951'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_destroy_cstr_info',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1014'
- },
- '247683' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_callback',
- 'type' => '11240'
- },
- '2' => {
- 'name' => 'p_user_data',
- 'type' => '130'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_info_handler',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '44'
- },
- '247781' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_callback',
- 'type' => '11240'
- },
- '2' => {
- 'name' => 'p_user_data',
- 'type' => '130'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_warning_handler',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '59'
- },
- '247867' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_callback',
- 'type' => '11240'
- },
- '2' => {
- 'name' => 'p_user_data',
- 'type' => '130'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_error_handler',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '74'
- },
- '247982' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_format',
- 'type' => '236507'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '247769',
- 'ShortName' => 'opj_create_decompress',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '179'
- },
- '248204' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'parameters',
- 'type' => '85814'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_set_default_decoder_parameters',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '375'
- },
- '248335' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'num_threads',
- 'type' => '87'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_codec_set_threads',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '398'
- },
- '248453' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'parameters',
- 'type' => '85814'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_setup_decoder',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '409'
- },
- '248595' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '1' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '2' => {
- 'name' => 'p_image',
- 'type' => '85808'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_read_header',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '429'
- },
- '248798' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'numcomps',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'comps_indices',
- 'type' => '85826'
- },
- '3' => {
- 'name' => 'apply_color_transforms',
- 'type' => '2753'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_decoded_components',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '453'
- },
- '249040' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '2' => {
- 'name' => 'p_image',
- 'type' => '21106'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_decode',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '482'
- },
- '249194' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_image',
- 'type' => '21106'
- },
- '2' => {
- 'name' => 'p_start_x',
- 'type' => '9033'
- },
- '3' => {
- 'name' => 'p_start_y',
- 'type' => '9033'
- },
- '4' => {
- 'name' => 'p_end_x',
- 'type' => '9033'
- },
- '5' => {
- 'name' => 'p_end_y',
- 'type' => '9033'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx',
- '4' => 'r8',
- '5' => 'r9'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_decode_area',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '503'
- },
- '249402' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '2' => {
- 'name' => 'p_tile_index',
- 'type' => '11838'
- },
- '3' => {
- 'name' => 'p_data_size',
- 'type' => '11838'
- },
- '4' => {
- 'name' => 'p_tile_x0',
- 'type' => '19167'
- },
- '5' => {
- 'name' => 'p_tile_y0',
- 'type' => '19167'
- },
- '6' => {
- 'name' => 'p_tile_x1',
- 'offset' => '0',
- 'type' => '19167'
- },
- '7' => {
- 'name' => 'p_tile_y1',
- 'offset' => '8',
- 'type' => '19167'
- },
- '8' => {
- 'name' => 'p_nb_comps',
- 'offset' => '16',
- 'type' => '11838'
- },
- '9' => {
- 'name' => 'p_should_go_on',
- 'offset' => '24',
- 'type' => '23206'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx',
- '4' => 'r8',
- '5' => 'r9'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_read_tile_header',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '526'
- },
- '249717' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_tile_index',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'p_data',
- 'type' => '9066'
- },
- '3' => {
- 'name' => 'p_data_size',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx',
- '4' => 'r8'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_decode_tile_data',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '557'
- },
- '249917' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- },
- '2' => {
- 'name' => 'p_image',
- 'type' => '21106'
- },
- '3' => {
- 'name' => 'tile_index',
- 'type' => '9044'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_get_decoded_tile',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '583'
- },
- '250094' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'res_factor',
- 'type' => '9044'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_decoded_resolution_factor',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '607'
- },
- '250203' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_format',
- 'type' => '236507'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '247769',
- 'ShortName' => 'opj_create_compress',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '625'
- },
- '250428' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'parameters',
- 'type' => '85837'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_set_default_encoder_parameters',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '739'
- },
- '250559' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'parameters',
- 'type' => '85837'
- },
- '2' => {
- 'name' => 'p_image',
- 'type' => '21106'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_setup_encoder',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '800'
- },
- '250697' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'options',
- 'type' => '85843'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_encoder_set_extra_options',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '820'
- },
- '250812' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_image',
- 'type' => '21106'
- },
- '2' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_start_compress',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '839'
- },
- '250966' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_info',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_encode',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '858'
- },
- '251097' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_end_compress',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '875'
- },
- '251228' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_end_decompress',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '892'
- },
- '251359' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'parameters',
- 'type' => '85837'
- },
- '1' => {
- 'name' => 'pEncodingMatrix',
- 'type' => '11832'
- },
- '2' => {
- 'name' => 'p_dc_shift',
- 'type' => '19167'
- },
- '3' => {
- 'name' => 'pNbComp',
- 'type' => '9044'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_set_MCT',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '912'
- },
- '251705' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'p_tile_index',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'p_data',
- 'type' => '9066'
- },
- '3' => {
- 'name' => 'p_data_size',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'p_stream',
- 'type' => '14570'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx',
- '3' => 'rcx',
- '4' => 'r8'
- },
- 'Return' => '2753',
- 'ShortName' => 'opj_write_tile',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '942'
- },
- '251905' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_destroy_codec',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '969'
- },
- '252006' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- },
- '1' => {
- 'name' => 'info_flag',
- 'type' => '9033'
- },
- '2' => {
- 'name' => 'output_stream',
- 'type' => '85854'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_dump_codec',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '987'
- },
- '252143' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '85860',
- 'ShortName' => 'opj_get_cstr_info',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1003'
- },
- '252307' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_codec',
- 'type' => '247769'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '83562',
- 'ShortName' => 'opj_get_cstr_index',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1031'
- },
- '252392' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'p_cstr_index',
- 'type' => '252452'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_destroy_cstr_index',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1042'
- },
- '252458' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'fname',
- 'type' => '156'
- },
- '1' => {
- 'name' => 'p_size',
- 'type' => '9055'
- },
- '2' => {
- 'name' => 'p_is_read_stream',
- 'type' => '2753'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '14570',
- 'ShortName' => 'opj_stream_create_file_stream',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1057'
- },
- '252891' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'fname',
- 'type' => '156'
- },
- '1' => {
- 'name' => 'p_is_read_stream',
- 'type' => '2753'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi'
- },
- 'Return' => '14570',
- 'ShortName' => 'opj_stream_create_default_file_stream',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1050'
- },
- '3814' => {
- 'Header' => 'openjpeg.h',
- 'Return' => '2753',
- 'ShortName' => 'opj_has_thread_support',
- 'Source' => 'thread.c',
- 'SourceLine' => '295'
- },
- '3844' => {
- 'Header' => 'openjpeg.h',
- 'Return' => '87',
- 'ShortName' => 'opj_get_num_cpus',
- 'Source' => 'thread.c',
- 'SourceLine' => '300'
- },
- '70002' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'image',
- 'type' => '21106'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_image_destroy',
- 'Source' => 'image.c',
- 'SourceLine' => '92'
- },
- '70168' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'numcmpts',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'cmptparms',
- 'type' => '70518'
- },
- '2' => {
- 'name' => 'clrspc',
- 'type' => '18456'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '21106',
- 'ShortName' => 'opj_image_create',
- 'Source' => 'image.c',
- 'SourceLine' => '40'
- },
- '72160' => {
- 'Header' => 'openjpeg.h',
- 'Param' => {
- '0' => {
- 'name' => 'numcmpts',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'cmptparms',
- 'type' => '70518'
- },
- '2' => {
- 'name' => 'clrspc',
- 'type' => '18456'
- }
- },
- 'Reg' => {
- '0' => 'rdi',
- '1' => 'rsi',
- '2' => 'rdx'
- },
- 'Return' => '21106',
- 'ShortName' => 'opj_image_tile_create',
- 'Source' => 'image.c',
- 'SourceLine' => '228'
- },
- '72439' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '1153',
- 'Param' => {
- '0' => {
- 'name' => 'ptr',
- 'type' => '130'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '1',
- 'ShortName' => 'opj_image_data_free',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1108'
- },
- '72503' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '1143',
- 'Param' => {
- '0' => {
- 'name' => 'size',
- 'type' => '9055'
- }
- },
- 'Reg' => {
- '0' => 'rdi'
- },
- 'Return' => '130',
- 'ShortName' => 'opj_image_data_alloc',
- 'Source' => 'openjpeg.c',
- 'SourceLine' => '1101'
- }
- },
- 'SymbolVersion' => {
- '_ITM_deregisterTMCloneTable' => 'sysconf@@GLIBC_2.2.5',
- '_ITM_registerTMCloneTable' => 'sysconf@@GLIBC_2.2.5',
- '_Jv_RegisterClasses' => 'sysconf@@GLIBC_2.2.5',
- '__gmon_start__' => 'sysconf@@GLIBC_2.2.5'
- },
- 'Symbols' => {
- 'libopenjp2.so.2.4.0' => {
- '_fini' => 1,
- '_init' => 1,
- 'opj_codec_set_threads' => 1,
- 'opj_create_compress' => 1,
- 'opj_create_decompress' => 1,
- 'opj_decode' => 1,
- 'opj_decode_tile_data' => 1,
- 'opj_destroy_codec' => 1,
- 'opj_destroy_cstr_index' => 1,
- 'opj_destroy_cstr_info' => 1,
- 'opj_dump_codec' => 1,
- 'opj_encode' => 1,
- 'opj_encoder_set_extra_options' => 1,
- 'opj_end_compress' => 1,
- 'opj_end_decompress' => 1,
- 'opj_get_cstr_index' => 1,
- 'opj_get_cstr_info' => 1,
- 'opj_get_decoded_tile' => 1,
- 'opj_get_num_cpus' => 1,
- 'opj_has_thread_support' => 1,
- 'opj_image_create' => 1,
- 'opj_image_data_alloc' => 1,
- 'opj_image_data_free' => 1,
- 'opj_image_destroy' => 1,
- 'opj_image_tile_create' => 1,
- 'opj_read_header' => 1,
- 'opj_read_tile_header' => 1,
- 'opj_set_MCT' => 1,
- 'opj_set_decode_area' => 1,
- 'opj_set_decoded_components' => 1,
- 'opj_set_decoded_resolution_factor' => 1,
- 'opj_set_default_decoder_parameters' => 1,
- 'opj_set_default_encoder_parameters' => 1,
- 'opj_set_error_handler' => 1,
- 'opj_set_info_handler' => 1,
- 'opj_set_warning_handler' => 1,
- 'opj_setup_decoder' => 1,
- 'opj_setup_encoder' => 1,
- 'opj_start_compress' => 1,
- 'opj_stream_create' => 1,
- 'opj_stream_create_default_file_stream' => 1,
- 'opj_stream_create_file_stream' => 1,
- 'opj_stream_default_create' => 1,
- 'opj_stream_destroy' => 1,
- 'opj_stream_set_read_function' => 1,
- 'opj_stream_set_seek_function' => 1,
- 'opj_stream_set_skip_function' => 1,
- 'opj_stream_set_user_data' => 1,
- 'opj_stream_set_user_data_length' => 1,
- 'opj_stream_set_write_function' => 1,
- 'opj_version' => 1,
- 'opj_write_tile' => 1
- }
- },
- 'Target' => 'unix',
- 'TypeInfo' => {
- '1' => {
- 'Name' => 'void',
- 'Type' => 'Intrinsic'
- },
- '101' => {
- 'BaseType' => '94',
- 'Header' => 'types.h',
- 'Line' => '131',
- 'Name' => '__off_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11108' => {
- 'BaseType' => '2252',
- 'Header' => 'openjpeg.h',
- 'Line' => '115',
- 'Name' => 'OPJ_FLOAT32',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '11152' => {
- 'BaseType' => '94',
- 'Header' => 'stdint.h',
- 'Line' => '40',
- 'Name' => 'int64_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11174' => {
- 'BaseType' => '66',
- 'Header' => 'stdint.h',
- 'Line' => '55',
- 'Name' => 'uint64_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '112' => {
- 'BaseType' => '94',
- 'Header' => 'types.h',
- 'Line' => '132',
- 'Name' => '__off64_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11207' => {
- 'BaseType' => '11174',
- 'Header' => 'openjpeg.h',
- 'Line' => '128',
- 'Name' => 'OPJ_UINT64',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11218' => {
- 'BaseType' => '11152',
- 'Header' => 'openjpeg.h',
- 'Line' => '130',
- 'Name' => 'OPJ_OFF_T',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11240' => {
- 'BaseType' => '11252',
- 'Header' => 'openjpeg.h',
- 'Line' => '343',
- 'Name' => 'opj_msg_callback',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11252' => {
- 'Name' => 'void(*)(char const*, void*)',
- 'Param' => {
- '0' => {
- 'type' => '156'
- },
- '1' => {
- 'type' => '130'
- }
- },
- 'Return' => '1',
- 'Size' => '8',
- 'Type' => 'FuncPtr'
- },
- '11274' => {
- 'BaseType' => '11286',
- 'Header' => 'openjpeg.h',
- 'Line' => '631',
- 'Name' => 'opj_stream_read_fn',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11286' => {
- 'Name' => 'OPJ_SIZE_T(*)(void*, OPJ_SIZE_T, void*)',
- 'Param' => {
- '0' => {
- 'type' => '130'
- },
- '1' => {
- 'type' => '9055'
- },
- '2' => {
- 'type' => '130'
- }
- },
- 'Return' => '9055',
- 'Size' => '8',
- 'Type' => 'FuncPtr'
- },
- '11317' => {
- 'BaseType' => '11286',
- 'Header' => 'openjpeg.h',
- 'Line' => '637',
- 'Name' => 'opj_stream_write_fn',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11329' => {
- 'BaseType' => '11341',
- 'Header' => 'openjpeg.h',
- 'Line' => '643',
- 'Name' => 'opj_stream_skip_fn',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11341' => {
- 'Name' => 'OPJ_OFF_T(*)(OPJ_OFF_T, void*)',
- 'Param' => {
- '0' => {
- 'type' => '11218'
- },
- '1' => {
- 'type' => '130'
- }
- },
- 'Return' => '11218',
- 'Size' => '8',
- 'Type' => 'FuncPtr'
- },
- '11367' => {
- 'BaseType' => '11379',
- 'Header' => 'openjpeg.h',
- 'Line' => '649',
- 'Name' => 'opj_stream_seek_fn',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11379' => {
- 'Name' => 'OPJ_BOOL(*)(OPJ_OFF_T, void*)',
- 'Param' => {
- '0' => {
- 'type' => '11218'
- },
- '1' => {
- 'type' => '130'
- }
- },
- 'Return' => '2753',
- 'Size' => '8',
- 'Type' => 'FuncPtr'
- },
- '11405' => {
- 'BaseType' => '797',
- 'Header' => 'openjpeg.h',
- 'Line' => '655',
- 'Name' => 'opj_stream_free_user_data_fn',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11434' => {
- 'BaseType' => '130',
- 'Header' => 'openjpeg.h',
- 'Line' => '660',
- 'Name' => 'opj_stream_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '11832' => {
- 'BaseType' => '11108',
- 'Name' => 'OPJ_FLOAT32*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '11838' => {
- 'BaseType' => '9044',
- 'Name' => 'OPJ_UINT32*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '130' => {
- 'BaseType' => '1',
- 'Name' => 'void*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '132' => {
- 'BaseType' => '138',
- 'Name' => 'char*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '138' => {
- 'Name' => 'char',
- 'Size' => '1',
- 'Type' => 'Intrinsic'
- },
- '145' => {
- 'BaseType' => '66',
- 'Header' => 'stddef.h',
- 'Line' => '212',
- 'Name' => 'size_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '14570' => {
- 'BaseType' => '11434',
- 'Name' => 'opj_stream_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '156' => {
- 'BaseType' => '162',
- 'Name' => 'char const*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '162' => {
- 'BaseType' => '138',
- 'Name' => 'char const',
- 'Size' => '1',
- 'Type' => 'Const'
- },
- '18206' => {
- 'BaseType' => '138',
- 'Header' => 'openjpeg.h',
- 'Line' => '114',
- 'Name' => 'OPJ_CHAR',
- 'Size' => '1',
- 'Type' => 'Typedef'
- },
- '18250' => {
- 'BaseType' => '52',
- 'Header' => 'stdint.h',
- 'Line' => '49',
- 'Name' => 'uint16_t',
- 'Size' => '2',
- 'Type' => 'Typedef'
- },
- '18283' => {
- 'BaseType' => '18250',
- 'Header' => 'openjpeg.h',
- 'Line' => '124',
- 'Name' => 'OPJ_UINT16',
- 'Size' => '2',
- 'Type' => 'Typedef'
- },
- '18338' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '297',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_PROG_UNKNOWN',
- 'value' => '-1'
- },
- '1' => {
- 'name' => 'OPJ_LRCP',
- 'value' => '0'
- },
- '2' => {
- 'name' => 'OPJ_RLCP',
- 'value' => '1'
- },
- '3' => {
- 'name' => 'OPJ_RPCL',
- 'value' => '2'
- },
- '4' => {
- 'name' => 'OPJ_PCRL',
- 'value' => '3'
- },
- '5' => {
- 'name' => 'OPJ_CPRL',
- 'value' => '4'
- }
- },
- 'Name' => 'enum PROG_ORDER',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '18388' => {
- 'BaseType' => '18338',
- 'Header' => 'openjpeg.h',
- 'Line' => '304',
- 'Name' => 'OPJ_PROG_ORDER',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '183951' => {
- 'BaseType' => '85860',
- 'Name' => 'opj_codestream_info_v2_t**',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '18400' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '309',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_CLRSPC_UNKNOWN',
- 'value' => '-1'
- },
- '1' => {
- 'name' => 'OPJ_CLRSPC_UNSPECIFIED',
- 'value' => '0'
- },
- '2' => {
- 'name' => 'OPJ_CLRSPC_SRGB',
- 'value' => '1'
- },
- '3' => {
- 'name' => 'OPJ_CLRSPC_GRAY',
- 'value' => '2'
- },
- '4' => {
- 'name' => 'OPJ_CLRSPC_SYCC',
- 'value' => '3'
- },
- '5' => {
- 'name' => 'OPJ_CLRSPC_EYCC',
- 'value' => '4'
- },
- '6' => {
- 'name' => 'OPJ_CLRSPC_CMYK',
- 'value' => '5'
- }
- },
- 'Name' => 'enum COLOR_SPACE',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '18456' => {
- 'BaseType' => '18400',
- 'Header' => 'openjpeg.h',
- 'Line' => '317',
- 'Name' => 'OPJ_COLOR_SPACE',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '18468' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '359',
- 'Memb' => {
- '0' => {
- 'name' => 'resno0',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'compno0',
- 'offset' => '4',
- 'type' => '9044'
- },
- '10' => {
- 'name' => 'progorder',
- 'offset' => '40',
- 'type' => '18948'
- },
- '11' => {
- 'name' => 'tile',
- 'offset' => '48',
- 'type' => '9044'
- },
- '12' => {
- 'name' => 'tx0',
- 'offset' => '52',
- 'type' => '9033'
- },
- '13' => {
- 'name' => 'tx1',
- 'offset' => '56',
- 'type' => '9033'
- },
- '14' => {
- 'name' => 'ty0',
- 'offset' => '60',
- 'type' => '9033'
- },
- '15' => {
- 'name' => 'ty1',
- 'offset' => '64',
- 'type' => '9033'
- },
- '16' => {
- 'name' => 'layS',
- 'offset' => '68',
- 'type' => '9044'
- },
- '17' => {
- 'name' => 'resS',
- 'offset' => '72',
- 'type' => '9044'
- },
- '18' => {
- 'name' => 'compS',
- 'offset' => '76',
- 'type' => '9044'
- },
- '19' => {
- 'name' => 'prcS',
- 'offset' => '80',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'layno1',
- 'offset' => '8',
- 'type' => '9044'
- },
- '20' => {
- 'name' => 'layE',
- 'offset' => '84',
- 'type' => '9044'
- },
- '21' => {
- 'name' => 'resE',
- 'offset' => '88',
- 'type' => '9044'
- },
- '22' => {
- 'name' => 'compE',
- 'offset' => '92',
- 'type' => '9044'
- },
- '23' => {
- 'name' => 'prcE',
- 'offset' => '96',
- 'type' => '9044'
- },
- '24' => {
- 'name' => 'txS',
- 'offset' => '100',
- 'type' => '9044'
- },
- '25' => {
- 'name' => 'txE',
- 'offset' => '104',
- 'type' => '9044'
- },
- '26' => {
- 'name' => 'tyS',
- 'offset' => '108',
- 'type' => '9044'
- },
- '27' => {
- 'name' => 'tyE',
- 'offset' => '112',
- 'type' => '9044'
- },
- '28' => {
- 'name' => 'dx',
- 'offset' => '116',
- 'type' => '9044'
- },
- '29' => {
- 'name' => 'dy',
- 'offset' => '120',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'resno1',
- 'offset' => '12',
- 'type' => '9044'
- },
- '30' => {
- 'name' => 'lay_t',
- 'offset' => '124',
- 'type' => '9044'
- },
- '31' => {
- 'name' => 'res_t',
- 'offset' => '128',
- 'type' => '9044'
- },
- '32' => {
- 'name' => 'comp_t',
- 'offset' => '132',
- 'type' => '9044'
- },
- '33' => {
- 'name' => 'prc_t',
- 'offset' => '136',
- 'type' => '9044'
- },
- '34' => {
- 'name' => 'tx0_t',
- 'offset' => '140',
- 'type' => '9044'
- },
- '35' => {
- 'name' => 'ty0_t',
- 'offset' => '144',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'compno1',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'layno0',
- 'offset' => '20',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'precno0',
- 'offset' => '24',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'precno1',
- 'offset' => '28',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'prg1',
- 'offset' => '32',
- 'type' => '18388'
- },
- '9' => {
- 'name' => 'prg',
- 'offset' => '36',
- 'type' => '18388'
- }
- },
- 'Name' => 'struct opj_poc',
- 'Size' => '148',
- 'Type' => 'Struct'
- },
- '18948' => {
- 'BaseType' => '18206',
- 'Name' => 'OPJ_CHAR[5]',
- 'Size' => '5',
- 'Type' => 'Array'
- },
- '18964' => {
- 'BaseType' => '18468',
- 'Header' => 'openjpeg.h',
- 'Line' => '382',
- 'Name' => 'opj_poc_t',
- 'Size' => '148',
- 'Type' => 'Typedef'
- },
- '18976' => {
- 'BaseType' => '18964',
- 'Name' => 'opj_poc_t[32]',
- 'Size' => '4736',
- 'Type' => 'Array'
- },
- '18992' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '671',
- 'Memb' => {
- '0' => {
- 'name' => 'dx',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'dy',
- 'offset' => '4',
- 'type' => '9044'
- },
- '10' => {
- 'name' => 'factor',
- 'offset' => '40',
- 'type' => '9044'
- },
- '11' => {
- 'name' => 'data',
- 'offset' => '48',
- 'type' => '19167'
- },
- '12' => {
- 'name' => 'alpha',
- 'offset' => '56',
- 'type' => '18283'
- },
- '2' => {
- 'name' => 'w',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'h',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'x0',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'y0',
- 'offset' => '20',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'prec',
- 'offset' => '24',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'bpp',
- 'offset' => '28',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'sgnd',
- 'offset' => '32',
- 'type' => '9044'
- },
- '9' => {
- 'name' => 'resno_decoded',
- 'offset' => '36',
- 'type' => '9044'
- }
- },
- 'Name' => 'struct opj_image_comp',
- 'Size' => '64',
- 'Type' => 'Struct'
- },
- '19167' => {
- 'BaseType' => '9033',
- 'Name' => 'OPJ_INT32*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '19173' => {
- 'BaseType' => '18992',
- 'Header' => 'openjpeg.h',
- 'Line' => '698',
- 'Name' => 'opj_image_comp_t',
- 'Size' => '64',
- 'Type' => 'Typedef'
- },
- '19185' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '703',
- 'Memb' => {
- '0' => {
- 'name' => 'x0',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'y0',
- 'offset' => '4',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'x1',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'y1',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'numcomps',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'color_space',
- 'offset' => '20',
- 'type' => '18456'
- },
- '6' => {
- 'name' => 'comps',
- 'offset' => '24',
- 'type' => '19312'
- },
- '7' => {
- 'name' => 'icc_profile_buf',
- 'offset' => '32',
- 'type' => '9066'
- },
- '8' => {
- 'name' => 'icc_profile_len',
- 'offset' => '40',
- 'type' => '9044'
- }
- },
- 'Name' => 'struct opj_image',
- 'Size' => '48',
- 'Type' => 'Struct'
- },
- '19312' => {
- 'BaseType' => '19173',
- 'Name' => 'opj_image_comp_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '19324' => {
- 'BaseType' => '19185',
- 'Header' => 'openjpeg.h',
- 'Line' => '722',
- 'Name' => 'opj_image_t',
- 'Size' => '48',
- 'Type' => 'Typedef'
- },
- '19336' => {
- 'BaseType' => '9044',
- 'Name' => 'OPJ_UINT32[33]',
- 'Size' => '132',
- 'Type' => 'Array'
- },
- '21106' => {
- 'BaseType' => '19324',
- 'Name' => 'opj_image_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '2252' => {
- 'Name' => 'float',
- 'Size' => '4',
- 'Type' => 'Intrinsic'
- },
- '2259' => {
- 'Name' => 'double',
- 'Size' => '8',
- 'Type' => 'Intrinsic'
- },
- '2266' => {
- 'Header' => 'libio.h',
- 'Line' => '241',
- 'Memb' => {
- '0' => {
- 'name' => '_flags',
- 'offset' => '0',
- 'type' => '87'
- },
- '1' => {
- 'name' => '_IO_read_ptr',
- 'offset' => '8',
- 'type' => '132'
- },
- '10' => {
- 'name' => '_IO_backup_base',
- 'offset' => '80',
- 'type' => '132'
- },
- '11' => {
- 'name' => '_IO_save_end',
- 'offset' => '88',
- 'type' => '132'
- },
- '12' => {
- 'name' => '_markers',
- 'offset' => '96',
- 'type' => '2703'
- },
- '13' => {
- 'name' => '_chain',
- 'offset' => '104',
- 'type' => '2709'
- },
- '14' => {
- 'name' => '_fileno',
- 'offset' => '112',
- 'type' => '87'
- },
- '15' => {
- 'name' => '_flags2',
- 'offset' => '116',
- 'type' => '87'
- },
- '16' => {
- 'name' => '_old_offset',
- 'offset' => '120',
- 'type' => '101'
- },
- '17' => {
- 'name' => '_cur_column',
- 'offset' => '128',
- 'type' => '52'
- },
- '18' => {
- 'name' => '_vtable_offset',
- 'offset' => '130',
- 'type' => '73'
- },
- '19' => {
- 'name' => '_shortbuf',
- 'offset' => '131',
- 'type' => '2715'
- },
- '2' => {
- 'name' => '_IO_read_end',
- 'offset' => '16',
- 'type' => '132'
- },
- '20' => {
- 'name' => '_lock',
- 'offset' => '136',
- 'type' => '2731'
- },
- '21' => {
- 'name' => '_offset',
- 'offset' => '144',
- 'type' => '112'
- },
- '22' => {
- 'name' => '__pad1',
- 'offset' => '152',
- 'type' => '130'
- },
- '23' => {
- 'name' => '__pad2',
- 'offset' => '160',
- 'type' => '130'
- },
- '24' => {
- 'name' => '__pad3',
- 'offset' => '168',
- 'type' => '130'
- },
- '25' => {
- 'name' => '__pad4',
- 'offset' => '176',
- 'type' => '130'
- },
- '26' => {
- 'name' => '__pad5',
- 'offset' => '184',
- 'type' => '145'
- },
- '27' => {
- 'name' => '_mode',
- 'offset' => '192',
- 'type' => '87'
- },
- '28' => {
- 'name' => '_unused2',
- 'offset' => '196',
- 'type' => '2737'
- },
- '3' => {
- 'name' => '_IO_read_base',
- 'offset' => '24',
- 'type' => '132'
- },
- '4' => {
- 'name' => '_IO_write_base',
- 'offset' => '32',
- 'type' => '132'
- },
- '5' => {
- 'name' => '_IO_write_ptr',
- 'offset' => '40',
- 'type' => '132'
- },
- '6' => {
- 'name' => '_IO_write_end',
- 'offset' => '48',
- 'type' => '132'
- },
- '7' => {
- 'name' => '_IO_buf_base',
- 'offset' => '56',
- 'type' => '132'
- },
- '8' => {
- 'name' => '_IO_buf_end',
- 'offset' => '64',
- 'type' => '132'
- },
- '9' => {
- 'name' => '_IO_save_base',
- 'offset' => '72',
- 'type' => '132'
- }
- },
- 'Name' => 'struct _IO_FILE',
- 'PrivateABI' => 1,
- 'Size' => '216',
- 'Type' => 'Struct'
- },
- '23206' => {
- 'BaseType' => '2753',
- 'Name' => 'OPJ_BOOL*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '23240' => {
- 'BaseType' => '9044',
- 'Name' => 'OPJ_UINT32 const',
- 'Size' => '4',
- 'Type' => 'Const'
- },
- '236457' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '322',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_CODEC_UNKNOWN',
- 'value' => '-1'
- },
- '1' => {
- 'name' => 'OPJ_CODEC_J2K',
- 'value' => '0'
- },
- '2' => {
- 'name' => 'OPJ_CODEC_JPT',
- 'value' => '1'
- },
- '3' => {
- 'name' => 'OPJ_CODEC_JP2',
- 'value' => '2'
- },
- '4' => {
- 'name' => 'OPJ_CODEC_JPP',
- 'value' => '3'
- },
- '5' => {
- 'name' => 'OPJ_CODEC_JPX',
- 'value' => '4'
- }
- },
- 'Name' => 'enum CODEC_FORMAT',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '236507' => {
- 'BaseType' => '236457',
- 'Header' => 'openjpeg.h',
- 'Line' => '329',
- 'Name' => 'OPJ_CODEC_FORMAT',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '238264' => {
- 'BaseType' => '130',
- 'Header' => 'openjpeg.h',
- 'Line' => '612',
- 'Name' => 'opj_codec_t',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '247769' => {
- 'BaseType' => '238264',
- 'Name' => 'opj_codec_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '252452' => {
- 'BaseType' => '83562',
- 'Name' => 'opj_codestream_index_t**',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '2647' => {
- 'Header' => 'libio.h',
- 'Line' => '150',
- 'Name' => '_IO_lock_t',
- 'Type' => 'Typedef'
- },
- '2654' => {
- 'Header' => 'libio.h',
- 'Line' => '156',
- 'Memb' => {
- '0' => {
- 'name' => '_next',
- 'offset' => '0',
- 'type' => '2703'
- },
- '1' => {
- 'name' => '_sbuf',
- 'offset' => '8',
- 'type' => '2709'
- },
- '2' => {
- 'name' => '_pos',
- 'offset' => '16',
- 'type' => '87'
- }
- },
- 'Name' => 'struct _IO_marker',
- 'PrivateABI' => 1,
- 'Size' => '24',
- 'Type' => 'Struct'
- },
- '2703' => {
- 'BaseType' => '2654',
- 'Name' => 'struct _IO_marker*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '2709' => {
- 'BaseType' => '2266',
- 'Name' => 'struct _IO_FILE*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '2715' => {
- 'BaseType' => '138',
- 'Name' => 'char[1]',
- 'Size' => '1',
- 'Type' => 'Array'
- },
- '2731' => {
- 'BaseType' => '2647',
- 'Name' => '_IO_lock_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '2737' => {
- 'BaseType' => '138',
- 'Name' => 'char[20]',
- 'Size' => '20',
- 'Type' => 'Array'
- },
- '2753' => {
- 'BaseType' => '87',
- 'Header' => 'openjpeg.h',
- 'Line' => '110',
- 'Name' => 'OPJ_BOOL',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '45' => {
- 'Name' => 'unsigned char',
- 'Size' => '1',
- 'Type' => 'Intrinsic'
- },
- '52' => {
- 'Name' => 'unsigned short',
- 'Size' => '2',
- 'Type' => 'Intrinsic'
- },
- '59' => {
- 'Name' => 'unsigned int',
- 'Size' => '4',
- 'Type' => 'Intrinsic'
- },
- '66' => {
- 'Name' => 'unsigned long',
- 'Size' => '8',
- 'Type' => 'Intrinsic'
- },
- '67857' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '728',
- 'Memb' => {
- '0' => {
- 'name' => 'dx',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'dy',
- 'offset' => '4',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'w',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'h',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'x0',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'y0',
- 'offset' => '20',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'prec',
- 'offset' => '24',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'bpp',
- 'offset' => '28',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'sgnd',
- 'offset' => '32',
- 'type' => '9044'
- }
- },
- 'Name' => 'struct opj_image_comptparm',
- 'Size' => '36',
- 'Type' => 'Struct'
- },
- '67980' => {
- 'BaseType' => '67857',
- 'Header' => 'openjpeg.h',
- 'Line' => '747',
- 'Name' => 'opj_image_cmptparm_t',
- 'Size' => '36',
- 'Type' => 'Typedef'
- },
- '70518' => {
- 'BaseType' => '67980',
- 'Name' => 'opj_image_cmptparm_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '73' => {
- 'Name' => 'signed char',
- 'Size' => '1',
- 'Type' => 'Intrinsic'
- },
- '75668' => {
- 'BaseType' => '2266',
- 'Header' => 'stdio.h',
- 'Line' => '48',
- 'Name' => 'FILE',
- 'Size' => '216',
- 'Type' => 'Typedef'
- },
- '76397' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '276',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_STD_RSIZ',
- 'value' => '0'
- },
- '1' => {
- 'name' => 'OPJ_CINEMA2K',
- 'value' => '3'
- },
- '2' => {
- 'name' => 'OPJ_CINEMA4K',
- 'value' => '4'
- },
- '3' => {
- 'name' => 'OPJ_MCT',
- 'value' => '33024'
- }
- },
- 'Name' => 'enum RSIZ_CAPABILITIES',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '76437' => {
- 'BaseType' => '76397',
- 'Header' => 'openjpeg.h',
- 'Line' => '281',
- 'Name' => 'OPJ_RSIZ_CAPABILITIES',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '76449' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '287',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_OFF',
- 'value' => '0'
- },
- '1' => {
- 'name' => 'OPJ_CINEMA2K_24',
- 'value' => '1'
- },
- '2' => {
- 'name' => 'OPJ_CINEMA2K_48',
- 'value' => '2'
- },
- '3' => {
- 'name' => 'OPJ_CINEMA4K_24',
- 'value' => '3'
- }
- },
- 'Name' => 'enum CINEMA_MODE',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '76487' => {
- 'BaseType' => '76449',
- 'Header' => 'openjpeg.h',
- 'Line' => '292',
- 'Name' => 'OPJ_CINEMA_MODE',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '77171' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '387',
- 'Memb' => {
- '0' => {
- 'name' => 'tile_size_on',
- 'offset' => '0',
- 'type' => '2753'
- },
- '1' => {
- 'name' => 'cp_tx0',
- 'offset' => '4',
- 'type' => '87'
- },
- '10' => {
- 'name' => 'csty',
- 'offset' => '48',
- 'type' => '87'
- },
- '11' => {
- 'name' => 'prog_order',
- 'offset' => '52',
- 'type' => '18388'
- },
- '12' => {
- 'name' => 'POC',
- 'offset' => '56',
- 'type' => '18976'
- },
- '13' => {
- 'name' => 'numpocs',
- 'offset' => '4792',
- 'type' => '9044'
- },
- '14' => {
- 'name' => 'tcp_numlayers',
- 'offset' => '4796',
- 'type' => '87'
- },
- '15' => {
- 'name' => 'tcp_rates',
- 'offset' => '4800',
- 'type' => '78035'
- },
- '16' => {
- 'name' => 'tcp_distoratio',
- 'offset' => '5200',
- 'type' => '78035'
- },
- '17' => {
- 'name' => 'numresolution',
- 'offset' => '5600',
- 'type' => '87'
- },
- '18' => {
- 'name' => 'cblockw_init',
- 'offset' => '5604',
- 'type' => '87'
- },
- '19' => {
- 'name' => 'cblockh_init',
- 'offset' => '5608',
- 'type' => '87'
- },
- '2' => {
- 'name' => 'cp_ty0',
- 'offset' => '8',
- 'type' => '87'
- },
- '20' => {
- 'name' => 'mode',
- 'offset' => '5612',
- 'type' => '87'
- },
- '21' => {
- 'name' => 'irreversible',
- 'offset' => '5616',
- 'type' => '87'
- },
- '22' => {
- 'name' => 'roi_compno',
- 'offset' => '5620',
- 'type' => '87'
- },
- '23' => {
- 'name' => 'roi_shift',
- 'offset' => '5624',
- 'type' => '87'
- },
- '24' => {
- 'name' => 'res_spec',
- 'offset' => '5628',
- 'type' => '87'
- },
- '25' => {
- 'name' => 'prcw_init',
- 'offset' => '5632',
- 'type' => '78051'
- },
- '26' => {
- 'name' => 'prch_init',
- 'offset' => '5764',
- 'type' => '78051'
- },
- '27' => {
- 'name' => 'infile',
- 'offset' => '5896',
- 'type' => '78067'
- },
- '28' => {
- 'name' => 'outfile',
- 'offset' => '9992',
- 'type' => '78067'
- },
- '29' => {
- 'name' => 'index_on',
- 'offset' => '14088',
- 'type' => '87'
- },
- '3' => {
- 'name' => 'cp_tdx',
- 'offset' => '12',
- 'type' => '87'
- },
- '30' => {
- 'name' => 'index',
- 'offset' => '14092',
- 'type' => '78067'
- },
- '31' => {
- 'name' => 'image_offset_x0',
- 'offset' => '18188',
- 'type' => '87'
- },
- '32' => {
- 'name' => 'image_offset_y0',
- 'offset' => '18192',
- 'type' => '87'
- },
- '33' => {
- 'name' => 'subsampling_dx',
- 'offset' => '18196',
- 'type' => '87'
- },
- '34' => {
- 'name' => 'subsampling_dy',
- 'offset' => '18200',
- 'type' => '87'
- },
- '35' => {
- 'name' => 'decod_format',
- 'offset' => '18204',
- 'type' => '87'
- },
- '36' => {
- 'name' => 'cod_format',
- 'offset' => '18208',
- 'type' => '87'
- },
- '37' => {
- 'name' => 'jpwl_epc_on',
- 'offset' => '18212',
- 'type' => '2753'
- },
- '38' => {
- 'name' => 'jpwl_hprot_MH',
- 'offset' => '18216',
- 'type' => '87'
- },
- '39' => {
- 'name' => 'jpwl_hprot_TPH_tileno',
- 'offset' => '18220',
- 'type' => '78084'
- },
- '4' => {
- 'name' => 'cp_tdy',
- 'offset' => '16',
- 'type' => '87'
- },
- '40' => {
- 'name' => 'jpwl_hprot_TPH',
- 'offset' => '18284',
- 'type' => '78084'
- },
- '41' => {
- 'name' => 'jpwl_pprot_tileno',
- 'offset' => '18348',
- 'type' => '78084'
- },
- '42' => {
- 'name' => 'jpwl_pprot_packno',
- 'offset' => '18412',
- 'type' => '78084'
- },
- '43' => {
- 'name' => 'jpwl_pprot',
- 'offset' => '18476',
- 'type' => '78084'
- },
- '44' => {
- 'name' => 'jpwl_sens_size',
- 'offset' => '18540',
- 'type' => '87'
- },
- '45' => {
- 'name' => 'jpwl_sens_addr',
- 'offset' => '18544',
- 'type' => '87'
- },
- '46' => {
- 'name' => 'jpwl_sens_range',
- 'offset' => '18548',
- 'type' => '87'
- },
- '47' => {
- 'name' => 'jpwl_sens_MH',
- 'offset' => '18552',
- 'type' => '87'
- },
- '48' => {
- 'name' => 'jpwl_sens_TPH_tileno',
- 'offset' => '18556',
- 'type' => '78084'
- },
- '49' => {
- 'name' => 'jpwl_sens_TPH',
- 'offset' => '18620',
- 'type' => '78084'
- },
- '5' => {
- 'name' => 'cp_disto_alloc',
- 'offset' => '20',
- 'type' => '87'
- },
- '50' => {
- 'name' => 'cp_cinema',
- 'offset' => '18684',
- 'type' => '76487'
- },
- '51' => {
- 'name' => 'max_comp_size',
- 'offset' => '18688',
- 'type' => '87'
- },
- '52' => {
- 'name' => 'cp_rsiz',
- 'offset' => '18692',
- 'type' => '76437'
- },
- '53' => {
- 'name' => 'tp_on',
- 'offset' => '18696',
- 'type' => '138'
- },
- '54' => {
- 'name' => 'tp_flag',
- 'offset' => '18697',
- 'type' => '138'
- },
- '55' => {
- 'name' => 'tcp_mct',
- 'offset' => '18698',
- 'type' => '138'
- },
- '56' => {
- 'name' => 'jpip_on',
- 'offset' => '18700',
- 'type' => '2753'
- },
- '57' => {
- 'name' => 'mct_data',
- 'offset' => '18704',
- 'type' => '130'
- },
- '58' => {
- 'name' => 'max_cs_size',
- 'offset' => '18712',
- 'type' => '87'
- },
- '59' => {
- 'name' => 'rsiz',
- 'offset' => '18716',
- 'type' => '18283'
- },
- '6' => {
- 'name' => 'cp_fixed_alloc',
- 'offset' => '24',
- 'type' => '87'
- },
- '7' => {
- 'name' => 'cp_fixed_quality',
- 'offset' => '28',
- 'type' => '87'
- },
- '8' => {
- 'name' => 'cp_matrice',
- 'offset' => '32',
- 'type' => '78013'
- },
- '9' => {
- 'name' => 'cp_comment',
- 'offset' => '40',
- 'type' => '132'
- }
- },
- 'Name' => 'struct opj_cparameters',
- 'Size' => '18720',
- 'Type' => 'Struct'
- },
- '78013' => {
- 'BaseType' => '87',
- 'Name' => 'int*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '78035' => {
- 'BaseType' => '2252',
- 'Name' => 'float[100]',
- 'Size' => '400',
- 'Type' => 'Array'
- },
- '78051' => {
- 'BaseType' => '87',
- 'Name' => 'int[33]',
- 'Size' => '132',
- 'Type' => 'Array'
- },
- '78067' => {
- 'BaseType' => '138',
- 'Name' => 'char[4096]',
- 'Size' => '4096',
- 'Type' => 'Array'
- },
- '78084' => {
- 'BaseType' => '87',
- 'Name' => 'int[16]',
- 'Size' => '64',
- 'Type' => 'Array'
- },
- '78100' => {
- 'BaseType' => '77171',
- 'Header' => 'openjpeg.h',
- 'Line' => '538',
- 'Name' => 'opj_cparameters_t',
- 'Size' => '18720',
- 'Type' => 'Typedef'
- },
- '78112' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '546',
- 'Memb' => {
- '0' => {
- 'name' => 'cp_reduce',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'cp_layer',
- 'offset' => '4',
- 'type' => '9044'
- },
- '10' => {
- 'name' => 'm_verbose',
- 'offset' => '8224',
- 'type' => '2753'
- },
- '11' => {
- 'name' => 'tile_index',
- 'offset' => '8228',
- 'type' => '9044'
- },
- '12' => {
- 'name' => 'nb_tile_to_decode',
- 'offset' => '8232',
- 'type' => '9044'
- },
- '13' => {
- 'name' => 'jpwl_correct',
- 'offset' => '8236',
- 'type' => '2753'
- },
- '14' => {
- 'name' => 'jpwl_exp_comps',
- 'offset' => '8240',
- 'type' => '87'
- },
- '15' => {
- 'name' => 'jpwl_max_tiles',
- 'offset' => '8244',
- 'type' => '87'
- },
- '16' => {
- 'name' => 'flags',
- 'offset' => '8248',
- 'type' => '59'
- },
- '2' => {
- 'name' => 'infile',
- 'offset' => '8',
- 'type' => '78067'
- },
- '3' => {
- 'name' => 'outfile',
- 'offset' => '4104',
- 'type' => '78067'
- },
- '4' => {
- 'name' => 'decod_format',
- 'offset' => '8200',
- 'type' => '87'
- },
- '5' => {
- 'name' => 'cod_format',
- 'offset' => '8204',
- 'type' => '87'
- },
- '6' => {
- 'name' => 'DA_x0',
- 'offset' => '8208',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'DA_x1',
- 'offset' => '8212',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'DA_y0',
- 'offset' => '8216',
- 'type' => '9044'
- },
- '9' => {
- 'name' => 'DA_y1',
- 'offset' => '8220',
- 'type' => '9044'
- }
- },
- 'Name' => 'struct opj_dparameters',
- 'Size' => '8252',
- 'Type' => 'Struct'
- },
- '78362' => {
- 'BaseType' => '78112',
- 'Header' => 'openjpeg.h',
- 'Line' => '606',
- 'Name' => 'opj_dparameters_t',
- 'Size' => '8252',
- 'Type' => 'Typedef'
- },
- '78878' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '760',
- 'Memb' => {
- '0' => {
- 'name' => 'start_pos',
- 'offset' => '0',
- 'type' => '11218'
- },
- '1' => {
- 'name' => 'end_ph_pos',
- 'offset' => '8',
- 'type' => '11218'
- },
- '2' => {
- 'name' => 'end_pos',
- 'offset' => '16',
- 'type' => '11218'
- },
- '3' => {
- 'name' => 'disto',
- 'offset' => '24',
- 'type' => '2259'
- }
- },
- 'Name' => 'struct opj_packet_info',
- 'Size' => '32',
- 'Type' => 'Struct'
- },
- '78944' => {
- 'BaseType' => '78878',
- 'Header' => 'openjpeg.h',
- 'Line' => '769',
- 'Name' => 'opj_packet_info_t',
- 'Size' => '32',
- 'Type' => 'Typedef'
- },
- '78956' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '776',
- 'Memb' => {
- '0' => {
- 'name' => 'type',
- 'offset' => '0',
- 'type' => '52'
- },
- '1' => {
- 'name' => 'pos',
- 'offset' => '8',
- 'type' => '11218'
- },
- '2' => {
- 'name' => 'len',
- 'offset' => '16',
- 'type' => '87'
- }
- },
- 'Name' => 'struct opj_marker_info',
- 'Size' => '24',
- 'Type' => 'Struct'
- },
- '79009' => {
- 'BaseType' => '78956',
- 'Header' => 'openjpeg.h',
- 'Line' => '783',
- 'Name' => 'opj_marker_info_t',
- 'Size' => '24',
- 'Type' => 'Typedef'
- },
- '79361' => {
- 'BaseType' => '78944',
- 'Name' => 'opj_packet_info_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '79367' => {
- 'BaseType' => '79009',
- 'Name' => 'opj_marker_info_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '797' => {
- 'Name' => 'void(*)(void*)',
- 'Param' => {
- '0' => {
- 'type' => '130'
- }
- },
- 'Return' => '1',
- 'Size' => '8',
- 'Type' => 'FuncPtr'
- },
- '79707' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '900',
- 'Memb' => {
- '0' => {
- 'name' => 'compno',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'csty',
- 'offset' => '4',
- 'type' => '9044'
- },
- '10' => {
- 'name' => 'numgbits',
- 'offset' => '808',
- 'type' => '9044'
- },
- '11' => {
- 'name' => 'roishift',
- 'offset' => '812',
- 'type' => '9033'
- },
- '12' => {
- 'name' => 'prcw',
- 'offset' => '816',
- 'type' => '19336'
- },
- '13' => {
- 'name' => 'prch',
- 'offset' => '948',
- 'type' => '19336'
- },
- '2' => {
- 'name' => 'numresolutions',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'cblkw',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'cblkh',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'cblksty',
- 'offset' => '20',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'qmfbid',
- 'offset' => '24',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'qntsty',
- 'offset' => '28',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'stepsizes_mant',
- 'offset' => '32',
- 'type' => '79909'
- },
- '9' => {
- 'name' => 'stepsizes_expn',
- 'offset' => '420',
- 'type' => '79909'
- }
- },
- 'Name' => 'struct opj_tccp_info',
- 'Size' => '1080',
- 'Type' => 'Struct'
- },
- '79909' => {
- 'BaseType' => '9044',
- 'Name' => 'OPJ_UINT32[97]',
- 'Size' => '388',
- 'Type' => 'Array'
- },
- '79941' => {
- 'BaseType' => '79707',
- 'Header' => 'openjpeg.h',
- 'Line' => '930',
- 'Name' => 'opj_tccp_info_t',
- 'Size' => '1080',
- 'Type' => 'Typedef'
- },
- '79953' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '935',
- 'Memb' => {
- '0' => {
- 'name' => 'tileno',
- 'offset' => '0',
- 'type' => '87'
- },
- '1' => {
- 'name' => 'csty',
- 'offset' => '4',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'prg',
- 'offset' => '8',
- 'type' => '18388'
- },
- '3' => {
- 'name' => 'numlayers',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'mct',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'tccp_info',
- 'offset' => '24',
- 'type' => '80045'
- }
- },
- 'Name' => 'struct opj_tile_v2_info',
- 'Size' => '32',
- 'Type' => 'Struct'
- },
- '80045' => {
- 'BaseType' => '79941',
- 'Name' => 'opj_tccp_info_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '80051' => {
- 'BaseType' => '79953',
- 'Header' => 'openjpeg.h',
- 'Line' => '951',
- 'Name' => 'opj_tile_info_v2_t',
- 'Size' => '32',
- 'Type' => 'Typedef'
- },
- '80063' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '956',
- 'Memb' => {
- '0' => {
- 'name' => 'tx0',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'ty0',
- 'offset' => '4',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'tdx',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'tdy',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'tw',
- 'offset' => '16',
- 'type' => '9044'
- },
- '5' => {
- 'name' => 'th',
- 'offset' => '20',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'nbcomps',
- 'offset' => '24',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'm_default_tile_info',
- 'offset' => '32',
- 'type' => '80051'
- },
- '8' => {
- 'name' => 'tile_info',
- 'offset' => '64',
- 'type' => '80192'
- }
- },
- 'Name' => 'struct opj_codestream_info_v2',
- 'Size' => '72',
- 'Type' => 'Struct'
- },
- '80192' => {
- 'BaseType' => '80051',
- 'Name' => 'opj_tile_info_v2_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '80198' => {
- 'BaseType' => '80063',
- 'Header' => 'openjpeg.h',
- 'Line' => '980',
- 'Name' => 'opj_codestream_info_v2_t',
- 'Size' => '72',
- 'Type' => 'Typedef'
- },
- '80210' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '986',
- 'Memb' => {
- '0' => {
- 'name' => 'start_pos',
- 'offset' => '0',
- 'type' => '11218'
- },
- '1' => {
- 'name' => 'end_header',
- 'offset' => '8',
- 'type' => '11218'
- },
- '2' => {
- 'name' => 'end_pos',
- 'offset' => '16',
- 'type' => '11218'
- }
- },
- 'Name' => 'struct opj_tp_index',
- 'Size' => '24',
- 'Type' => 'Struct'
- },
- '80263' => {
- 'BaseType' => '80210',
- 'Header' => 'openjpeg.h',
- 'Line' => '994',
- 'Name' => 'opj_tp_index_t',
- 'Size' => '24',
- 'Type' => 'Typedef'
- },
- '80275' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '999',
- 'Memb' => {
- '0' => {
- 'name' => 'tileno',
- 'offset' => '0',
- 'type' => '9044'
- },
- '1' => {
- 'name' => 'nb_tps',
- 'offset' => '4',
- 'type' => '9044'
- },
- '2' => {
- 'name' => 'current_nb_tps',
- 'offset' => '8',
- 'type' => '9044'
- },
- '3' => {
- 'name' => 'current_tpsno',
- 'offset' => '12',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'tp_index',
- 'offset' => '16',
- 'type' => '80419'
- },
- '5' => {
- 'name' => 'marknum',
- 'offset' => '24',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'marker',
- 'offset' => '32',
- 'type' => '79367'
- },
- '7' => {
- 'name' => 'maxmarknum',
- 'offset' => '40',
- 'type' => '9044'
- },
- '8' => {
- 'name' => 'nb_packet',
- 'offset' => '44',
- 'type' => '9044'
- },
- '9' => {
- 'name' => 'packet_index',
- 'offset' => '48',
- 'type' => '79361'
- }
- },
- 'Name' => 'struct opj_tile_index',
- 'Size' => '56',
- 'Type' => 'Struct'
- },
- '80419' => {
- 'BaseType' => '80263',
- 'Name' => 'opj_tp_index_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '80425' => {
- 'BaseType' => '80275',
- 'Header' => 'openjpeg.h',
- 'Line' => '1026',
- 'Name' => 'opj_tile_index_t',
- 'Size' => '56',
- 'Type' => 'Typedef'
- },
- '80437' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '1031',
- 'Memb' => {
- '0' => {
- 'name' => 'main_head_start',
- 'offset' => '0',
- 'type' => '11218'
- },
- '1' => {
- 'name' => 'main_head_end',
- 'offset' => '8',
- 'type' => '11218'
- },
- '2' => {
- 'name' => 'codestream_size',
- 'offset' => '16',
- 'type' => '11207'
- },
- '3' => {
- 'name' => 'marknum',
- 'offset' => '24',
- 'type' => '9044'
- },
- '4' => {
- 'name' => 'marker',
- 'offset' => '32',
- 'type' => '79367'
- },
- '5' => {
- 'name' => 'maxmarknum',
- 'offset' => '40',
- 'type' => '9044'
- },
- '6' => {
- 'name' => 'nb_of_tiles',
- 'offset' => '44',
- 'type' => '9044'
- },
- '7' => {
- 'name' => 'tile_index',
- 'offset' => '48',
- 'type' => '80555'
- }
- },
- 'Name' => 'struct opj_codestream_index',
- 'Size' => '56',
- 'Type' => 'Struct'
- },
- '80555' => {
- 'BaseType' => '80425',
- 'Name' => 'opj_tile_index_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '80561' => {
- 'BaseType' => '80437',
- 'Header' => 'openjpeg.h',
- 'Line' => '1054',
- 'Name' => 'opj_codestream_index_t',
- 'Size' => '56',
- 'Type' => 'Typedef'
- },
- '83562' => {
- 'BaseType' => '80561',
- 'Name' => 'opj_codestream_index_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85808' => {
- 'BaseType' => '21106',
- 'Name' => 'opj_image_t**',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85814' => {
- 'BaseType' => '78362',
- 'Name' => 'opj_dparameters_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85826' => {
- 'BaseType' => '23240',
- 'Name' => 'OPJ_UINT32 const*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85837' => {
- 'BaseType' => '78100',
- 'Name' => 'opj_cparameters_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85843' => {
- 'BaseType' => '85849',
- 'Name' => 'char const*const*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85849' => {
- 'BaseType' => '156',
- 'Name' => 'char const*const',
- 'Size' => '8',
- 'Type' => 'Const'
- },
- '85854' => {
- 'BaseType' => '75668',
- 'Name' => 'FILE*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '85860' => {
- 'BaseType' => '80198',
- 'Name' => 'opj_codestream_info_v2_t*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '87' => {
- 'Name' => 'int',
- 'Size' => '4',
- 'Type' => 'Intrinsic'
- },
- '9000' => {
- 'BaseType' => '45',
- 'Header' => 'openjpeg.h',
- 'Line' => '117',
- 'Name' => 'OPJ_BYTE',
- 'Size' => '1',
- 'Type' => 'Typedef'
- },
- '9011' => {
- 'BaseType' => '87',
- 'Header' => 'stdint.h',
- 'Line' => '38',
- 'Name' => 'int32_t',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '9022' => {
- 'BaseType' => '59',
- 'Header' => 'stdint.h',
- 'Line' => '51',
- 'Name' => 'uint32_t',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '9033' => {
- 'BaseType' => '9011',
- 'Header' => 'openjpeg.h',
- 'Line' => '125',
- 'Name' => 'OPJ_INT32',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '9044' => {
- 'BaseType' => '9022',
- 'Header' => 'openjpeg.h',
- 'Line' => '126',
- 'Name' => 'OPJ_UINT32',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
- '9055' => {
- 'BaseType' => '145',
- 'Header' => 'openjpeg.h',
- 'Line' => '133',
- 'Name' => 'OPJ_SIZE_T',
- 'Size' => '8',
- 'Type' => 'Typedef'
- },
- '9066' => {
- 'BaseType' => '9000',
- 'Name' => 'OPJ_BYTE*',
- 'Size' => '8',
- 'Type' => 'Pointer'
- },
- '94' => {
- 'Name' => 'long',
- 'Size' => '8',
- 'Type' => 'Intrinsic'
- }
- },
- 'UndefinedSymbols' => {
- 'libopenjp2.so.2.4.0' => {
- '_ITM_deregisterTMCloneTable' => 0,
- '_ITM_registerTMCloneTable' => 0,
- '_Jv_RegisterClasses' => 0,
- '__assert_fail@GLIBC_2.2.5' => 0,
- '__cxa_finalize@GLIBC_2.2.5' => 0,
- '__fprintf_chk@GLIBC_2.3.4' => 0,
- '__gmon_start__' => 0,
- '__sprintf_chk@GLIBC_2.3.4' => 0,
- '__stack_chk_fail@GLIBC_2.4' => 0,
- '__vsnprintf_chk@GLIBC_2.3.4' => 0,
- 'calloc@GLIBC_2.2.5' => 0,
- 'ceilf@GLIBC_2.2.5' => 0,
- 'fclose@GLIBC_2.2.5' => 0,
- 'floor@GLIBC_2.2.5' => 0,
- 'floorf@GLIBC_2.2.5' => 0,
- 'fopen@GLIBC_2.2.5' => 0,
- 'fputc@GLIBC_2.2.5' => 0,
- 'fread@GLIBC_2.2.5' => 0,
- 'free@GLIBC_2.2.5' => 0,
- 'fseeko@GLIBC_2.2.5' => 0,
- 'ftello@GLIBC_2.2.5' => 0,
- 'fwrite@GLIBC_2.2.5' => 0,
- 'getenv@GLIBC_2.2.5' => 0,
- 'getrusage@GLIBC_2.2.5' => 0,
- 'lrintf@GLIBC_2.2.5' => 0,
- 'malloc@GLIBC_2.2.5' => 0,
- 'memcpy@GLIBC_2.14' => 0,
- 'memmove@GLIBC_2.2.5' => 0,
- 'memset@GLIBC_2.2.5' => 0,
- 'posix_memalign@GLIBC_2.2.5' => 0,
- 'pow@GLIBC_2.2.5' => 0,
- 'pthread_attr_init@GLIBC_2.2.5' => 0,
- 'pthread_attr_setdetachstate@GLIBC_2.2.5' => 0,
- 'pthread_cond_destroy@GLIBC_2.3.2' => 0,
- 'pthread_cond_init@GLIBC_2.3.2' => 0,
- 'pthread_cond_signal@GLIBC_2.3.2' => 0,
- 'pthread_cond_wait@GLIBC_2.3.2' => 0,
- 'pthread_create@GLIBC_2.2.5' => 0,
- 'pthread_join@GLIBC_2.2.5' => 0,
- 'pthread_mutex_destroy@GLIBC_2.2.5' => 0,
- 'pthread_mutex_init@GLIBC_2.2.5' => 0,
- 'pthread_mutex_lock@GLIBC_2.2.5' => 0,
- 'pthread_mutex_unlock@GLIBC_2.2.5' => 0,
- 'realloc@GLIBC_2.2.5' => 0,
- 'sqrt@GLIBC_2.2.5' => 0,
- 'stdout@GLIBC_2.2.5' => 0,
- 'strcpy@GLIBC_2.2.5' => 0,
- 'strtol@GLIBC_2.2.5' => 0,
- 'sysconf@GLIBC_2.2.5' => 0
- }
- },
- 'WordSize' => '8'
- };
+++ /dev/null
-{
- "Object": "lib/libopenjp2.so.2.4.0",
- "Lang": "C",
- "TotalSymbols": "50",
- "PublicABI": "1",
- "Version": "1.7"
-}
\ No newline at end of file
--- /dev/null
+$VAR1 = {
+ 'ABI_DUMPER_VERSION' => '0.99.15',
+ 'ABI_DUMP_VERSION' => '3.2',
+ 'Arch' => 'x86_64',
+ 'GccVersion' => '4.8.5',
+ 'Headers' => {
+ 'openjpeg.h' => 1
+ },
+ 'Language' => 'C',
+ 'LibraryName' => 'libopenjp2.so.2.5.0',
+ 'LibraryVersion' => 'current',
+ 'NameSpaces' => {},
+ 'Needed' => {
+ 'libc.so.6' => 1,
+ 'libm.so.6' => 1,
+ 'libpthread.so.0' => 1
+ },
+ 'PublicABI' => '1',
+ 'Sources' => {
+ 'cio.c' => 1,
+ 'image.c' => 1,
+ 'openjpeg.c' => 1,
+ 'thread.c' => 1
+ },
+ 'SymbolInfo' => {
+ '14418' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_buffer_size',
+ 'type' => '9055'
+ },
+ '1' => {
+ 'name' => 'l_is_input',
+ 'type' => '2753'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '14570',
+ 'ShortName' => 'opj_stream_create',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '158'
+ },
+ '14576' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'l_is_input',
+ 'type' => '2753'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '14570',
+ 'ShortName' => 'opj_stream_default_create',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '194'
+ },
+ '14653' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_destroy',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '199'
+ },
+ '14746' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_function',
+ 'type' => '11274'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_read_function',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '213'
+ },
+ '14815' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_function',
+ 'type' => '11367'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_seek_function',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '225'
+ },
+ '14884' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_function',
+ 'type' => '11317'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_write_function',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '236'
+ },
+ '14953' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_function',
+ 'type' => '11329'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_skip_function',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '248'
+ },
+ '15022' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_data',
+ 'type' => '130'
+ },
+ '2' => {
+ 'name' => 'p_function',
+ 'type' => '11405'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_user_data',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '260'
+ },
+ '15109' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'data_length',
+ 'type' => '11207'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_stream_set_user_data_length',
+ 'Source' => 'cio.c',
+ 'SourceLine' => '271'
+ },
+ '183613' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1096',
+ 'Return' => '156',
+ 'ShortName' => 'opj_version',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '171'
+ },
+ '183933' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1650',
+ 'Param' => {
+ '0' => {
+ 'name' => 'cstr_info',
+ 'type' => '183951'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_destroy_cstr_info',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1014'
+ },
+ '247683' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_callback',
+ 'type' => '11240'
+ },
+ '2' => {
+ 'name' => 'p_user_data',
+ 'type' => '130'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_info_handler',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '44'
+ },
+ '247781' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_callback',
+ 'type' => '11240'
+ },
+ '2' => {
+ 'name' => 'p_user_data',
+ 'type' => '130'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_warning_handler',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '59'
+ },
+ '247867' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_callback',
+ 'type' => '11240'
+ },
+ '2' => {
+ 'name' => 'p_user_data',
+ 'type' => '130'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_error_handler',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '74'
+ },
+ '247982' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_format',
+ 'type' => '236507'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '247769',
+ 'ShortName' => 'opj_create_decompress',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '179'
+ },
+ '248204' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'parameters',
+ 'type' => '85814'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_set_default_decoder_parameters',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '375'
+ },
+ '248335' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'num_threads',
+ 'type' => '87'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_codec_set_threads',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '398'
+ },
+ '248453' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'parameters',
+ 'type' => '85814'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_setup_decoder',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '409'
+ },
+ '248595' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '1' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '2' => {
+ 'name' => 'p_image',
+ 'type' => '85808'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_read_header',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '429'
+ },
+ '248798' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'numcomps',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'comps_indices',
+ 'type' => '85826'
+ },
+ '3' => {
+ 'name' => 'apply_color_transforms',
+ 'type' => '2753'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_decoded_components',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '453'
+ },
+ '249040' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '2' => {
+ 'name' => 'p_image',
+ 'type' => '21106'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_decode',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '482'
+ },
+ '249194' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_image',
+ 'type' => '21106'
+ },
+ '2' => {
+ 'name' => 'p_start_x',
+ 'type' => '9033'
+ },
+ '3' => {
+ 'name' => 'p_start_y',
+ 'type' => '9033'
+ },
+ '4' => {
+ 'name' => 'p_end_x',
+ 'type' => '9033'
+ },
+ '5' => {
+ 'name' => 'p_end_y',
+ 'type' => '9033'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx',
+ '4' => 'r8',
+ '5' => 'r9'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_decode_area',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '503'
+ },
+ '249402' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '2' => {
+ 'name' => 'p_tile_index',
+ 'type' => '11838'
+ },
+ '3' => {
+ 'name' => 'p_data_size',
+ 'type' => '11838'
+ },
+ '4' => {
+ 'name' => 'p_tile_x0',
+ 'type' => '19167'
+ },
+ '5' => {
+ 'name' => 'p_tile_y0',
+ 'type' => '19167'
+ },
+ '6' => {
+ 'name' => 'p_tile_x1',
+ 'offset' => '0',
+ 'type' => '19167'
+ },
+ '7' => {
+ 'name' => 'p_tile_y1',
+ 'offset' => '8',
+ 'type' => '19167'
+ },
+ '8' => {
+ 'name' => 'p_nb_comps',
+ 'offset' => '16',
+ 'type' => '11838'
+ },
+ '9' => {
+ 'name' => 'p_should_go_on',
+ 'offset' => '24',
+ 'type' => '23206'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx',
+ '4' => 'r8',
+ '5' => 'r9'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_read_tile_header',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '526'
+ },
+ '249717' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_tile_index',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'p_data',
+ 'type' => '9066'
+ },
+ '3' => {
+ 'name' => 'p_data_size',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx',
+ '4' => 'r8'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_decode_tile_data',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '557'
+ },
+ '249917' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ },
+ '2' => {
+ 'name' => 'p_image',
+ 'type' => '21106'
+ },
+ '3' => {
+ 'name' => 'tile_index',
+ 'type' => '9044'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_get_decoded_tile',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '583'
+ },
+ '250094' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'res_factor',
+ 'type' => '9044'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_decoded_resolution_factor',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '607'
+ },
+ '250203' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_format',
+ 'type' => '236507'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '247769',
+ 'ShortName' => 'opj_create_compress',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '625'
+ },
+ '250428' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'parameters',
+ 'type' => '85837'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_set_default_encoder_parameters',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '739'
+ },
+ '250559' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'parameters',
+ 'type' => '85837'
+ },
+ '2' => {
+ 'name' => 'p_image',
+ 'type' => '21106'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_setup_encoder',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '800'
+ },
+ '250697' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'options',
+ 'type' => '85843'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_encoder_set_extra_options',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '820'
+ },
+ '250812' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_image',
+ 'type' => '21106'
+ },
+ '2' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_start_compress',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '839'
+ },
+ '250966' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_info',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_encode',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '858'
+ },
+ '251097' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_end_compress',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '875'
+ },
+ '251228' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_end_decompress',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '892'
+ },
+ '251359' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'parameters',
+ 'type' => '85837'
+ },
+ '1' => {
+ 'name' => 'pEncodingMatrix',
+ 'type' => '11832'
+ },
+ '2' => {
+ 'name' => 'p_dc_shift',
+ 'type' => '19167'
+ },
+ '3' => {
+ 'name' => 'pNbComp',
+ 'type' => '9044'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_set_MCT',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '912'
+ },
+ '251705' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'p_tile_index',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'p_data',
+ 'type' => '9066'
+ },
+ '3' => {
+ 'name' => 'p_data_size',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'p_stream',
+ 'type' => '14570'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx',
+ '3' => 'rcx',
+ '4' => 'r8'
+ },
+ 'Return' => '2753',
+ 'ShortName' => 'opj_write_tile',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '942'
+ },
+ '251905' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_destroy_codec',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '969'
+ },
+ '252006' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ },
+ '1' => {
+ 'name' => 'info_flag',
+ 'type' => '9033'
+ },
+ '2' => {
+ 'name' => 'output_stream',
+ 'type' => '85854'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_dump_codec',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '987'
+ },
+ '252143' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '85860',
+ 'ShortName' => 'opj_get_cstr_info',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1003'
+ },
+ '252307' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '247769'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '83562',
+ 'ShortName' => 'opj_get_cstr_index',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1031'
+ },
+ '252392' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_cstr_index',
+ 'type' => '252452'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_destroy_cstr_index',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1042'
+ },
+ '252458' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'fname',
+ 'type' => '156'
+ },
+ '1' => {
+ 'name' => 'p_size',
+ 'type' => '9055'
+ },
+ '2' => {
+ 'name' => 'p_is_read_stream',
+ 'type' => '2753'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '14570',
+ 'ShortName' => 'opj_stream_create_file_stream',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1057'
+ },
+ '252891' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'fname',
+ 'type' => '156'
+ },
+ '1' => {
+ 'name' => 'p_is_read_stream',
+ 'type' => '2753'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '14570',
+ 'ShortName' => 'opj_stream_create_default_file_stream',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1050'
+ },
+ '3814' => {
+ 'Header' => 'openjpeg.h',
+ 'Return' => '2753',
+ 'ShortName' => 'opj_has_thread_support',
+ 'Source' => 'thread.c',
+ 'SourceLine' => '295'
+ },
+ '3844' => {
+ 'Header' => 'openjpeg.h',
+ 'Return' => '87',
+ 'ShortName' => 'opj_get_num_cpus',
+ 'Source' => 'thread.c',
+ 'SourceLine' => '300'
+ },
+ '70002' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'image',
+ 'type' => '21106'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_image_destroy',
+ 'Source' => 'image.c',
+ 'SourceLine' => '92'
+ },
+ '70168' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'numcmpts',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'cmptparms',
+ 'type' => '70518'
+ },
+ '2' => {
+ 'name' => 'clrspc',
+ 'type' => '18456'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '21106',
+ 'ShortName' => 'opj_image_create',
+ 'Source' => 'image.c',
+ 'SourceLine' => '40'
+ },
+ '72160' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'numcmpts',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'cmptparms',
+ 'type' => '70518'
+ },
+ '2' => {
+ 'name' => 'clrspc',
+ 'type' => '18456'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi',
+ '2' => 'rdx'
+ },
+ 'Return' => '21106',
+ 'ShortName' => 'opj_image_tile_create',
+ 'Source' => 'image.c',
+ 'SourceLine' => '228'
+ },
+ '72439' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1153',
+ 'Param' => {
+ '0' => {
+ 'name' => 'ptr',
+ 'type' => '130'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '1',
+ 'ShortName' => 'opj_image_data_free',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1108'
+ },
+ '72503' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1143',
+ 'Param' => {
+ '0' => {
+ 'name' => 'size',
+ 'type' => '9055'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi'
+ },
+ 'Return' => '130',
+ 'ShortName' => 'opj_image_data_alloc',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '1101'
+ }
+ },
+ 'SymbolVersion' => {
+ '_ITM_deregisterTMCloneTable' => 'sysconf@@GLIBC_2.2.5',
+ '_ITM_registerTMCloneTable' => 'sysconf@@GLIBC_2.2.5',
+ '_Jv_RegisterClasses' => 'sysconf@@GLIBC_2.2.5',
+ '__gmon_start__' => 'sysconf@@GLIBC_2.2.5'
+ },
+ 'Symbols' => {
+ 'libopenjp2.so.2.5.0' => {
+ '_fini' => 1,
+ '_init' => 1,
+ 'opj_codec_set_threads' => 1,
+ 'opj_create_compress' => 1,
+ 'opj_create_decompress' => 1,
+ 'opj_decode' => 1,
+ 'opj_decode_tile_data' => 1,
+ 'opj_destroy_codec' => 1,
+ 'opj_destroy_cstr_index' => 1,
+ 'opj_destroy_cstr_info' => 1,
+ 'opj_dump_codec' => 1,
+ 'opj_encode' => 1,
+ 'opj_encoder_set_extra_options' => 1,
+ 'opj_end_compress' => 1,
+ 'opj_end_decompress' => 1,
+ 'opj_get_cstr_index' => 1,
+ 'opj_get_cstr_info' => 1,
+ 'opj_get_decoded_tile' => 1,
+ 'opj_get_num_cpus' => 1,
+ 'opj_has_thread_support' => 1,
+ 'opj_image_create' => 1,
+ 'opj_image_data_alloc' => 1,
+ 'opj_image_data_free' => 1,
+ 'opj_image_destroy' => 1,
+ 'opj_image_tile_create' => 1,
+ 'opj_read_header' => 1,
+ 'opj_read_tile_header' => 1,
+ 'opj_set_MCT' => 1,
+ 'opj_set_decode_area' => 1,
+ 'opj_set_decoded_components' => 1,
+ 'opj_set_decoded_resolution_factor' => 1,
+ 'opj_set_default_decoder_parameters' => 1,
+ 'opj_set_default_encoder_parameters' => 1,
+ 'opj_set_error_handler' => 1,
+ 'opj_set_info_handler' => 1,
+ 'opj_set_warning_handler' => 1,
+ 'opj_setup_decoder' => 1,
+ 'opj_setup_encoder' => 1,
+ 'opj_start_compress' => 1,
+ 'opj_stream_create' => 1,
+ 'opj_stream_create_default_file_stream' => 1,
+ 'opj_stream_create_file_stream' => 1,
+ 'opj_stream_default_create' => 1,
+ 'opj_stream_destroy' => 1,
+ 'opj_stream_set_read_function' => 1,
+ 'opj_stream_set_seek_function' => 1,
+ 'opj_stream_set_skip_function' => 1,
+ 'opj_stream_set_user_data' => 1,
+ 'opj_stream_set_user_data_length' => 1,
+ 'opj_stream_set_write_function' => 1,
+ 'opj_version' => 1,
+ 'opj_write_tile' => 1
+ }
+ },
+ 'Target' => 'unix',
+ 'TypeInfo' => {
+ '1' => {
+ 'Name' => 'void',
+ 'Type' => 'Intrinsic'
+ },
+ '101' => {
+ 'BaseType' => '94',
+ 'Header' => 'types.h',
+ 'Line' => '131',
+ 'Name' => '__off_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11108' => {
+ 'BaseType' => '2252',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '115',
+ 'Name' => 'OPJ_FLOAT32',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '11152' => {
+ 'BaseType' => '94',
+ 'Header' => 'stdint.h',
+ 'Line' => '40',
+ 'Name' => 'int64_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11174' => {
+ 'BaseType' => '66',
+ 'Header' => 'stdint.h',
+ 'Line' => '55',
+ 'Name' => 'uint64_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '112' => {
+ 'BaseType' => '94',
+ 'Header' => 'types.h',
+ 'Line' => '132',
+ 'Name' => '__off64_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11207' => {
+ 'BaseType' => '11174',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '128',
+ 'Name' => 'OPJ_UINT64',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11218' => {
+ 'BaseType' => '11152',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '130',
+ 'Name' => 'OPJ_OFF_T',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11240' => {
+ 'BaseType' => '11252',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '343',
+ 'Name' => 'opj_msg_callback',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11252' => {
+ 'Name' => 'void(*)(char const*, void*)',
+ 'Param' => {
+ '0' => {
+ 'type' => '156'
+ },
+ '1' => {
+ 'type' => '130'
+ }
+ },
+ 'Return' => '1',
+ 'Size' => '8',
+ 'Type' => 'FuncPtr'
+ },
+ '11274' => {
+ 'BaseType' => '11286',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '631',
+ 'Name' => 'opj_stream_read_fn',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11286' => {
+ 'Name' => 'OPJ_SIZE_T(*)(void*, OPJ_SIZE_T, void*)',
+ 'Param' => {
+ '0' => {
+ 'type' => '130'
+ },
+ '1' => {
+ 'type' => '9055'
+ },
+ '2' => {
+ 'type' => '130'
+ }
+ },
+ 'Return' => '9055',
+ 'Size' => '8',
+ 'Type' => 'FuncPtr'
+ },
+ '11317' => {
+ 'BaseType' => '11286',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '637',
+ 'Name' => 'opj_stream_write_fn',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11329' => {
+ 'BaseType' => '11341',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '643',
+ 'Name' => 'opj_stream_skip_fn',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11341' => {
+ 'Name' => 'OPJ_OFF_T(*)(OPJ_OFF_T, void*)',
+ 'Param' => {
+ '0' => {
+ 'type' => '11218'
+ },
+ '1' => {
+ 'type' => '130'
+ }
+ },
+ 'Return' => '11218',
+ 'Size' => '8',
+ 'Type' => 'FuncPtr'
+ },
+ '11367' => {
+ 'BaseType' => '11379',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '649',
+ 'Name' => 'opj_stream_seek_fn',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11379' => {
+ 'Name' => 'OPJ_BOOL(*)(OPJ_OFF_T, void*)',
+ 'Param' => {
+ '0' => {
+ 'type' => '11218'
+ },
+ '1' => {
+ 'type' => '130'
+ }
+ },
+ 'Return' => '2753',
+ 'Size' => '8',
+ 'Type' => 'FuncPtr'
+ },
+ '11405' => {
+ 'BaseType' => '797',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '655',
+ 'Name' => 'opj_stream_free_user_data_fn',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11434' => {
+ 'BaseType' => '130',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '660',
+ 'Name' => 'opj_stream_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '11832' => {
+ 'BaseType' => '11108',
+ 'Name' => 'OPJ_FLOAT32*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '11838' => {
+ 'BaseType' => '9044',
+ 'Name' => 'OPJ_UINT32*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '130' => {
+ 'BaseType' => '1',
+ 'Name' => 'void*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '132' => {
+ 'BaseType' => '138',
+ 'Name' => 'char*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '138' => {
+ 'Name' => 'char',
+ 'Size' => '1',
+ 'Type' => 'Intrinsic'
+ },
+ '145' => {
+ 'BaseType' => '66',
+ 'Header' => 'stddef.h',
+ 'Line' => '212',
+ 'Name' => 'size_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '14570' => {
+ 'BaseType' => '11434',
+ 'Name' => 'opj_stream_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '156' => {
+ 'BaseType' => '162',
+ 'Name' => 'char const*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '162' => {
+ 'BaseType' => '138',
+ 'Name' => 'char const',
+ 'Size' => '1',
+ 'Type' => 'Const'
+ },
+ '18206' => {
+ 'BaseType' => '138',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '114',
+ 'Name' => 'OPJ_CHAR',
+ 'Size' => '1',
+ 'Type' => 'Typedef'
+ },
+ '18250' => {
+ 'BaseType' => '52',
+ 'Header' => 'stdint.h',
+ 'Line' => '49',
+ 'Name' => 'uint16_t',
+ 'Size' => '2',
+ 'Type' => 'Typedef'
+ },
+ '18283' => {
+ 'BaseType' => '18250',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '124',
+ 'Name' => 'OPJ_UINT16',
+ 'Size' => '2',
+ 'Type' => 'Typedef'
+ },
+ '18338' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '297',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_PROG_UNKNOWN',
+ 'value' => '-1'
+ },
+ '1' => {
+ 'name' => 'OPJ_LRCP',
+ 'value' => '0'
+ },
+ '2' => {
+ 'name' => 'OPJ_RLCP',
+ 'value' => '1'
+ },
+ '3' => {
+ 'name' => 'OPJ_RPCL',
+ 'value' => '2'
+ },
+ '4' => {
+ 'name' => 'OPJ_PCRL',
+ 'value' => '3'
+ },
+ '5' => {
+ 'name' => 'OPJ_CPRL',
+ 'value' => '4'
+ }
+ },
+ 'Name' => 'enum PROG_ORDER',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '18388' => {
+ 'BaseType' => '18338',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '304',
+ 'Name' => 'OPJ_PROG_ORDER',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '183951' => {
+ 'BaseType' => '85860',
+ 'Name' => 'opj_codestream_info_v2_t**',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '18400' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '309',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_CLRSPC_UNKNOWN',
+ 'value' => '-1'
+ },
+ '1' => {
+ 'name' => 'OPJ_CLRSPC_UNSPECIFIED',
+ 'value' => '0'
+ },
+ '2' => {
+ 'name' => 'OPJ_CLRSPC_SRGB',
+ 'value' => '1'
+ },
+ '3' => {
+ 'name' => 'OPJ_CLRSPC_GRAY',
+ 'value' => '2'
+ },
+ '4' => {
+ 'name' => 'OPJ_CLRSPC_SYCC',
+ 'value' => '3'
+ },
+ '5' => {
+ 'name' => 'OPJ_CLRSPC_EYCC',
+ 'value' => '4'
+ },
+ '6' => {
+ 'name' => 'OPJ_CLRSPC_CMYK',
+ 'value' => '5'
+ }
+ },
+ 'Name' => 'enum COLOR_SPACE',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '18456' => {
+ 'BaseType' => '18400',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '317',
+ 'Name' => 'OPJ_COLOR_SPACE',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '18468' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '359',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'resno0',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'compno0',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '10' => {
+ 'name' => 'progorder',
+ 'offset' => '40',
+ 'type' => '18948'
+ },
+ '11' => {
+ 'name' => 'tile',
+ 'offset' => '48',
+ 'type' => '9044'
+ },
+ '12' => {
+ 'name' => 'tx0',
+ 'offset' => '52',
+ 'type' => '9033'
+ },
+ '13' => {
+ 'name' => 'tx1',
+ 'offset' => '56',
+ 'type' => '9033'
+ },
+ '14' => {
+ 'name' => 'ty0',
+ 'offset' => '60',
+ 'type' => '9033'
+ },
+ '15' => {
+ 'name' => 'ty1',
+ 'offset' => '64',
+ 'type' => '9033'
+ },
+ '16' => {
+ 'name' => 'layS',
+ 'offset' => '68',
+ 'type' => '9044'
+ },
+ '17' => {
+ 'name' => 'resS',
+ 'offset' => '72',
+ 'type' => '9044'
+ },
+ '18' => {
+ 'name' => 'compS',
+ 'offset' => '76',
+ 'type' => '9044'
+ },
+ '19' => {
+ 'name' => 'prcS',
+ 'offset' => '80',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'layno1',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '20' => {
+ 'name' => 'layE',
+ 'offset' => '84',
+ 'type' => '9044'
+ },
+ '21' => {
+ 'name' => 'resE',
+ 'offset' => '88',
+ 'type' => '9044'
+ },
+ '22' => {
+ 'name' => 'compE',
+ 'offset' => '92',
+ 'type' => '9044'
+ },
+ '23' => {
+ 'name' => 'prcE',
+ 'offset' => '96',
+ 'type' => '9044'
+ },
+ '24' => {
+ 'name' => 'txS',
+ 'offset' => '100',
+ 'type' => '9044'
+ },
+ '25' => {
+ 'name' => 'txE',
+ 'offset' => '104',
+ 'type' => '9044'
+ },
+ '26' => {
+ 'name' => 'tyS',
+ 'offset' => '108',
+ 'type' => '9044'
+ },
+ '27' => {
+ 'name' => 'tyE',
+ 'offset' => '112',
+ 'type' => '9044'
+ },
+ '28' => {
+ 'name' => 'dx',
+ 'offset' => '116',
+ 'type' => '9044'
+ },
+ '29' => {
+ 'name' => 'dy',
+ 'offset' => '120',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'resno1',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '30' => {
+ 'name' => 'lay_t',
+ 'offset' => '124',
+ 'type' => '9044'
+ },
+ '31' => {
+ 'name' => 'res_t',
+ 'offset' => '128',
+ 'type' => '9044'
+ },
+ '32' => {
+ 'name' => 'comp_t',
+ 'offset' => '132',
+ 'type' => '9044'
+ },
+ '33' => {
+ 'name' => 'prc_t',
+ 'offset' => '136',
+ 'type' => '9044'
+ },
+ '34' => {
+ 'name' => 'tx0_t',
+ 'offset' => '140',
+ 'type' => '9044'
+ },
+ '35' => {
+ 'name' => 'ty0_t',
+ 'offset' => '144',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'compno1',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'layno0',
+ 'offset' => '20',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'precno0',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'precno1',
+ 'offset' => '28',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'prg1',
+ 'offset' => '32',
+ 'type' => '18388'
+ },
+ '9' => {
+ 'name' => 'prg',
+ 'offset' => '36',
+ 'type' => '18388'
+ }
+ },
+ 'Name' => 'struct opj_poc',
+ 'Size' => '148',
+ 'Type' => 'Struct'
+ },
+ '18948' => {
+ 'BaseType' => '18206',
+ 'Name' => 'OPJ_CHAR[5]',
+ 'Size' => '5',
+ 'Type' => 'Array'
+ },
+ '18964' => {
+ 'BaseType' => '18468',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '382',
+ 'Name' => 'opj_poc_t',
+ 'Size' => '148',
+ 'Type' => 'Typedef'
+ },
+ '18976' => {
+ 'BaseType' => '18964',
+ 'Name' => 'opj_poc_t[32]',
+ 'Size' => '4736',
+ 'Type' => 'Array'
+ },
+ '18992' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '671',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'dx',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'dy',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '10' => {
+ 'name' => 'factor',
+ 'offset' => '40',
+ 'type' => '9044'
+ },
+ '11' => {
+ 'name' => 'data',
+ 'offset' => '48',
+ 'type' => '19167'
+ },
+ '12' => {
+ 'name' => 'alpha',
+ 'offset' => '56',
+ 'type' => '18283'
+ },
+ '2' => {
+ 'name' => 'w',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'h',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'x0',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'y0',
+ 'offset' => '20',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'prec',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'bpp',
+ 'offset' => '28',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'sgnd',
+ 'offset' => '32',
+ 'type' => '9044'
+ },
+ '9' => {
+ 'name' => 'resno_decoded',
+ 'offset' => '36',
+ 'type' => '9044'
+ }
+ },
+ 'Name' => 'struct opj_image_comp',
+ 'Size' => '64',
+ 'Type' => 'Struct'
+ },
+ '19167' => {
+ 'BaseType' => '9033',
+ 'Name' => 'OPJ_INT32*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '19173' => {
+ 'BaseType' => '18992',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '698',
+ 'Name' => 'opj_image_comp_t',
+ 'Size' => '64',
+ 'Type' => 'Typedef'
+ },
+ '19185' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '703',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'x0',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'y0',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'x1',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'y1',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'numcomps',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'color_space',
+ 'offset' => '20',
+ 'type' => '18456'
+ },
+ '6' => {
+ 'name' => 'comps',
+ 'offset' => '24',
+ 'type' => '19312'
+ },
+ '7' => {
+ 'name' => 'icc_profile_buf',
+ 'offset' => '32',
+ 'type' => '9066'
+ },
+ '8' => {
+ 'name' => 'icc_profile_len',
+ 'offset' => '40',
+ 'type' => '9044'
+ }
+ },
+ 'Name' => 'struct opj_image',
+ 'Size' => '48',
+ 'Type' => 'Struct'
+ },
+ '19312' => {
+ 'BaseType' => '19173',
+ 'Name' => 'opj_image_comp_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '19324' => {
+ 'BaseType' => '19185',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '722',
+ 'Name' => 'opj_image_t',
+ 'Size' => '48',
+ 'Type' => 'Typedef'
+ },
+ '19336' => {
+ 'BaseType' => '9044',
+ 'Name' => 'OPJ_UINT32[33]',
+ 'Size' => '132',
+ 'Type' => 'Array'
+ },
+ '21106' => {
+ 'BaseType' => '19324',
+ 'Name' => 'opj_image_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '2252' => {
+ 'Name' => 'float',
+ 'Size' => '4',
+ 'Type' => 'Intrinsic'
+ },
+ '2259' => {
+ 'Name' => 'double',
+ 'Size' => '8',
+ 'Type' => 'Intrinsic'
+ },
+ '2266' => {
+ 'Header' => 'libio.h',
+ 'Line' => '241',
+ 'Memb' => {
+ '0' => {
+ 'name' => '_flags',
+ 'offset' => '0',
+ 'type' => '87'
+ },
+ '1' => {
+ 'name' => '_IO_read_ptr',
+ 'offset' => '8',
+ 'type' => '132'
+ },
+ '10' => {
+ 'name' => '_IO_backup_base',
+ 'offset' => '80',
+ 'type' => '132'
+ },
+ '11' => {
+ 'name' => '_IO_save_end',
+ 'offset' => '88',
+ 'type' => '132'
+ },
+ '12' => {
+ 'name' => '_markers',
+ 'offset' => '96',
+ 'type' => '2703'
+ },
+ '13' => {
+ 'name' => '_chain',
+ 'offset' => '104',
+ 'type' => '2709'
+ },
+ '14' => {
+ 'name' => '_fileno',
+ 'offset' => '112',
+ 'type' => '87'
+ },
+ '15' => {
+ 'name' => '_flags2',
+ 'offset' => '116',
+ 'type' => '87'
+ },
+ '16' => {
+ 'name' => '_old_offset',
+ 'offset' => '120',
+ 'type' => '101'
+ },
+ '17' => {
+ 'name' => '_cur_column',
+ 'offset' => '128',
+ 'type' => '52'
+ },
+ '18' => {
+ 'name' => '_vtable_offset',
+ 'offset' => '130',
+ 'type' => '73'
+ },
+ '19' => {
+ 'name' => '_shortbuf',
+ 'offset' => '131',
+ 'type' => '2715'
+ },
+ '2' => {
+ 'name' => '_IO_read_end',
+ 'offset' => '16',
+ 'type' => '132'
+ },
+ '20' => {
+ 'name' => '_lock',
+ 'offset' => '136',
+ 'type' => '2731'
+ },
+ '21' => {
+ 'name' => '_offset',
+ 'offset' => '144',
+ 'type' => '112'
+ },
+ '22' => {
+ 'name' => '__pad1',
+ 'offset' => '152',
+ 'type' => '130'
+ },
+ '23' => {
+ 'name' => '__pad2',
+ 'offset' => '160',
+ 'type' => '130'
+ },
+ '24' => {
+ 'name' => '__pad3',
+ 'offset' => '168',
+ 'type' => '130'
+ },
+ '25' => {
+ 'name' => '__pad4',
+ 'offset' => '176',
+ 'type' => '130'
+ },
+ '26' => {
+ 'name' => '__pad5',
+ 'offset' => '184',
+ 'type' => '145'
+ },
+ '27' => {
+ 'name' => '_mode',
+ 'offset' => '192',
+ 'type' => '87'
+ },
+ '28' => {
+ 'name' => '_unused2',
+ 'offset' => '196',
+ 'type' => '2737'
+ },
+ '3' => {
+ 'name' => '_IO_read_base',
+ 'offset' => '24',
+ 'type' => '132'
+ },
+ '4' => {
+ 'name' => '_IO_write_base',
+ 'offset' => '32',
+ 'type' => '132'
+ },
+ '5' => {
+ 'name' => '_IO_write_ptr',
+ 'offset' => '40',
+ 'type' => '132'
+ },
+ '6' => {
+ 'name' => '_IO_write_end',
+ 'offset' => '48',
+ 'type' => '132'
+ },
+ '7' => {
+ 'name' => '_IO_buf_base',
+ 'offset' => '56',
+ 'type' => '132'
+ },
+ '8' => {
+ 'name' => '_IO_buf_end',
+ 'offset' => '64',
+ 'type' => '132'
+ },
+ '9' => {
+ 'name' => '_IO_save_base',
+ 'offset' => '72',
+ 'type' => '132'
+ }
+ },
+ 'Name' => 'struct _IO_FILE',
+ 'PrivateABI' => 1,
+ 'Size' => '216',
+ 'Type' => 'Struct'
+ },
+ '23206' => {
+ 'BaseType' => '2753',
+ 'Name' => 'OPJ_BOOL*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '23240' => {
+ 'BaseType' => '9044',
+ 'Name' => 'OPJ_UINT32 const',
+ 'Size' => '4',
+ 'Type' => 'Const'
+ },
+ '236457' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '322',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_CODEC_UNKNOWN',
+ 'value' => '-1'
+ },
+ '1' => {
+ 'name' => 'OPJ_CODEC_J2K',
+ 'value' => '0'
+ },
+ '2' => {
+ 'name' => 'OPJ_CODEC_JPT',
+ 'value' => '1'
+ },
+ '3' => {
+ 'name' => 'OPJ_CODEC_JP2',
+ 'value' => '2'
+ },
+ '4' => {
+ 'name' => 'OPJ_CODEC_JPP',
+ 'value' => '3'
+ },
+ '5' => {
+ 'name' => 'OPJ_CODEC_JPX',
+ 'value' => '4'
+ }
+ },
+ 'Name' => 'enum CODEC_FORMAT',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '236507' => {
+ 'BaseType' => '236457',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '329',
+ 'Name' => 'OPJ_CODEC_FORMAT',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '238264' => {
+ 'BaseType' => '130',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '612',
+ 'Name' => 'opj_codec_t',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '247769' => {
+ 'BaseType' => '238264',
+ 'Name' => 'opj_codec_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '252452' => {
+ 'BaseType' => '83562',
+ 'Name' => 'opj_codestream_index_t**',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '2647' => {
+ 'Header' => 'libio.h',
+ 'Line' => '150',
+ 'Name' => '_IO_lock_t',
+ 'Type' => 'Typedef'
+ },
+ '2654' => {
+ 'Header' => 'libio.h',
+ 'Line' => '156',
+ 'Memb' => {
+ '0' => {
+ 'name' => '_next',
+ 'offset' => '0',
+ 'type' => '2703'
+ },
+ '1' => {
+ 'name' => '_sbuf',
+ 'offset' => '8',
+ 'type' => '2709'
+ },
+ '2' => {
+ 'name' => '_pos',
+ 'offset' => '16',
+ 'type' => '87'
+ }
+ },
+ 'Name' => 'struct _IO_marker',
+ 'PrivateABI' => 1,
+ 'Size' => '24',
+ 'Type' => 'Struct'
+ },
+ '2703' => {
+ 'BaseType' => '2654',
+ 'Name' => 'struct _IO_marker*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '2709' => {
+ 'BaseType' => '2266',
+ 'Name' => 'struct _IO_FILE*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '2715' => {
+ 'BaseType' => '138',
+ 'Name' => 'char[1]',
+ 'Size' => '1',
+ 'Type' => 'Array'
+ },
+ '2731' => {
+ 'BaseType' => '2647',
+ 'Name' => '_IO_lock_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '2737' => {
+ 'BaseType' => '138',
+ 'Name' => 'char[20]',
+ 'Size' => '20',
+ 'Type' => 'Array'
+ },
+ '2753' => {
+ 'BaseType' => '87',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '110',
+ 'Name' => 'OPJ_BOOL',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '45' => {
+ 'Name' => 'unsigned char',
+ 'Size' => '1',
+ 'Type' => 'Intrinsic'
+ },
+ '52' => {
+ 'Name' => 'unsigned short',
+ 'Size' => '2',
+ 'Type' => 'Intrinsic'
+ },
+ '59' => {
+ 'Name' => 'unsigned int',
+ 'Size' => '4',
+ 'Type' => 'Intrinsic'
+ },
+ '66' => {
+ 'Name' => 'unsigned long',
+ 'Size' => '8',
+ 'Type' => 'Intrinsic'
+ },
+ '67857' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '728',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'dx',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'dy',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'w',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'h',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'x0',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'y0',
+ 'offset' => '20',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'prec',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'bpp',
+ 'offset' => '28',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'sgnd',
+ 'offset' => '32',
+ 'type' => '9044'
+ }
+ },
+ 'Name' => 'struct opj_image_comptparm',
+ 'Size' => '36',
+ 'Type' => 'Struct'
+ },
+ '67980' => {
+ 'BaseType' => '67857',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '747',
+ 'Name' => 'opj_image_cmptparm_t',
+ 'Size' => '36',
+ 'Type' => 'Typedef'
+ },
+ '70518' => {
+ 'BaseType' => '67980',
+ 'Name' => 'opj_image_cmptparm_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '73' => {
+ 'Name' => 'signed char',
+ 'Size' => '1',
+ 'Type' => 'Intrinsic'
+ },
+ '75668' => {
+ 'BaseType' => '2266',
+ 'Header' => 'stdio.h',
+ 'Line' => '48',
+ 'Name' => 'FILE',
+ 'Size' => '216',
+ 'Type' => 'Typedef'
+ },
+ '76397' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '276',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_STD_RSIZ',
+ 'value' => '0'
+ },
+ '1' => {
+ 'name' => 'OPJ_CINEMA2K',
+ 'value' => '3'
+ },
+ '2' => {
+ 'name' => 'OPJ_CINEMA4K',
+ 'value' => '4'
+ },
+ '3' => {
+ 'name' => 'OPJ_MCT',
+ 'value' => '33024'
+ }
+ },
+ 'Name' => 'enum RSIZ_CAPABILITIES',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '76437' => {
+ 'BaseType' => '76397',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '281',
+ 'Name' => 'OPJ_RSIZ_CAPABILITIES',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '76449' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '287',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_OFF',
+ 'value' => '0'
+ },
+ '1' => {
+ 'name' => 'OPJ_CINEMA2K_24',
+ 'value' => '1'
+ },
+ '2' => {
+ 'name' => 'OPJ_CINEMA2K_48',
+ 'value' => '2'
+ },
+ '3' => {
+ 'name' => 'OPJ_CINEMA4K_24',
+ 'value' => '3'
+ }
+ },
+ 'Name' => 'enum CINEMA_MODE',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '76487' => {
+ 'BaseType' => '76449',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '292',
+ 'Name' => 'OPJ_CINEMA_MODE',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '77171' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '387',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'tile_size_on',
+ 'offset' => '0',
+ 'type' => '2753'
+ },
+ '1' => {
+ 'name' => 'cp_tx0',
+ 'offset' => '4',
+ 'type' => '87'
+ },
+ '10' => {
+ 'name' => 'csty',
+ 'offset' => '48',
+ 'type' => '87'
+ },
+ '11' => {
+ 'name' => 'prog_order',
+ 'offset' => '52',
+ 'type' => '18388'
+ },
+ '12' => {
+ 'name' => 'POC',
+ 'offset' => '56',
+ 'type' => '18976'
+ },
+ '13' => {
+ 'name' => 'numpocs',
+ 'offset' => '4792',
+ 'type' => '9044'
+ },
+ '14' => {
+ 'name' => 'tcp_numlayers',
+ 'offset' => '4796',
+ 'type' => '87'
+ },
+ '15' => {
+ 'name' => 'tcp_rates',
+ 'offset' => '4800',
+ 'type' => '78035'
+ },
+ '16' => {
+ 'name' => 'tcp_distoratio',
+ 'offset' => '5200',
+ 'type' => '78035'
+ },
+ '17' => {
+ 'name' => 'numresolution',
+ 'offset' => '5600',
+ 'type' => '87'
+ },
+ '18' => {
+ 'name' => 'cblockw_init',
+ 'offset' => '5604',
+ 'type' => '87'
+ },
+ '19' => {
+ 'name' => 'cblockh_init',
+ 'offset' => '5608',
+ 'type' => '87'
+ },
+ '2' => {
+ 'name' => 'cp_ty0',
+ 'offset' => '8',
+ 'type' => '87'
+ },
+ '20' => {
+ 'name' => 'mode',
+ 'offset' => '5612',
+ 'type' => '87'
+ },
+ '21' => {
+ 'name' => 'irreversible',
+ 'offset' => '5616',
+ 'type' => '87'
+ },
+ '22' => {
+ 'name' => 'roi_compno',
+ 'offset' => '5620',
+ 'type' => '87'
+ },
+ '23' => {
+ 'name' => 'roi_shift',
+ 'offset' => '5624',
+ 'type' => '87'
+ },
+ '24' => {
+ 'name' => 'res_spec',
+ 'offset' => '5628',
+ 'type' => '87'
+ },
+ '25' => {
+ 'name' => 'prcw_init',
+ 'offset' => '5632',
+ 'type' => '78051'
+ },
+ '26' => {
+ 'name' => 'prch_init',
+ 'offset' => '5764',
+ 'type' => '78051'
+ },
+ '27' => {
+ 'name' => 'infile',
+ 'offset' => '5896',
+ 'type' => '78067'
+ },
+ '28' => {
+ 'name' => 'outfile',
+ 'offset' => '9992',
+ 'type' => '78067'
+ },
+ '29' => {
+ 'name' => 'index_on',
+ 'offset' => '14088',
+ 'type' => '87'
+ },
+ '3' => {
+ 'name' => 'cp_tdx',
+ 'offset' => '12',
+ 'type' => '87'
+ },
+ '30' => {
+ 'name' => 'index',
+ 'offset' => '14092',
+ 'type' => '78067'
+ },
+ '31' => {
+ 'name' => 'image_offset_x0',
+ 'offset' => '18188',
+ 'type' => '87'
+ },
+ '32' => {
+ 'name' => 'image_offset_y0',
+ 'offset' => '18192',
+ 'type' => '87'
+ },
+ '33' => {
+ 'name' => 'subsampling_dx',
+ 'offset' => '18196',
+ 'type' => '87'
+ },
+ '34' => {
+ 'name' => 'subsampling_dy',
+ 'offset' => '18200',
+ 'type' => '87'
+ },
+ '35' => {
+ 'name' => 'decod_format',
+ 'offset' => '18204',
+ 'type' => '87'
+ },
+ '36' => {
+ 'name' => 'cod_format',
+ 'offset' => '18208',
+ 'type' => '87'
+ },
+ '37' => {
+ 'name' => 'jpwl_epc_on',
+ 'offset' => '18212',
+ 'type' => '2753'
+ },
+ '38' => {
+ 'name' => 'jpwl_hprot_MH',
+ 'offset' => '18216',
+ 'type' => '87'
+ },
+ '39' => {
+ 'name' => 'jpwl_hprot_TPH_tileno',
+ 'offset' => '18220',
+ 'type' => '78084'
+ },
+ '4' => {
+ 'name' => 'cp_tdy',
+ 'offset' => '16',
+ 'type' => '87'
+ },
+ '40' => {
+ 'name' => 'jpwl_hprot_TPH',
+ 'offset' => '18284',
+ 'type' => '78084'
+ },
+ '41' => {
+ 'name' => 'jpwl_pprot_tileno',
+ 'offset' => '18348',
+ 'type' => '78084'
+ },
+ '42' => {
+ 'name' => 'jpwl_pprot_packno',
+ 'offset' => '18412',
+ 'type' => '78084'
+ },
+ '43' => {
+ 'name' => 'jpwl_pprot',
+ 'offset' => '18476',
+ 'type' => '78084'
+ },
+ '44' => {
+ 'name' => 'jpwl_sens_size',
+ 'offset' => '18540',
+ 'type' => '87'
+ },
+ '45' => {
+ 'name' => 'jpwl_sens_addr',
+ 'offset' => '18544',
+ 'type' => '87'
+ },
+ '46' => {
+ 'name' => 'jpwl_sens_range',
+ 'offset' => '18548',
+ 'type' => '87'
+ },
+ '47' => {
+ 'name' => 'jpwl_sens_MH',
+ 'offset' => '18552',
+ 'type' => '87'
+ },
+ '48' => {
+ 'name' => 'jpwl_sens_TPH_tileno',
+ 'offset' => '18556',
+ 'type' => '78084'
+ },
+ '49' => {
+ 'name' => 'jpwl_sens_TPH',
+ 'offset' => '18620',
+ 'type' => '78084'
+ },
+ '5' => {
+ 'name' => 'cp_disto_alloc',
+ 'offset' => '20',
+ 'type' => '87'
+ },
+ '50' => {
+ 'name' => 'cp_cinema',
+ 'offset' => '18684',
+ 'type' => '76487'
+ },
+ '51' => {
+ 'name' => 'max_comp_size',
+ 'offset' => '18688',
+ 'type' => '87'
+ },
+ '52' => {
+ 'name' => 'cp_rsiz',
+ 'offset' => '18692',
+ 'type' => '76437'
+ },
+ '53' => {
+ 'name' => 'tp_on',
+ 'offset' => '18696',
+ 'type' => '138'
+ },
+ '54' => {
+ 'name' => 'tp_flag',
+ 'offset' => '18697',
+ 'type' => '138'
+ },
+ '55' => {
+ 'name' => 'tcp_mct',
+ 'offset' => '18698',
+ 'type' => '138'
+ },
+ '56' => {
+ 'name' => 'jpip_on',
+ 'offset' => '18700',
+ 'type' => '2753'
+ },
+ '57' => {
+ 'name' => 'mct_data',
+ 'offset' => '18704',
+ 'type' => '130'
+ },
+ '58' => {
+ 'name' => 'max_cs_size',
+ 'offset' => '18712',
+ 'type' => '87'
+ },
+ '59' => {
+ 'name' => 'rsiz',
+ 'offset' => '18716',
+ 'type' => '18283'
+ },
+ '6' => {
+ 'name' => 'cp_fixed_alloc',
+ 'offset' => '24',
+ 'type' => '87'
+ },
+ '7' => {
+ 'name' => 'cp_fixed_quality',
+ 'offset' => '28',
+ 'type' => '87'
+ },
+ '8' => {
+ 'name' => 'cp_matrice',
+ 'offset' => '32',
+ 'type' => '78013'
+ },
+ '9' => {
+ 'name' => 'cp_comment',
+ 'offset' => '40',
+ 'type' => '132'
+ }
+ },
+ 'Name' => 'struct opj_cparameters',
+ 'Size' => '18720',
+ 'Type' => 'Struct'
+ },
+ '78013' => {
+ 'BaseType' => '87',
+ 'Name' => 'int*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '78035' => {
+ 'BaseType' => '2252',
+ 'Name' => 'float[100]',
+ 'Size' => '400',
+ 'Type' => 'Array'
+ },
+ '78051' => {
+ 'BaseType' => '87',
+ 'Name' => 'int[33]',
+ 'Size' => '132',
+ 'Type' => 'Array'
+ },
+ '78067' => {
+ 'BaseType' => '138',
+ 'Name' => 'char[4096]',
+ 'Size' => '4096',
+ 'Type' => 'Array'
+ },
+ '78084' => {
+ 'BaseType' => '87',
+ 'Name' => 'int[16]',
+ 'Size' => '64',
+ 'Type' => 'Array'
+ },
+ '78100' => {
+ 'BaseType' => '77171',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '538',
+ 'Name' => 'opj_cparameters_t',
+ 'Size' => '18720',
+ 'Type' => 'Typedef'
+ },
+ '78112' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '546',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'cp_reduce',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'cp_layer',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '10' => {
+ 'name' => 'm_verbose',
+ 'offset' => '8224',
+ 'type' => '2753'
+ },
+ '11' => {
+ 'name' => 'tile_index',
+ 'offset' => '8228',
+ 'type' => '9044'
+ },
+ '12' => {
+ 'name' => 'nb_tile_to_decode',
+ 'offset' => '8232',
+ 'type' => '9044'
+ },
+ '13' => {
+ 'name' => 'jpwl_correct',
+ 'offset' => '8236',
+ 'type' => '2753'
+ },
+ '14' => {
+ 'name' => 'jpwl_exp_comps',
+ 'offset' => '8240',
+ 'type' => '87'
+ },
+ '15' => {
+ 'name' => 'jpwl_max_tiles',
+ 'offset' => '8244',
+ 'type' => '87'
+ },
+ '16' => {
+ 'name' => 'flags',
+ 'offset' => '8248',
+ 'type' => '59'
+ },
+ '2' => {
+ 'name' => 'infile',
+ 'offset' => '8',
+ 'type' => '78067'
+ },
+ '3' => {
+ 'name' => 'outfile',
+ 'offset' => '4104',
+ 'type' => '78067'
+ },
+ '4' => {
+ 'name' => 'decod_format',
+ 'offset' => '8200',
+ 'type' => '87'
+ },
+ '5' => {
+ 'name' => 'cod_format',
+ 'offset' => '8204',
+ 'type' => '87'
+ },
+ '6' => {
+ 'name' => 'DA_x0',
+ 'offset' => '8208',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'DA_x1',
+ 'offset' => '8212',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'DA_y0',
+ 'offset' => '8216',
+ 'type' => '9044'
+ },
+ '9' => {
+ 'name' => 'DA_y1',
+ 'offset' => '8220',
+ 'type' => '9044'
+ }
+ },
+ 'Name' => 'struct opj_dparameters',
+ 'Size' => '8252',
+ 'Type' => 'Struct'
+ },
+ '78362' => {
+ 'BaseType' => '78112',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '606',
+ 'Name' => 'opj_dparameters_t',
+ 'Size' => '8252',
+ 'Type' => 'Typedef'
+ },
+ '78878' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '760',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'start_pos',
+ 'offset' => '0',
+ 'type' => '11218'
+ },
+ '1' => {
+ 'name' => 'end_ph_pos',
+ 'offset' => '8',
+ 'type' => '11218'
+ },
+ '2' => {
+ 'name' => 'end_pos',
+ 'offset' => '16',
+ 'type' => '11218'
+ },
+ '3' => {
+ 'name' => 'disto',
+ 'offset' => '24',
+ 'type' => '2259'
+ }
+ },
+ 'Name' => 'struct opj_packet_info',
+ 'Size' => '32',
+ 'Type' => 'Struct'
+ },
+ '78944' => {
+ 'BaseType' => '78878',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '769',
+ 'Name' => 'opj_packet_info_t',
+ 'Size' => '32',
+ 'Type' => 'Typedef'
+ },
+ '78956' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '776',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'type',
+ 'offset' => '0',
+ 'type' => '52'
+ },
+ '1' => {
+ 'name' => 'pos',
+ 'offset' => '8',
+ 'type' => '11218'
+ },
+ '2' => {
+ 'name' => 'len',
+ 'offset' => '16',
+ 'type' => '87'
+ }
+ },
+ 'Name' => 'struct opj_marker_info',
+ 'Size' => '24',
+ 'Type' => 'Struct'
+ },
+ '79009' => {
+ 'BaseType' => '78956',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '783',
+ 'Name' => 'opj_marker_info_t',
+ 'Size' => '24',
+ 'Type' => 'Typedef'
+ },
+ '79361' => {
+ 'BaseType' => '78944',
+ 'Name' => 'opj_packet_info_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '79367' => {
+ 'BaseType' => '79009',
+ 'Name' => 'opj_marker_info_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '797' => {
+ 'Name' => 'void(*)(void*)',
+ 'Param' => {
+ '0' => {
+ 'type' => '130'
+ }
+ },
+ 'Return' => '1',
+ 'Size' => '8',
+ 'Type' => 'FuncPtr'
+ },
+ '79707' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '900',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'compno',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'csty',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '10' => {
+ 'name' => 'numgbits',
+ 'offset' => '808',
+ 'type' => '9044'
+ },
+ '11' => {
+ 'name' => 'roishift',
+ 'offset' => '812',
+ 'type' => '9033'
+ },
+ '12' => {
+ 'name' => 'prcw',
+ 'offset' => '816',
+ 'type' => '19336'
+ },
+ '13' => {
+ 'name' => 'prch',
+ 'offset' => '948',
+ 'type' => '19336'
+ },
+ '2' => {
+ 'name' => 'numresolutions',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'cblkw',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'cblkh',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'cblksty',
+ 'offset' => '20',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'qmfbid',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'qntsty',
+ 'offset' => '28',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'stepsizes_mant',
+ 'offset' => '32',
+ 'type' => '79909'
+ },
+ '9' => {
+ 'name' => 'stepsizes_expn',
+ 'offset' => '420',
+ 'type' => '79909'
+ }
+ },
+ 'Name' => 'struct opj_tccp_info',
+ 'Size' => '1080',
+ 'Type' => 'Struct'
+ },
+ '79909' => {
+ 'BaseType' => '9044',
+ 'Name' => 'OPJ_UINT32[97]',
+ 'Size' => '388',
+ 'Type' => 'Array'
+ },
+ '79941' => {
+ 'BaseType' => '79707',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '930',
+ 'Name' => 'opj_tccp_info_t',
+ 'Size' => '1080',
+ 'Type' => 'Typedef'
+ },
+ '79953' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '935',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'tileno',
+ 'offset' => '0',
+ 'type' => '87'
+ },
+ '1' => {
+ 'name' => 'csty',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'prg',
+ 'offset' => '8',
+ 'type' => '18388'
+ },
+ '3' => {
+ 'name' => 'numlayers',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'mct',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'tccp_info',
+ 'offset' => '24',
+ 'type' => '80045'
+ }
+ },
+ 'Name' => 'struct opj_tile_v2_info',
+ 'Size' => '32',
+ 'Type' => 'Struct'
+ },
+ '80045' => {
+ 'BaseType' => '79941',
+ 'Name' => 'opj_tccp_info_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '80051' => {
+ 'BaseType' => '79953',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '951',
+ 'Name' => 'opj_tile_info_v2_t',
+ 'Size' => '32',
+ 'Type' => 'Typedef'
+ },
+ '80063' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '956',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'tx0',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'ty0',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'tdx',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'tdy',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'tw',
+ 'offset' => '16',
+ 'type' => '9044'
+ },
+ '5' => {
+ 'name' => 'th',
+ 'offset' => '20',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'nbcomps',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'm_default_tile_info',
+ 'offset' => '32',
+ 'type' => '80051'
+ },
+ '8' => {
+ 'name' => 'tile_info',
+ 'offset' => '64',
+ 'type' => '80192'
+ }
+ },
+ 'Name' => 'struct opj_codestream_info_v2',
+ 'Size' => '72',
+ 'Type' => 'Struct'
+ },
+ '80192' => {
+ 'BaseType' => '80051',
+ 'Name' => 'opj_tile_info_v2_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '80198' => {
+ 'BaseType' => '80063',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '980',
+ 'Name' => 'opj_codestream_info_v2_t',
+ 'Size' => '72',
+ 'Type' => 'Typedef'
+ },
+ '80210' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '986',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'start_pos',
+ 'offset' => '0',
+ 'type' => '11218'
+ },
+ '1' => {
+ 'name' => 'end_header',
+ 'offset' => '8',
+ 'type' => '11218'
+ },
+ '2' => {
+ 'name' => 'end_pos',
+ 'offset' => '16',
+ 'type' => '11218'
+ }
+ },
+ 'Name' => 'struct opj_tp_index',
+ 'Size' => '24',
+ 'Type' => 'Struct'
+ },
+ '80263' => {
+ 'BaseType' => '80210',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '994',
+ 'Name' => 'opj_tp_index_t',
+ 'Size' => '24',
+ 'Type' => 'Typedef'
+ },
+ '80275' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '999',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'tileno',
+ 'offset' => '0',
+ 'type' => '9044'
+ },
+ '1' => {
+ 'name' => 'nb_tps',
+ 'offset' => '4',
+ 'type' => '9044'
+ },
+ '2' => {
+ 'name' => 'current_nb_tps',
+ 'offset' => '8',
+ 'type' => '9044'
+ },
+ '3' => {
+ 'name' => 'current_tpsno',
+ 'offset' => '12',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'tp_index',
+ 'offset' => '16',
+ 'type' => '80419'
+ },
+ '5' => {
+ 'name' => 'marknum',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'marker',
+ 'offset' => '32',
+ 'type' => '79367'
+ },
+ '7' => {
+ 'name' => 'maxmarknum',
+ 'offset' => '40',
+ 'type' => '9044'
+ },
+ '8' => {
+ 'name' => 'nb_packet',
+ 'offset' => '44',
+ 'type' => '9044'
+ },
+ '9' => {
+ 'name' => 'packet_index',
+ 'offset' => '48',
+ 'type' => '79361'
+ }
+ },
+ 'Name' => 'struct opj_tile_index',
+ 'Size' => '56',
+ 'Type' => 'Struct'
+ },
+ '80419' => {
+ 'BaseType' => '80263',
+ 'Name' => 'opj_tp_index_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '80425' => {
+ 'BaseType' => '80275',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1026',
+ 'Name' => 'opj_tile_index_t',
+ 'Size' => '56',
+ 'Type' => 'Typedef'
+ },
+ '80437' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1031',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'main_head_start',
+ 'offset' => '0',
+ 'type' => '11218'
+ },
+ '1' => {
+ 'name' => 'main_head_end',
+ 'offset' => '8',
+ 'type' => '11218'
+ },
+ '2' => {
+ 'name' => 'codestream_size',
+ 'offset' => '16',
+ 'type' => '11207'
+ },
+ '3' => {
+ 'name' => 'marknum',
+ 'offset' => '24',
+ 'type' => '9044'
+ },
+ '4' => {
+ 'name' => 'marker',
+ 'offset' => '32',
+ 'type' => '79367'
+ },
+ '5' => {
+ 'name' => 'maxmarknum',
+ 'offset' => '40',
+ 'type' => '9044'
+ },
+ '6' => {
+ 'name' => 'nb_of_tiles',
+ 'offset' => '44',
+ 'type' => '9044'
+ },
+ '7' => {
+ 'name' => 'tile_index',
+ 'offset' => '48',
+ 'type' => '80555'
+ }
+ },
+ 'Name' => 'struct opj_codestream_index',
+ 'Size' => '56',
+ 'Type' => 'Struct'
+ },
+ '80555' => {
+ 'BaseType' => '80425',
+ 'Name' => 'opj_tile_index_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '80561' => {
+ 'BaseType' => '80437',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '1054',
+ 'Name' => 'opj_codestream_index_t',
+ 'Size' => '56',
+ 'Type' => 'Typedef'
+ },
+ '83562' => {
+ 'BaseType' => '80561',
+ 'Name' => 'opj_codestream_index_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85808' => {
+ 'BaseType' => '21106',
+ 'Name' => 'opj_image_t**',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85814' => {
+ 'BaseType' => '78362',
+ 'Name' => 'opj_dparameters_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85826' => {
+ 'BaseType' => '23240',
+ 'Name' => 'OPJ_UINT32 const*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85837' => {
+ 'BaseType' => '78100',
+ 'Name' => 'opj_cparameters_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85843' => {
+ 'BaseType' => '85849',
+ 'Name' => 'char const*const*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85849' => {
+ 'BaseType' => '156',
+ 'Name' => 'char const*const',
+ 'Size' => '8',
+ 'Type' => 'Const'
+ },
+ '85854' => {
+ 'BaseType' => '75668',
+ 'Name' => 'FILE*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '85860' => {
+ 'BaseType' => '80198',
+ 'Name' => 'opj_codestream_info_v2_t*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '87' => {
+ 'Name' => 'int',
+ 'Size' => '4',
+ 'Type' => 'Intrinsic'
+ },
+ '9000' => {
+ 'BaseType' => '45',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '117',
+ 'Name' => 'OPJ_BYTE',
+ 'Size' => '1',
+ 'Type' => 'Typedef'
+ },
+ '9011' => {
+ 'BaseType' => '87',
+ 'Header' => 'stdint.h',
+ 'Line' => '38',
+ 'Name' => 'int32_t',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '9022' => {
+ 'BaseType' => '59',
+ 'Header' => 'stdint.h',
+ 'Line' => '51',
+ 'Name' => 'uint32_t',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '9033' => {
+ 'BaseType' => '9011',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '125',
+ 'Name' => 'OPJ_INT32',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '9044' => {
+ 'BaseType' => '9022',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '126',
+ 'Name' => 'OPJ_UINT32',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '9055' => {
+ 'BaseType' => '145',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '133',
+ 'Name' => 'OPJ_SIZE_T',
+ 'Size' => '8',
+ 'Type' => 'Typedef'
+ },
+ '9066' => {
+ 'BaseType' => '9000',
+ 'Name' => 'OPJ_BYTE*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '94' => {
+ 'Name' => 'long',
+ 'Size' => '8',
+ 'Type' => 'Intrinsic'
+ }
+ },
+ 'UndefinedSymbols' => {
+ 'libopenjp2.so.2.5.0' => {
+ '_ITM_deregisterTMCloneTable' => 0,
+ '_ITM_registerTMCloneTable' => 0,
+ '_Jv_RegisterClasses' => 0,
+ '__assert_fail@GLIBC_2.2.5' => 0,
+ '__cxa_finalize@GLIBC_2.2.5' => 0,
+ '__fprintf_chk@GLIBC_2.3.4' => 0,
+ '__gmon_start__' => 0,
+ '__sprintf_chk@GLIBC_2.3.4' => 0,
+ '__stack_chk_fail@GLIBC_2.4' => 0,
+ '__vsnprintf_chk@GLIBC_2.3.4' => 0,
+ 'calloc@GLIBC_2.2.5' => 0,
+ 'ceilf@GLIBC_2.2.5' => 0,
+ 'fclose@GLIBC_2.2.5' => 0,
+ 'floor@GLIBC_2.2.5' => 0,
+ 'floorf@GLIBC_2.2.5' => 0,
+ 'fopen@GLIBC_2.2.5' => 0,
+ 'fputc@GLIBC_2.2.5' => 0,
+ 'fread@GLIBC_2.2.5' => 0,
+ 'free@GLIBC_2.2.5' => 0,
+ 'fseeko@GLIBC_2.2.5' => 0,
+ 'ftello@GLIBC_2.2.5' => 0,
+ 'fwrite@GLIBC_2.2.5' => 0,
+ 'getenv@GLIBC_2.2.5' => 0,
+ 'getrusage@GLIBC_2.2.5' => 0,
+ 'lrintf@GLIBC_2.2.5' => 0,
+ 'malloc@GLIBC_2.2.5' => 0,
+ 'memcpy@GLIBC_2.14' => 0,
+ 'memmove@GLIBC_2.2.5' => 0,
+ 'memset@GLIBC_2.2.5' => 0,
+ 'posix_memalign@GLIBC_2.2.5' => 0,
+ 'pow@GLIBC_2.2.5' => 0,
+ 'pthread_attr_init@GLIBC_2.2.5' => 0,
+ 'pthread_attr_setdetachstate@GLIBC_2.2.5' => 0,
+ 'pthread_cond_destroy@GLIBC_2.3.2' => 0,
+ 'pthread_cond_init@GLIBC_2.3.2' => 0,
+ 'pthread_cond_signal@GLIBC_2.3.2' => 0,
+ 'pthread_cond_wait@GLIBC_2.3.2' => 0,
+ 'pthread_create@GLIBC_2.2.5' => 0,
+ 'pthread_join@GLIBC_2.2.5' => 0,
+ 'pthread_mutex_destroy@GLIBC_2.2.5' => 0,
+ 'pthread_mutex_init@GLIBC_2.2.5' => 0,
+ 'pthread_mutex_lock@GLIBC_2.2.5' => 0,
+ 'pthread_mutex_unlock@GLIBC_2.2.5' => 0,
+ 'realloc@GLIBC_2.2.5' => 0,
+ 'sqrt@GLIBC_2.2.5' => 0,
+ 'stdout@GLIBC_2.2.5' => 0,
+ 'strcpy@GLIBC_2.2.5' => 0,
+ 'strtol@GLIBC_2.2.5' => 0,
+ 'sysconf@GLIBC_2.2.5' => 0
+ }
+ },
+ 'WordSize' => '8'
+ };
--- /dev/null
+{
+ "Object": "lib/libopenjp2.so.2.5.0",
+ "Lang": "C",
+ "TotalSymbols": "50",
+ "PublicABI": "1",
+ "Version": "1.7"
+}
\ No newline at end of file
<br/>
<h1>Changelog from Git</h1><br/><br/>
<div class='changelog'>
-<pre class='wrap'>commit c28965f255c711a7b2f84a08b1398e5a0f807b0e
+<pre class='wrap'>commit cc1919b183f76d5ac79cc9927fb899b47700d925
+Merge: c28965f 655bb12
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2021-06-09 11:53:56 +0200
+
+ Merge pull request #1361 from rouault/update_version_numbers_to_2_5
+
+ CMakeLists.txt/appveyor.yml: update version number to 2.5.0…
+
+commit 655bb125250561dd1fa518ce523c388bcd84754a
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2021-06-08 14:34:43 +0200
+
+ CMakeLists.txt/appveyor.yml: update version number to 2.5.0 to make it easier for downstream consumers to use new features
+
+commit c28965f255c711a7b2f84a08b1398e5a0f807b0e
Merge: 2624908 a36ae03
Author: Even Rouault <even.rouault@spatialys.com>
Date: 2021-06-08 11:11:04 +0200
Add check to validate SGcod/SPcoc/SPcod parameter values.
-commit adccbc8336ce5c46ca7de85ac364d9c992d337c7
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2020-05-20 19:24:09 +0200
-
- Irreversible decoding: partially revert previous commit, to fix failures in test suite
-
commit 1d358f25c8eabbc7c274bcc148f4f5d594ec13fe
Merge: 64689d0 4edb8c8
Author: Even Rouault <even.rouault@spatialys.com>
struct opj_j2k: remove unused fields, and add some documentation
commit 774889a328abd5d3c280d9a897f1ac4c672cb0e5
-Merge: b6b7e96 271a71e
Author: Even Rouault <even.rouault@spatialys.com>
Date: 2020-04-17 00:39:46 +0200
Fix warnings about signed/unsigned casts in pi.c
-commit b6b7e96b0cf7819ef6a2e8ba2f8bdaaf938326ed
-Author: szukw000 <szukw000@arcor.de>
-Date: 2020-04-17 00:37:33 +0200
-
- color_apply_icc_profile: add checks on the number of components (#1236)
-
-commit 271a71ef0f1dd4740c9f4474279c7da8d15850c9
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2020-04-16 20:52:44 +0200
-
- Fix warnings about signed/unsigned casts in pi.c
-
commit f3ee448815eb992b8d4746e32c05e8289f30415f
Author: Sebastian Rasmussen <sebras@gmail.com>
Date: 2018-10-31 15:56:11 +0100
This fixes issue #1210.
+commit d801bd4e6287d13b65a48775ebd43fca350b21d9
+Author: Sebastian Rasmussen <sebras@gmail.com>
+Date: 2019-09-04 01:18:37 +0200
+
+ openjp2/j2k: Make comments adhere to specification.
+
+ The function is used to read both SPcod and SPcoc, so all
+ comments should refer to both marker segments' parameter names.
+
...</pre></div>
</body>
--- /dev/null
+<!-- verdict:compatible;affected:0;added:0;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="keywords" content="libopenjp2, binary compatibility, API, report" />
+<meta name="description" content="Binary compatibility report for the libopenjp2 object between 2.4.0 and current versions on x86_64" />
+<title>libopenjp2: 2.4.0 to current binary compatibility report</title>
+<style type="text/css">
+body {
+ font-family:Arial, sans-serif;
+ background-color:White;
+ color:Black;
+}
+hr {
+ color:Black;
+ background-color:Black;
+ height:1px;
+ border:0;
+}
+h1 {
+ margin-bottom:0px;
+ padding-bottom:0px;
+ font-size:1.625em;
+}
+h2 {
+ margin-bottom:0px;
+ padding-bottom:0px;
+ font-size:1.25em;
+ white-space:nowrap;
+}
+span.section {
+ font-weight:bold;
+ cursor:pointer;
+ color:#003E69;
+ white-space:nowrap;
+ margin-left:5px;
+}
+span.new_sign {
+ font-weight:bold;
+ margin-left:26px;
+ color:#003E69;
+}
+span.new_sign_lbl {
+ margin-left:28px;
+ font-size:0.875em;
+ color:Black;
+}
+span:hover.section {
+ color:#336699;
+}
+span.sect_aff {
+ cursor:pointer;
+ margin-left:7px;
+ padding-left:15px;
+ font-size:0.875em;
+ color:#cc3300;
+}
+span.sect_info {
+ cursor:pointer;
+ margin-left:7px;
+ padding-left:15px;
+ font-size:0.875em;
+ color:Black;
+}
+span.ext {
+ font-weight:100;
+}
+span.h_name {
+ color:#cc3300;
+ font-size:0.875em;
+ font-weight:bold;
+}
+div.h_list, div.lib_list {
+ font-size:0.94em;
+ padding-left:5px;
+}
+span.ns {
+ color:#408080;
+ font-size:0.94em;
+}
+span.lib_name {
+ color:Green;
+ font-size:0.875em;
+ font-weight:bold;
+}
+span.iname {
+ font-weight:bold;
+ color:#003E69;
+ margin-left:5px;
+}
+span.iname_b {
+ font-weight:bold;
+ font-size:1.1em;
+}
+span.iname_a {
+ color:#333333;
+ font-weight:bold;
+ font-size:0.94em;
+}
+span.sym_p {
+ font-weight:normal;
+ white-space:normal;
+}
+div.affect {
+ padding-left:15px;
+ padding-bottom:10px;
+ font-size:0.87em;
+ font-style:italic;
+ line-height:0.75em;
+}
+div.affected {
+ padding-left:30px;
+ padding-top:10px;
+}
+table.ptable {
+ border-collapse:collapse;
+ border:1px outset black;
+ line-height:1em;
+ margin-left:15px;
+ margin-top:3px;
+ margin-bottom:3px;
+ width:900px;
+
+}
+table.ptable td {
+ border:1px solid gray;
+ padding: 3px;
+ font-size:0.875em;
+ text-align:left;
+ vertical-align:top;
+}
+table.vtable {
+ border-collapse:collapse;
+ border:1px outset black;
+ line-height:16px;
+ margin-left:30px;
+ margin-top:10px;
+}
+table.vtable td {
+ border:1px solid gray;
+ word-wrap:break-word;
+ padding: 3px;
+ font-size:0.875em;
+ max-width:450px;
+ vertical-align:top;
+}
+table.ptable th, table.vtable th {
+ background-color:#eeeeee;
+ font-weight:bold;
+ color:#333333;
+ font-family:Verdana, Arial;
+ font-size:0.81em;
+ border:1px solid gray;
+ text-align:center;
+ vertical-align:top;
+ white-space:nowrap;
+ padding: 3px;
+}
+table.summary {
+ border-collapse:collapse;
+ border:1px outset black;
+}
+table.summary th {
+ background-color:#eeeeee;
+ font-weight:100;
+ text-align:left;
+ font-size:0.94em;
+ white-space:nowrap;
+ border:1px inset gray;
+ padding: 3px;
+}
+table.summary td {
+ text-align:right;
+ white-space:nowrap;
+ border:1px inset gray;
+ padding: 3px 5px 3px 10px;
+}
+span.mangled {
+ padding-left:15px;
+ font-size:0.875em;
+ cursor:text;
+ color:#444444;
+}
+span.sym_ver {
+ color:#333333;
+ white-space:nowrap;
+ font-family:"DejaVu Sans Mono", Monospace;
+}
+span.attr {
+ color:#333333;
+ font-weight:100;
+}
+span.color_p {
+ font-style:italic;
+ color:Brown;
+}
+span.p {
+ font-style:italic;
+}
+span.fp {
+ font-style:italic;
+ background-color:#DCDCDC;
+}
+span.ttype {
+ font-weight:100;
+}
+span.nowrap {
+ white-space:nowrap;
+}
+span.value {
+ white-space:nowrap;
+ font-weight:bold;
+}
+.passed {
+ background-color:#CCFFCC;
+}
+.warning {
+ background-color:#F4F4AF;
+}
+.failed {
+ background-color:#FFCCCC;
+}
+.new {
+ background-color:#C6DEFF;
+}
+.compatible {
+ background-color:#CCFFCC;
+}
+.almost_compatible {
+ background-color:#FFDAA3;
+}
+.incompatible {
+ background-color:#FFCCCC;
+}
+.gray {
+ background-color:#DCDCDC;
+}
+.top_ref {
+ font-size:0.69em;
+}
+.footer {
+ font-size:0.75em;
+}
+</style>
+<script type="text/javascript" language="JavaScript">
+<!--
+function showContent(header, id)
+{
+ e = document.getElementById(id);
+ if(e.style.display == 'none')
+ {
+ e.style.display = 'block';
+ e.style.visibility = 'visible';
+ header.innerHTML = header.innerHTML.replace(/\[[^0-9 ]\]/gi,"[−]");
+ }
+ else
+ {
+ e.style.display = 'none';
+ e.style.visibility = 'hidden';
+ header.innerHTML = header.innerHTML.replace(/\[[^0-9 ]\]/gi,"[+]");
+ }
+}
+-->
+</script>
+</head>
+
+<body>
+<div><a name='Top'></a>
+<h1>Binary compatibility report for the <span style='color:Blue;'>libopenjp2.so</span> object between <span style='color:Red;'>2.4.0</span> and <span style='color:Red;'>current</span> versions on <span style='color:Blue;'>x86_64</span></h1>
+
+<h2>Test Info</h2><hr/>
+<table class='summary'>
+<tr><th>Module Name</th><td>libopenjp2</td></tr>
+<tr><th>Version #1</th><td>2.4.0</td></tr>
+<tr><th>Version #2</th><td>current</td></tr>
+<tr><th>CPU Type</th><td>x86_64</td></tr>
+<tr><th>GCC Version</th><td>4.8.5</td></tr>
+</table>
+<h2>Test Results</h2><hr/>
+<table class='summary'><tr><th>Total Header Files</th><td><a href='#Headers' style='color:Blue;'>1</a></td></tr>
+<tr><th>Total Source Files</th><td><a href='#Sources' style='color:Blue;'>4</a></td></tr>
+<tr><th>Total Objects</th><td><a href='#Libs' style='color:Blue;'>1</a></td></tr>
+<tr><th>Total Symbols / Types</th><td>50 / 114</td></tr>
+<tr><th>Compatibility</th>
+<td class='compatible'>100%</td>
+</tr>
+</table>
+<h2>Problem Summary</h2><hr/>
+<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td>0</td></tr>
+<tr><th>Removed Symbols</th><td>High</td><td>0</td></tr>
+<tr><th rowspan='3'>Problems with<br/>Data Types</th><td>High</td><td>0</td></tr>
+<tr><td>Medium</td><td>0</td></tr>
+<tr><td>Low</td><td>0</td></tr>
+<tr><th rowspan='3'>Problems with<br/>Symbols</th><td>High</td><td>0</td></tr>
+<tr><td>Medium</td><td>0</td></tr>
+<tr><td>Low</td><td>0</td></tr>
+<tr><th>Problems with<br/>Constants</th><td>Low</td><td>0</td></tr>
+</table>
+
+<a name='Headers'></a><h2>Header Files <span class='gray'> 1 </span></h2><hr/>
+<div class='h_list'>
+openjpeg.h<br/>
+</div>
+<br/><a class='top_ref' href='#Top'>to the top</a><br/>
+<a name='Sources'></a><h2>Source Files <span class='gray'> 4 </span></h2><hr/>
+<div class='h_list'>
+cio.c<br/>
+image.c<br/>
+openjpeg.c<br/>
+thread.c<br/>
+</div>
+<br/><a class='top_ref' href='#Top'>to the top</a><br/>
+<a name='Libs'></a><h2>Objects <span class='gray'> 1 </span></h2><hr/>
+<div class='lib_list'>
+libopenjp2.so.2.4.0<br/>
+</div>
+<br/><a class='top_ref' href='#Top'>to the top</a><br/>
+</div>
+<br/><br/><br/>
+<hr/>
+<div class='footer' align='right'><i>Generated by <a href='http://lvc.github.io/abi-compliance-checker/'>ABI Compliance Checker</a> 1.99.21  </i>
+</div>
+<br/>
+
+</body></html>
--- /dev/null
+{
+ "Affected": "0",
+ "Added": 0,
+ "Removed": 0,
+ "TotalProblems": 0,
+ "Object1": "lib/libopenjp2.so.2.4.0",
+ "Object2": "lib/libopenjp2.so.2.5.0"
+}
\ No newline at end of file
+++ /dev/null
-<!-- verdict:compatible;affected:0;added:0;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="keywords" content="libopenjp2, binary compatibility, API, report" />
-<meta name="description" content="Binary compatibility report for the libopenjp2 object between 2.4.0 and current versions on x86_64" />
-<title>libopenjp2: 2.4.0 to current binary compatibility report</title>
-<style type="text/css">
-body {
- font-family:Arial, sans-serif;
- background-color:White;
- color:Black;
-}
-hr {
- color:Black;
- background-color:Black;
- height:1px;
- border:0;
-}
-h1 {
- margin-bottom:0px;
- padding-bottom:0px;
- font-size:1.625em;
-}
-h2 {
- margin-bottom:0px;
- padding-bottom:0px;
- font-size:1.25em;
- white-space:nowrap;
-}
-span.section {
- font-weight:bold;
- cursor:pointer;
- color:#003E69;
- white-space:nowrap;
- margin-left:5px;
-}
-span.new_sign {
- font-weight:bold;
- margin-left:26px;
- color:#003E69;
-}
-span.new_sign_lbl {
- margin-left:28px;
- font-size:0.875em;
- color:Black;
-}
-span:hover.section {
- color:#336699;
-}
-span.sect_aff {
- cursor:pointer;
- margin-left:7px;
- padding-left:15px;
- font-size:0.875em;
- color:#cc3300;
-}
-span.sect_info {
- cursor:pointer;
- margin-left:7px;
- padding-left:15px;
- font-size:0.875em;
- color:Black;
-}
-span.ext {
- font-weight:100;
-}
-span.h_name {
- color:#cc3300;
- font-size:0.875em;
- font-weight:bold;
-}
-div.h_list, div.lib_list {
- font-size:0.94em;
- padding-left:5px;
-}
-span.ns {
- color:#408080;
- font-size:0.94em;
-}
-span.lib_name {
- color:Green;
- font-size:0.875em;
- font-weight:bold;
-}
-span.iname {
- font-weight:bold;
- color:#003E69;
- margin-left:5px;
-}
-span.iname_b {
- font-weight:bold;
- font-size:1.1em;
-}
-span.iname_a {
- color:#333333;
- font-weight:bold;
- font-size:0.94em;
-}
-span.sym_p {
- font-weight:normal;
- white-space:normal;
-}
-div.affect {
- padding-left:15px;
- padding-bottom:10px;
- font-size:0.87em;
- font-style:italic;
- line-height:0.75em;
-}
-div.affected {
- padding-left:30px;
- padding-top:10px;
-}
-table.ptable {
- border-collapse:collapse;
- border:1px outset black;
- line-height:1em;
- margin-left:15px;
- margin-top:3px;
- margin-bottom:3px;
- width:900px;
-
-}
-table.ptable td {
- border:1px solid gray;
- padding: 3px;
- font-size:0.875em;
- text-align:left;
- vertical-align:top;
-}
-table.vtable {
- border-collapse:collapse;
- border:1px outset black;
- line-height:16px;
- margin-left:30px;
- margin-top:10px;
-}
-table.vtable td {
- border:1px solid gray;
- word-wrap:break-word;
- padding: 3px;
- font-size:0.875em;
- max-width:450px;
- vertical-align:top;
-}
-table.ptable th, table.vtable th {
- background-color:#eeeeee;
- font-weight:bold;
- color:#333333;
- font-family:Verdana, Arial;
- font-size:0.81em;
- border:1px solid gray;
- text-align:center;
- vertical-align:top;
- white-space:nowrap;
- padding: 3px;
-}
-table.summary {
- border-collapse:collapse;
- border:1px outset black;
-}
-table.summary th {
- background-color:#eeeeee;
- font-weight:100;
- text-align:left;
- font-size:0.94em;
- white-space:nowrap;
- border:1px inset gray;
- padding: 3px;
-}
-table.summary td {
- text-align:right;
- white-space:nowrap;
- border:1px inset gray;
- padding: 3px 5px 3px 10px;
-}
-span.mangled {
- padding-left:15px;
- font-size:0.875em;
- cursor:text;
- color:#444444;
-}
-span.sym_ver {
- color:#333333;
- white-space:nowrap;
- font-family:"DejaVu Sans Mono", Monospace;
-}
-span.attr {
- color:#333333;
- font-weight:100;
-}
-span.color_p {
- font-style:italic;
- color:Brown;
-}
-span.p {
- font-style:italic;
-}
-span.fp {
- font-style:italic;
- background-color:#DCDCDC;
-}
-span.ttype {
- font-weight:100;
-}
-span.nowrap {
- white-space:nowrap;
-}
-span.value {
- white-space:nowrap;
- font-weight:bold;
-}
-.passed {
- background-color:#CCFFCC;
-}
-.warning {
- background-color:#F4F4AF;
-}
-.failed {
- background-color:#FFCCCC;
-}
-.new {
- background-color:#C6DEFF;
-}
-.compatible {
- background-color:#CCFFCC;
-}
-.almost_compatible {
- background-color:#FFDAA3;
-}
-.incompatible {
- background-color:#FFCCCC;
-}
-.gray {
- background-color:#DCDCDC;
-}
-.top_ref {
- font-size:0.69em;
-}
-.footer {
- font-size:0.75em;
-}
-</style>
-<script type="text/javascript" language="JavaScript">
-<!--
-function showContent(header, id)
-{
- e = document.getElementById(id);
- if(e.style.display == 'none')
- {
- e.style.display = 'block';
- e.style.visibility = 'visible';
- header.innerHTML = header.innerHTML.replace(/\[[^0-9 ]\]/gi,"[−]");
- }
- else
- {
- e.style.display = 'none';
- e.style.visibility = 'hidden';
- header.innerHTML = header.innerHTML.replace(/\[[^0-9 ]\]/gi,"[+]");
- }
-}
--->
-</script>
-</head>
-
-<body>
-<div><a name='Top'></a>
-<h1>Binary compatibility report for the <span style='color:Blue;'>libopenjp2.so</span> object between <span style='color:Red;'>2.4.0</span> and <span style='color:Red;'>current</span> versions on <span style='color:Blue;'>x86_64</span></h1>
-
-<h2>Test Info</h2><hr/>
-<table class='summary'>
-<tr><th>Module Name</th><td>libopenjp2</td></tr>
-<tr><th>Version #1</th><td>2.4.0</td></tr>
-<tr><th>Version #2</th><td>current</td></tr>
-<tr><th>CPU Type</th><td>x86_64</td></tr>
-<tr><th>GCC Version</th><td>4.8.5</td></tr>
-</table>
-<h2>Test Results</h2><hr/>
-<table class='summary'><tr><th>Total Header Files</th><td><a href='#Headers' style='color:Blue;'>1</a></td></tr>
-<tr><th>Total Source Files</th><td><a href='#Sources' style='color:Blue;'>4</a></td></tr>
-<tr><th>Total Objects</th><td><a href='#Libs' style='color:Blue;'>1</a></td></tr>
-<tr><th>Total Symbols / Types</th><td>50 / 114</td></tr>
-<tr><th>Compatibility</th>
-<td class='compatible'>100%</td>
-</tr>
-</table>
-<h2>Problem Summary</h2><hr/>
-<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td>0</td></tr>
-<tr><th>Removed Symbols</th><td>High</td><td>0</td></tr>
-<tr><th rowspan='3'>Problems with<br/>Data Types</th><td>High</td><td>0</td></tr>
-<tr><td>Medium</td><td>0</td></tr>
-<tr><td>Low</td><td>0</td></tr>
-<tr><th rowspan='3'>Problems with<br/>Symbols</th><td>High</td><td>0</td></tr>
-<tr><td>Medium</td><td>0</td></tr>
-<tr><td>Low</td><td>0</td></tr>
-<tr><th>Problems with<br/>Constants</th><td>Low</td><td>0</td></tr>
-</table>
-
-<a name='Headers'></a><h2>Header Files <span class='gray'> 1 </span></h2><hr/>
-<div class='h_list'>
-openjpeg.h<br/>
-</div>
-<br/><a class='top_ref' href='#Top'>to the top</a><br/>
-<a name='Sources'></a><h2>Source Files <span class='gray'> 4 </span></h2><hr/>
-<div class='h_list'>
-cio.c<br/>
-image.c<br/>
-openjpeg.c<br/>
-thread.c<br/>
-</div>
-<br/><a class='top_ref' href='#Top'>to the top</a><br/>
-<a name='Libs'></a><h2>Objects <span class='gray'> 1 </span></h2><hr/>
-<div class='lib_list'>
-libopenjp2.so.2.4.0<br/>
-</div>
-<br/><a class='top_ref' href='#Top'>to the top</a><br/>
-</div>
-<br/><br/><br/>
-<hr/>
-<div class='footer' align='right'><i>Generated by <a href='http://lvc.github.io/abi-compliance-checker/'>ABI Compliance Checker</a> 1.99.21  </i>
-</div>
-<br/>
-
-</body></html>
+++ /dev/null
-{
- "Affected": "0",
- "Added": 0,
- "Removed": 0,
- "TotalProblems": 0,
- "Object1": "lib/libopenjp2.so.2.4.0",
- "Object2": "lib/libopenjp2.so.2.4.0"
-}
\ No newline at end of file
}
},
'current' => {
- '3344f' => {
+ 'f3fd9' => {
'Lang' => 'C',
- 'Object' => 'lib/libopenjp2.so.2.4.0',
- 'Path' => 'abi_dump/openjpeg/current/3344f/ABI.dump',
+ 'Object' => 'lib/libopenjp2.so.2.5.0',
+ 'Path' => 'abi_dump/openjpeg/current/f3fd9/ABI.dump',
'TotalSymbols' => '50',
'Version' => '1.7'
}
},
'2.4.0' => {
'current' => {
- 'd6a7b' => {
+ 'c6917' => {
'Added' => 0,
'Affected' => 0,
'Object1' => 'lib/libopenjp2.so.2.4.0',
- 'Object2' => 'lib/libopenjp2.so.2.4.0',
- 'Path' => 'compat_report/openjpeg/2.4.0/current/d6a7b/abi_compat_report.html',
+ 'Object2' => 'lib/libopenjp2.so.2.5.0',
+ 'Path' => 'compat_report/openjpeg/2.4.0/current/c6917/abi_compat_report.html',
'Removed' => 0,
'TotalProblems' => 0
}
'2.3.0' => '2017-10-04 22:23',
'2.3.1' => '2019-04-02 10:08',
'2.4.0' => '2020-12-28 20:59',
- 'current' => '2021-06-08 11:11:04'
+ 'current' => '2021-06-09 11:53:56'
},
'HeadersDiff' => {
'1.1' => {
'2.4.0' => {
'current' => {
'Path' => 'headers_diff/openjpeg/2.4.0/current/diff.html',
- 'Total' => 1
+ 'Total' => 2
}
}
},
'Maintainer' => 'OpenJPEG team',
'MaintainerUrl' => 'http://www.openjpeg.org/',
'PackageDiff' => {},
- 'ScmUpdateTime' => '1623143722',
+ 'ScmUpdateTime' => '1623232683',
'Soname' => {
'1.1' => {
'lib/libopenjpeg.so' => 'libopenjpeg.so'
'lib/libopenjp2.so.2.4.0' => 'libopenjp2.so.7'
},
'current' => {
- 'lib/libopenjp2.so.2.4.0' => 'libopenjp2.so.7'
+ 'lib/libopenjp2.so.2.5.0' => 'libopenjp2.so.7'
}
},
'Sover' => {
<tr class="stats"><td></td><th><i>2 lines changed or deleted</i></th><th><i> </i></th><th><i>5 lines changed or added</i></th><td></td></tr>
<tr><td colspan="5" align="center" class="small"></td></tr>
</table>
+ <br/><br/>
+
+ <table class='diff_tbl' border="0" cellpadding="0" cellspacing="0">
+ <tr id="part-1" bgcolor="orange"><th></th><th> opj_config.h (2.4.0) </th><th> </th><th> opj_config.h (current) </th><th></th></tr>
+ <tr><td class="lineno"></td><td class="left">/* create opj_config.h for CMake */</td><td> </td><td class="right">/* create opj_config.h for CMake */</td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">#define OPJ_HAVE_STDINT_H 1</td><td> </td><td class="right">#define OPJ_HAVE_STDINT_H 1</td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">/*-------------------------------------------------------------------------
+-*/</td><td> </td><td class="right">/*-------------------------------------------------------------------------
+-*/</td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">/* OpenJPEG Versioning
+ */</td><td> </td><td class="right">/* OpenJPEG Versioning
+ */</td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">/* Version number. */</td><td> </td><td class="right">/* Version number. */</td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">#define OPJ_VERSION_MAJOR 2</td><td> </td><td class="right">#define OPJ_VERSION_MAJOR 2</td><td class="lineno"></td></tr>
+ <tr id="diff0001"><td></td></tr>
+ <tr><td class="lineno"></td><td class="lblock">#define OPJ_VERSION_MINOR <span class="delete">4</span></td><td> </td><td class="rblock">#define OPJ_VERSION_MINOR <span class="insert">5</span></td><td class="lineno"></td></tr>
+ <tr><td class="lineno"></td><td class="left">#define OPJ_VERSION_BUILD 0</td><td> </td><td class="right">#define OPJ_VERSION_BUILD 0</td><td class="lineno"></td></tr>
+
+ <tr><td></td><td class="left"></td><td> </td><td class="right"></td><td></td></tr>
+ <tr id="end" bgcolor="gray"><th colspan="5" align="center"> End of changes. 1 change blocks. </th></tr>
+ <tr class="stats"><td></td><th><i>1 lines changed or deleted</i></th><th><i> </i></th><th><i>1 lines changed or added</i></th><td></td></tr>
+ <tr><td colspan="5" align="center" class="small"></td></tr>
+ </table>
<br/><div style='width:100%;' align='left' class='small'>This html diff was produced by rfcdiff 1.41.The latest version is available from <a href='http://tools.ietf.org/tools/rfcdiff/'>http://tools.ietf.org/tools/rfcdiff/</a></div>
</td></tr></table>
</body>
{
- "Total": 1
+ "Total": 2
}
\ No newline at end of file
+++ /dev/null
-/*
-* The copyright in this software is being made available under the 2-clauses
-* BSD License, included below. This software may be subject to other third
-* party and contributor rights, including patent rights, and no such rights
-* are granted under this license.
-*
-* Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
-* Copyright (c) 2002-2014, Professor Benoit Macq
-* Copyright (c) 2001-2003, David Janssens
-* Copyright (c) 2002-2003, Yannick Verschueren
-* Copyright (c) 2003-2007, Francois-Olivier Devaux
-* Copyright (c) 2003-2014, Antonin Descampe
-* Copyright (c) 2005, Herve Drolon, FreeImage Team
-* Copyright (c) 2006-2007, Parvatha Elangovan
-* Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>
-* Copyright (c) 2010-2011, Kaori Hagihara
-* Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France
-* Copyright (c) 2012, CS Systemes d'Information, France
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-* 1. Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* 2. Redistributions in binary form must reproduce the above copyright
-* notice, this list of conditions and the following disclaimer in the
-* documentation and/or other materials provided with the distribution.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
-* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*/
-#ifndef OPENJPEG_H
-#define OPENJPEG_H
-
-
-/*
-==========================================================
- Compiler directives
-==========================================================
-*/
-
-/*
-The inline keyword is supported by C99 but not by C90.
-Most compilers implement their own version of this keyword ...
-*/
-#ifndef INLINE
-#if defined(_MSC_VER)
-#define INLINE __forceinline
-#elif defined(__GNUC__)
-#define INLINE __inline__
-#elif defined(__MWERKS__)
-#define INLINE inline
-#else
-/* add other compilers here ... */
-#define INLINE
-#endif /* defined(<Compiler>) */
-#endif /* INLINE */
-
-/* deprecated attribute */
-#ifdef __GNUC__
-#define OPJ_DEPRECATED(func) func __attribute__ ((deprecated))
-#elif defined(_MSC_VER)
-#define OPJ_DEPRECATED(func) __declspec(deprecated) func
-#else
-#pragma message("WARNING: You need to implement DEPRECATED for this compiler")
-#define OPJ_DEPRECATED(func) func
-#endif
-
-#if defined(OPJ_STATIC) || !defined(_WIN32)
-/* http://gcc.gnu.org/wiki/Visibility */
-# if !defined(_WIN32) && __GNUC__ >= 4
-# if defined(OPJ_STATIC) /* static library uses "hidden" */
-# define OPJ_API __attribute__ ((visibility ("hidden")))
-# else
-# define OPJ_API __attribute__ ((visibility ("default")))
-# endif
-# define OPJ_LOCAL __attribute__ ((visibility ("hidden")))
-# else
-# define OPJ_API
-# define OPJ_LOCAL
-# endif
-# define OPJ_CALLCONV
-#else
-# define OPJ_CALLCONV __stdcall
-/*
-The following ifdef block is the standard way of creating macros which make exporting
-from a DLL simpler. All files within this DLL are compiled with the OPJ_EXPORTS
-symbol defined on the command line. this symbol should not be defined on any project
-that uses this DLL. This way any other project whose source files include this file see
-OPJ_API functions as being imported from a DLL, whereas this DLL sees symbols
-defined with this macro as being exported.
-*/
-# if defined(OPJ_EXPORTS) || defined(DLL_EXPORT)
-# define OPJ_API __declspec(dllexport)
-# else
-# define OPJ_API __declspec(dllimport)
-# endif /* OPJ_EXPORTS */
-#endif /* !OPJ_STATIC || !_WIN32 */
-
-typedef int OPJ_BOOL;
-#define OPJ_TRUE 1
-#define OPJ_FALSE 0
-
-typedef char OPJ_CHAR;
-typedef float OPJ_FLOAT32;
-typedef double OPJ_FLOAT64;
-typedef unsigned char OPJ_BYTE;
-
-#include "opj_stdint.h"
-
-typedef int8_t OPJ_INT8;
-typedef uint8_t OPJ_UINT8;
-typedef int16_t OPJ_INT16;
-typedef uint16_t OPJ_UINT16;
-typedef int32_t OPJ_INT32;
-typedef uint32_t OPJ_UINT32;
-typedef int64_t OPJ_INT64;
-typedef uint64_t OPJ_UINT64;
-
-typedef int64_t OPJ_OFF_T; /* 64-bit file offset type */
-
-#include <stdio.h>
-typedef size_t OPJ_SIZE_T;
-
-/* Avoid compile-time warning because parameter is not used */
-#define OPJ_ARG_NOT_USED(x) (void)(x)
-
-/*
-==========================================================
- Useful constant definitions
-==========================================================
-*/
-
-#define OPJ_PATH_LEN 4096 /**< Maximum allowed size for filenames */
-
-#define OPJ_J2K_MAXRLVLS 33 /**< Number of maximum resolution level authorized */
-#define OPJ_J2K_MAXBANDS (3*OPJ_J2K_MAXRLVLS-2) /**< Number of maximum sub-band linked to number of resolution level */
-
-#define OPJ_J2K_DEFAULT_NB_SEGS 10
-#define OPJ_J2K_STREAM_CHUNK_SIZE 0x100000 /** 1 mega by default */
-#define OPJ_J2K_DEFAULT_HEADER_SIZE 1000
-#define OPJ_J2K_MCC_DEFAULT_NB_RECORDS 10
-#define OPJ_J2K_MCT_DEFAULT_NB_RECORDS 10
-
-/* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
-#define JPWL_MAX_NO_TILESPECS 16 /**< Maximum number of tile parts expected by JPWL: increase at your will */
-#define JPWL_MAX_NO_PACKSPECS 16 /**< Maximum number of packet parts expected by JPWL: increase at your will */
-#define JPWL_MAX_NO_MARKERS 512 /**< Maximum number of JPWL markers: increase at your will */
-#define JPWL_PRIVATEINDEX_NAME "jpwl_index_privatefilename" /**< index file name used when JPWL is on */
-#define JPWL_EXPECTED_COMPONENTS 3 /**< Expect this number of components, so you'll find better the first EPB */
-#define JPWL_MAXIMUM_TILES 8192 /**< Expect this maximum number of tiles, to avoid some crashes */
-#define JPWL_MAXIMUM_HAMMING 2 /**< Expect this maximum number of bit errors in marker id's */
-#define JPWL_MAXIMUM_EPB_ROOM 65450 /**< Expect this maximum number of bytes for composition of EPBs */
-/* <<UniPG */
-
-/**
- * EXPERIMENTAL FOR THE MOMENT
- * Supported options about file information used only in j2k_dump
-*/
-#define OPJ_IMG_INFO 1 /**< Basic image information provided to the user */
-#define OPJ_J2K_MH_INFO 2 /**< Codestream information based only on the main header */
-#define OPJ_J2K_TH_INFO 4 /**< Tile information based on the current tile header */
-#define OPJ_J2K_TCH_INFO 8 /**< Tile/Component information of all tiles */
-#define OPJ_J2K_MH_IND 16 /**< Codestream index based only on the main header */
-#define OPJ_J2K_TH_IND 32 /**< Tile index based on the current tile */
-/*FIXME #define OPJ_J2K_CSTR_IND 48*/ /**< */
-#define OPJ_JP2_INFO 128 /**< JP2 file information */
-#define OPJ_JP2_IND 256 /**< JP2 file index */
-
-/**
- * JPEG 2000 Profiles, see Table A.10 from 15444-1 (updated in various AMD)
- * These values help choosing the RSIZ value for the J2K codestream.
- * The RSIZ value triggers various encoding options, as detailed in Table A.10.
- * If OPJ_PROFILE_PART2 is chosen, it has to be combined with one or more extensions
- * described hereunder.
- * Example: rsiz = OPJ_PROFILE_PART2 | OPJ_EXTENSION_MCT;
- * For broadcast profiles, the OPJ_PROFILE value has to be combined with the targeted
- * mainlevel (3-0 LSB, value between 0 and 11):
- * Example: rsiz = OPJ_PROFILE_BC_MULTI | 0x0005; (here mainlevel 5)
- * For IMF profiles, the OPJ_PROFILE value has to be combined with the targeted mainlevel
- * (3-0 LSB, value between 0 and 11) and sublevel (7-4 LSB, value between 0 and 9):
- * Example: rsiz = OPJ_PROFILE_IMF_2K | 0x0040 | 0x0005; (here main 5 and sublevel 4)
- * */
-#define OPJ_PROFILE_NONE 0x0000 /** no profile, conform to 15444-1 */
-#define OPJ_PROFILE_0 0x0001 /** Profile 0 as described in 15444-1,Table A.45 */
-#define OPJ_PROFILE_1 0x0002 /** Profile 1 as described in 15444-1,Table A.45 */
-#define OPJ_PROFILE_PART2 0x8000 /** At least 1 extension defined in 15444-2 (Part-2) */
-#define OPJ_PROFILE_CINEMA_2K 0x0003 /** 2K cinema profile defined in 15444-1 AMD1 */
-#define OPJ_PROFILE_CINEMA_4K 0x0004 /** 4K cinema profile defined in 15444-1 AMD1 */
-#define OPJ_PROFILE_CINEMA_S2K 0x0005 /** Scalable 2K cinema profile defined in 15444-1 AMD2 */
-#define OPJ_PROFILE_CINEMA_S4K 0x0006 /** Scalable 4K cinema profile defined in 15444-1 AMD2 */
-#define OPJ_PROFILE_CINEMA_LTS 0x0007 /** Long term storage cinema profile defined in 15444-1 AMD2 */
-#define OPJ_PROFILE_BC_SINGLE 0x0100 /** Single Tile Broadcast profile defined in 15444-1 AMD3 */
-#define OPJ_PROFILE_BC_MULTI 0x0200 /** Multi Tile Broadcast profile defined in 15444-1 AMD3 */
-#define OPJ_PROFILE_BC_MULTI_R 0x0300 /** Multi Tile Reversible Broadcast profile defined in 15444-1 AMD3 */
-#define OPJ_PROFILE_IMF_2K 0x0400 /** 2K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
-#define OPJ_PROFILE_IMF_4K 0x0500 /** 4K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
-#define OPJ_PROFILE_IMF_8K 0x0600 /** 8K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
-#define OPJ_PROFILE_IMF_2K_R 0x0700 /** 2K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
-#define OPJ_PROFILE_IMF_4K_R 0x0800 /** 4K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
-#define OPJ_PROFILE_IMF_8K_R 0x0900 /** 8K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
-
-/**
- * JPEG 2000 Part-2 extensions
- * */
-#define OPJ_EXTENSION_NONE 0x0000 /** No Part-2 extension */
-#define OPJ_EXTENSION_MCT 0x0100 /** Custom MCT support */
-
-/**
- * JPEG 2000 profile macros
- * */
-#define OPJ_IS_CINEMA(v) (((v) >= OPJ_PROFILE_CINEMA_2K)&&((v) <= OPJ_PROFILE_CINEMA_S4K))
-#define OPJ_IS_STORAGE(v) ((v) == OPJ_PROFILE_CINEMA_LTS)
-#define OPJ_IS_BROADCAST(v) (((v) >= OPJ_PROFILE_BC_SINGLE)&&((v) <= ((OPJ_PROFILE_BC_MULTI_R) | (0x000b))))
-#define OPJ_IS_IMF(v) (((v) >= OPJ_PROFILE_IMF_2K)&&((v) <= ((OPJ_PROFILE_IMF_8K_R) | (0x009b))))
-#define OPJ_IS_PART2(v) ((v) & OPJ_PROFILE_PART2)
-
-#define OPJ_GET_IMF_PROFILE(v) ((v) & 0xff00) /** Extract IMF profile without mainlevel/sublevel */
-#define OPJ_GET_IMF_MAINLEVEL(v) ((v) & 0xf) /** Extract IMF main level */
-#define OPJ_GET_IMF_SUBLEVEL(v) (((v) >> 4) & 0xf) /** Extract IMF sub level */
-
-#define OPJ_IMF_MAINLEVEL_MAX 11 /** Maximum main level */
-
-/** Max. Components Sampling Rate (MSamples/sec) per IMF main level */
-#define OPJ_IMF_MAINLEVEL_1_MSAMPLESEC 65 /** MSamples/sec for IMF main level 1 */
-#define OPJ_IMF_MAINLEVEL_2_MSAMPLESEC 130 /** MSamples/sec for IMF main level 2 */
-#define OPJ_IMF_MAINLEVEL_3_MSAMPLESEC 195 /** MSamples/sec for IMF main level 3 */
-#define OPJ_IMF_MAINLEVEL_4_MSAMPLESEC 260 /** MSamples/sec for IMF main level 4 */
-#define OPJ_IMF_MAINLEVEL_5_MSAMPLESEC 520 /** MSamples/sec for IMF main level 5 */
-#define OPJ_IMF_MAINLEVEL_6_MSAMPLESEC 1200 /** MSamples/sec for IMF main level 6 */
-#define OPJ_IMF_MAINLEVEL_7_MSAMPLESEC 2400 /** MSamples/sec for IMF main level 7 */
-#define OPJ_IMF_MAINLEVEL_8_MSAMPLESEC 4800 /** MSamples/sec for IMF main level 8 */
-#define OPJ_IMF_MAINLEVEL_9_MSAMPLESEC 9600 /** MSamples/sec for IMF main level 9 */
-#define OPJ_IMF_MAINLEVEL_10_MSAMPLESEC 19200 /** MSamples/sec for IMF main level 10 */
-#define OPJ_IMF_MAINLEVEL_11_MSAMPLESEC 38400 /** MSamples/sec for IMF main level 11 */
-
-/** Max. compressed Bit Rate (Mbits/s) per IMF sub level */
-#define OPJ_IMF_SUBLEVEL_1_MBITSSEC 200 /** Mbits/s for IMF sub level 1 */
-#define OPJ_IMF_SUBLEVEL_2_MBITSSEC 400 /** Mbits/s for IMF sub level 2 */
-#define OPJ_IMF_SUBLEVEL_3_MBITSSEC 800 /** Mbits/s for IMF sub level 3 */
-#define OPJ_IMF_SUBLEVEL_4_MBITSSEC 1600 /** Mbits/s for IMF sub level 4 */
-#define OPJ_IMF_SUBLEVEL_5_MBITSSEC 3200 /** Mbits/s for IMF sub level 5 */
-#define OPJ_IMF_SUBLEVEL_6_MBITSSEC 6400 /** Mbits/s for IMF sub level 6 */
-#define OPJ_IMF_SUBLEVEL_7_MBITSSEC 12800 /** Mbits/s for IMF sub level 7 */
-#define OPJ_IMF_SUBLEVEL_8_MBITSSEC 25600 /** Mbits/s for IMF sub level 8 */
-#define OPJ_IMF_SUBLEVEL_9_MBITSSEC 51200 /** Mbits/s for IMF sub level 9 */
-
-/**
- * JPEG 2000 codestream and component size limits in cinema profiles
- * */
-#define OPJ_CINEMA_24_CS 1302083 /** Maximum codestream length for 24fps */
-#define OPJ_CINEMA_48_CS 651041 /** Maximum codestream length for 48fps */
-#define OPJ_CINEMA_24_COMP 1041666 /** Maximum size per color component for 2K & 4K @ 24fps */
-#define OPJ_CINEMA_48_COMP 520833 /** Maximum size per color component for 2K @ 48fps */
-
-/*
-==========================================================
- enum definitions
-==========================================================
-*/
-
-/**
- * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
- * Rsiz Capabilities
- * */
-typedef enum RSIZ_CAPABILITIES {
- OPJ_STD_RSIZ = 0, /** Standard JPEG2000 profile*/
- OPJ_CINEMA2K = 3, /** Profile name for a 2K image*/
- OPJ_CINEMA4K = 4, /** Profile name for a 4K image*/
- OPJ_MCT = 0x8100
-} OPJ_RSIZ_CAPABILITIES;
-
-/**
- * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
- * Digital cinema operation mode
- * */
-typedef enum CINEMA_MODE {
- OPJ_OFF = 0, /** Not Digital Cinema*/
- OPJ_CINEMA2K_24 = 1, /** 2K Digital Cinema at 24 fps*/
- OPJ_CINEMA2K_48 = 2, /** 2K Digital Cinema at 48 fps*/
- OPJ_CINEMA4K_24 = 3 /** 4K Digital Cinema at 24 fps*/
-} OPJ_CINEMA_MODE;
-
-/**
- * Progression order
- * */
-typedef enum PROG_ORDER {
- OPJ_PROG_UNKNOWN = -1, /**< place-holder */
- OPJ_LRCP = 0, /**< layer-resolution-component-precinct order */
- OPJ_RLCP = 1, /**< resolution-layer-component-precinct order */
- OPJ_RPCL = 2, /**< resolution-precinct-component-layer order */
- OPJ_PCRL = 3, /**< precinct-component-resolution-layer order */
- OPJ_CPRL = 4 /**< component-precinct-resolution-layer order */
-} OPJ_PROG_ORDER;
-
-/**
- * Supported image color spaces
-*/
-typedef enum COLOR_SPACE {
- OPJ_CLRSPC_UNKNOWN = -1, /**< not supported by the library */
- OPJ_CLRSPC_UNSPECIFIED = 0, /**< not specified in the codestream */
- OPJ_CLRSPC_SRGB = 1, /**< sRGB */
- OPJ_CLRSPC_GRAY = 2, /**< grayscale */
- OPJ_CLRSPC_SYCC = 3, /**< YUV */
- OPJ_CLRSPC_EYCC = 4, /**< e-YCC */
- OPJ_CLRSPC_CMYK = 5 /**< CMYK */
-} OPJ_COLOR_SPACE;
-
-/**
- * Supported codec
-*/
-typedef enum CODEC_FORMAT {
- OPJ_CODEC_UNKNOWN = -1, /**< place-holder */
- OPJ_CODEC_J2K = 0, /**< JPEG-2000 codestream : read/write */
- OPJ_CODEC_JPT = 1, /**< JPT-stream (JPEG 2000, JPIP) : read only */
- OPJ_CODEC_JP2 = 2, /**< JP2 file format : read/write */
- OPJ_CODEC_JPP = 3, /**< JPP-stream (JPEG 2000, JPIP) : to be coded */
- OPJ_CODEC_JPX = 4 /**< JPX file format (JPEG 2000 Part-2) : to be coded */
-} OPJ_CODEC_FORMAT;
-
-
-/*
-==========================================================
- event manager typedef definitions
-==========================================================
-*/
-
-/**
- * Callback function prototype for events
- * @param msg Event message
- * @param client_data Client object where will be return the event message
- * */
-typedef void (*opj_msg_callback)(const char *msg, void *client_data);
-
-/*
-==========================================================
- codec typedef definitions
-==========================================================
-*/
-
-#ifndef OPJ_UINT32_SEMANTICALLY_BUT_INT32
-#define OPJ_UINT32_SEMANTICALLY_BUT_INT32 OPJ_INT32
-#endif
-
-/**
- * Progression order changes
- *
- */
-typedef struct opj_poc {
- /** Resolution num start, Component num start, given by POC */
- OPJ_UINT32 resno0, compno0;
- /** Layer num end,Resolution num end, Component num end, given by POC */
- OPJ_UINT32 layno1, resno1, compno1;
- /** Layer num start,Precinct num start, Precinct num end */
- OPJ_UINT32 layno0, precno0, precno1;
- /** Progression order enum*/
- OPJ_PROG_ORDER prg1, prg;
- /** Progression order string*/
- OPJ_CHAR progorder[5];
- /** Tile number (starting at 1) */
- OPJ_UINT32 tile;
- /** Start and end values for Tile width and height*/
- OPJ_UINT32_SEMANTICALLY_BUT_INT32 tx0, tx1, ty0, ty1;
- /** Start value, initialised in pi_initialise_encode*/
- OPJ_UINT32 layS, resS, compS, prcS;
- /** End value, initialised in pi_initialise_encode */
- OPJ_UINT32 layE, resE, compE, prcE;
- /** Start and end values of Tile width and height, initialised in pi_initialise_encode*/
- OPJ_UINT32 txS, txE, tyS, tyE, dx, dy;
- /** Temporary values for Tile parts, initialised in pi_create_encode */
- OPJ_UINT32 lay_t, res_t, comp_t, prc_t, tx0_t, ty0_t;
-} opj_poc_t;
-
-/**
- * Compression parameters
- * */
-typedef struct opj_cparameters {
- /** size of tile: tile_size_on = false (not in argument) or = true (in argument) */
- OPJ_BOOL tile_size_on;
- /** XTOsiz */
- int cp_tx0;
- /** YTOsiz */
- int cp_ty0;
- /** XTsiz */
- int cp_tdx;
- /** YTsiz */
- int cp_tdy;
- /** allocation by rate/distortion */
- int cp_disto_alloc;
- /** allocation by fixed layer */
- int cp_fixed_alloc;
- /** add fixed_quality */
- int cp_fixed_quality;
- /** fixed layer */
- int *cp_matrice;
- /** comment for coding */
- char *cp_comment;
- /** csty : coding style */
- int csty;
- /** progression order (default OPJ_LRCP) */
- OPJ_PROG_ORDER prog_order;
- /** progression order changes */
- opj_poc_t POC[32];
- /** number of progression order changes (POC), default to 0 */
- OPJ_UINT32 numpocs;
- /** number of layers */
- int tcp_numlayers;
- /** rates of layers - might be subsequently limited by the max_cs_size field.
- * Should be decreasing. 1 can be
- * used as last value to indicate the last layer is lossless. */
- float tcp_rates[100];
- /** different psnr for successive layers. Should be increasing. 0 can be
- * used as last value to indicate the last layer is lossless. */
- float tcp_distoratio[100];
- /** number of resolutions */
- int numresolution;
- /** initial code block width, default to 64 */
- int cblockw_init;
- /** initial code block height, default to 64 */
- int cblockh_init;
- /** mode switch (cblk_style) */
- int mode;
- /** 1 : use the irreversible DWT 9-7, 0 : use lossless compression (default) */
- int irreversible;
- /** region of interest: affected component in [0..3], -1 means no ROI */
- int roi_compno;
- /** region of interest: upshift value */
- int roi_shift;
- /* number of precinct size specifications */
- int res_spec;
- /** initial precinct width */
- int prcw_init[OPJ_J2K_MAXRLVLS];
- /** initial precinct height */
- int prch_init[OPJ_J2K_MAXRLVLS];
-
- /**@name command line encoder parameters (not used inside the library) */
- /*@{*/
- /** input file name */
- char infile[OPJ_PATH_LEN];
- /** output file name */
- char outfile[OPJ_PATH_LEN];
- /** DEPRECATED. Index generation is now handeld with the opj_encode_with_info() function. Set to NULL */
- int index_on;
- /** DEPRECATED. Index generation is now handeld with the opj_encode_with_info() function. Set to NULL */
- char index[OPJ_PATH_LEN];
- /** subimage encoding: origin image offset in x direction */
- int image_offset_x0;
- /** subimage encoding: origin image offset in y direction */
- int image_offset_y0;
- /** subsampling value for dx */
- int subsampling_dx;
- /** subsampling value for dy */
- int subsampling_dy;
- /** input file format 0: PGX, 1: PxM, 2: BMP 3:TIF*/
- int decod_format;
- /** output file format 0: J2K, 1: JP2, 2: JPT */
- int cod_format;
- /*@}*/
-
- /* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
- /**@name JPWL encoding parameters */
- /*@{*/
- /** enables writing of EPC in MH, thus activating JPWL */
- OPJ_BOOL jpwl_epc_on;
- /** error protection method for MH (0,1,16,32,37-128) */
- int jpwl_hprot_MH;
- /** tile number of header protection specification (>=0) */
- int jpwl_hprot_TPH_tileno[JPWL_MAX_NO_TILESPECS];
- /** error protection methods for TPHs (0,1,16,32,37-128) */
- int jpwl_hprot_TPH[JPWL_MAX_NO_TILESPECS];
- /** tile number of packet protection specification (>=0) */
- int jpwl_pprot_tileno[JPWL_MAX_NO_PACKSPECS];
- /** packet number of packet protection specification (>=0) */
- int jpwl_pprot_packno[JPWL_MAX_NO_PACKSPECS];
- /** error protection methods for packets (0,1,16,32,37-128) */
- int jpwl_pprot[JPWL_MAX_NO_PACKSPECS];
- /** enables writing of ESD, (0=no/1/2 bytes) */
- int jpwl_sens_size;
- /** sensitivity addressing size (0=auto/2/4 bytes) */
- int jpwl_sens_addr;
- /** sensitivity range (0-3) */
- int jpwl_sens_range;
- /** sensitivity method for MH (-1=no,0-7) */
- int jpwl_sens_MH;
- /** tile number of sensitivity specification (>=0) */
- int jpwl_sens_TPH_tileno[JPWL_MAX_NO_TILESPECS];
- /** sensitivity methods for TPHs (-1=no,0-7) */
- int jpwl_sens_TPH[JPWL_MAX_NO_TILESPECS];
- /*@}*/
- /* <<UniPG */
-
- /**
- * DEPRECATED: use RSIZ, OPJ_PROFILE_* and MAX_COMP_SIZE instead
- * Digital Cinema compliance 0-not compliant, 1-compliant
- * */
- OPJ_CINEMA_MODE cp_cinema;
- /**
- * Maximum size (in bytes) for each component.
- * If == 0, component size limitation is not considered
- * */
- int max_comp_size;
- /**
- * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
- * Profile name
- * */
- OPJ_RSIZ_CAPABILITIES cp_rsiz;
- /** Tile part generation*/
- char tp_on;
- /** Flag for Tile part generation*/
- char tp_flag;
- /** MCT (multiple component transform) */
- char tcp_mct;
- /** Enable JPIP indexing*/
- OPJ_BOOL jpip_on;
- /** Naive implementation of MCT restricted to a single reversible array based
- encoding without offset concerning all the components. */
- void * mct_data;
- /**
- * Maximum size (in bytes) for the whole codestream.
- * If == 0, codestream size limitation is not considered
- * If it does not comply with tcp_rates, max_cs_size prevails
- * and a warning is issued.
- * */
- int max_cs_size;
- /** RSIZ value
- To be used to combine OPJ_PROFILE_*, OPJ_EXTENSION_* and (sub)levels values. */
- OPJ_UINT16 rsiz;
-} opj_cparameters_t;
-
-#define OPJ_DPARAMETERS_IGNORE_PCLR_CMAP_CDEF_FLAG 0x0001
-#define OPJ_DPARAMETERS_DUMP_FLAG 0x0002
-
-/**
- * Decompression parameters
- * */
-typedef struct opj_dparameters {
- /**
- Set the number of highest resolution levels to be discarded.
- The image resolution is effectively divided by 2 to the power of the number of discarded levels.
- The reduce factor is limited by the smallest total number of decomposition levels among tiles.
- if != 0, then original dimension divided by 2^(reduce);
- if == 0 or not used, image is decoded to the full resolution
- */
- OPJ_UINT32 cp_reduce;
- /**
- Set the maximum number of quality layers to decode.
- If there are less quality layers than the specified number, all the quality layers are decoded.
- if != 0, then only the first "layer" layers are decoded;
- if == 0 or not used, all the quality layers are decoded
- */
- OPJ_UINT32 cp_layer;
-
- /**@name command line decoder parameters (not used inside the library) */
- /*@{*/
- /** input file name */
- char infile[OPJ_PATH_LEN];
- /** output file name */
- char outfile[OPJ_PATH_LEN];
- /** input file format 0: J2K, 1: JP2, 2: JPT */
- int decod_format;
- /** output file format 0: PGX, 1: PxM, 2: BMP */
- int cod_format;
-
- /** Decoding area left boundary */
- OPJ_UINT32 DA_x0;
- /** Decoding area right boundary */
- OPJ_UINT32 DA_x1;
- /** Decoding area up boundary */
- OPJ_UINT32 DA_y0;
- /** Decoding area bottom boundary */
- OPJ_UINT32 DA_y1;
- /** Verbose mode */
- OPJ_BOOL m_verbose;
-
- /** tile number of the decoded tile */
- OPJ_UINT32 tile_index;
- /** Nb of tile to decode */
- OPJ_UINT32 nb_tile_to_decode;
-
- /*@}*/
-
- /* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
- /**@name JPWL decoding parameters */
- /*@{*/
- /** activates the JPWL correction capabilities */
- OPJ_BOOL jpwl_correct;
- /** expected number of components */
- int jpwl_exp_comps;
- /** maximum number of tiles */
- int jpwl_max_tiles;
- /*@}*/
- /* <<UniPG */
-
- unsigned int flags;
-
-} opj_dparameters_t;
-
-
-/**
- * JPEG2000 codec V2.
- * */
-typedef void * opj_codec_t;
-
-/*
-==========================================================
- I/O stream typedef definitions
-==========================================================
-*/
-
-/**
- * Stream open flags.
- * */
-/** The stream was opened for reading. */
-#define OPJ_STREAM_READ OPJ_TRUE
-/** The stream was opened for writing. */
-#define OPJ_STREAM_WRITE OPJ_FALSE
-
-/*
- * Callback function prototype for read function
- */
-typedef OPJ_SIZE_T(* opj_stream_read_fn)(void * p_buffer, OPJ_SIZE_T p_nb_bytes,
- void * p_user_data) ;
-
-/*
- * Callback function prototype for write function
- */
-typedef OPJ_SIZE_T(* opj_stream_write_fn)(void * p_buffer,
- OPJ_SIZE_T p_nb_bytes, void * p_user_data) ;
-
-/*
- * Callback function prototype for skip function
- */
-typedef OPJ_OFF_T(* opj_stream_skip_fn)(OPJ_OFF_T p_nb_bytes,
- void * p_user_data) ;
-
-/*
- * Callback function prototype for seek function
- */
-typedef OPJ_BOOL(* opj_stream_seek_fn)(OPJ_OFF_T p_nb_bytes,
- void * p_user_data) ;
-
-/*
- * Callback function prototype for free user data function
- */
-typedef void (* opj_stream_free_user_data_fn)(void * p_user_data) ;
-
-/*
- * JPEG2000 Stream.
- */
-typedef void * opj_stream_t;
-
-/*
-==========================================================
- image typedef definitions
-==========================================================
-*/
-
-/**
- * Defines a single image component
- * */
-typedef struct opj_image_comp {
- /** XRsiz: horizontal separation of a sample of ith component with respect to the reference grid */
- OPJ_UINT32 dx;
- /** YRsiz: vertical separation of a sample of ith component with respect to the reference grid */
- OPJ_UINT32 dy;
- /** data width */
- OPJ_UINT32 w;
- /** data height */
- OPJ_UINT32 h;
- /** x component offset compared to the whole image */
- OPJ_UINT32 x0;
- /** y component offset compared to the whole image */
- OPJ_UINT32 y0;
- /** precision */
- OPJ_UINT32 prec;
- /** image depth in bits */
- OPJ_UINT32 bpp;
- /** signed (1) / unsigned (0) */
- OPJ_UINT32 sgnd;
- /** number of decoded resolution */
- OPJ_UINT32 resno_decoded;
- /** number of division by 2 of the out image compared to the original size of image */
- OPJ_UINT32 factor;
- /** image component data */
- OPJ_INT32 *data;
- /** alpha channel */
- OPJ_UINT16 alpha;
-} opj_image_comp_t;
-
-/**
- * Defines image data and characteristics
- * */
-typedef struct opj_image {
- /** XOsiz: horizontal offset from the origin of the reference grid to the left side of the image area */
- OPJ_UINT32 x0;
- /** YOsiz: vertical offset from the origin of the reference grid to the top side of the image area */
- OPJ_UINT32 y0;
- /** Xsiz: width of the reference grid */
- OPJ_UINT32 x1;
- /** Ysiz: height of the reference grid */
- OPJ_UINT32 y1;
- /** number of components in the image */
- OPJ_UINT32 numcomps;
- /** color space: sRGB, Greyscale or YUV */
- OPJ_COLOR_SPACE color_space;
- /** image components */
- opj_image_comp_t *comps;
- /** 'restricted' ICC profile */
- OPJ_BYTE *icc_profile_buf;
- /** size of ICC profile */
- OPJ_UINT32 icc_profile_len;
-} opj_image_t;
-
-
-/**
- * Component parameters structure used by the opj_image_create function
- * */
-typedef struct opj_image_comptparm {
- /** XRsiz: horizontal separation of a sample of ith component with respect to the reference grid */
- OPJ_UINT32 dx;
- /** YRsiz: vertical separation of a sample of ith component with respect to the reference grid */
- OPJ_UINT32 dy;
- /** data width */
- OPJ_UINT32 w;
- /** data height */
- OPJ_UINT32 h;
- /** x component offset compared to the whole image */
- OPJ_UINT32 x0;
- /** y component offset compared to the whole image */
- OPJ_UINT32 y0;
- /** precision */
- OPJ_UINT32 prec;
- /** image depth in bits */
- OPJ_UINT32 bpp;
- /** signed (1) / unsigned (0) */
- OPJ_UINT32 sgnd;
-} opj_image_cmptparm_t;
-
-
-/*
-==========================================================
- Information on the JPEG 2000 codestream
-==========================================================
-*/
-/* QUITE EXPERIMENTAL FOR THE MOMENT */
-
-/**
- * Index structure : Information concerning a packet inside tile
- * */
-typedef struct opj_packet_info {
- /** packet start position (including SOP marker if it exists) */
- OPJ_OFF_T start_pos;
- /** end of packet header position (including EPH marker if it exists)*/
- OPJ_OFF_T end_ph_pos;
- /** packet end position */
- OPJ_OFF_T end_pos;
- /** packet distorsion */
- double disto;
-} opj_packet_info_t;
-
-
-/* UniPG>> */
-/**
- * Marker structure
- * */
-typedef struct opj_marker_info {
- /** marker type */
- unsigned short int type;
- /** position in codestream */
- OPJ_OFF_T pos;
- /** length, marker val included */
- int len;
-} opj_marker_info_t;
-/* <<UniPG */
-
-/**
- * Index structure : Information concerning tile-parts
-*/
-typedef struct opj_tp_info {
- /** start position of tile part */
- int tp_start_pos;
- /** end position of tile part header */
- int tp_end_header;
- /** end position of tile part */
- int tp_end_pos;
- /** start packet of tile part */
- int tp_start_pack;
- /** number of packets of tile part */
- int tp_numpacks;
-} opj_tp_info_t;
-
-/**
- * Index structure : information regarding tiles
-*/
-typedef struct opj_tile_info {
- /** value of thresh for each layer by tile cfr. Marcela */
- double *thresh;
- /** number of tile */
- int tileno;
- /** start position */
- int start_pos;
- /** end position of the header */
- int end_header;
- /** end position */
- int end_pos;
- /** precinct number for each resolution level (width) */
- int pw[33];
- /** precinct number for each resolution level (height) */
- int ph[33];
- /** precinct size (in power of 2), in X for each resolution level */
- int pdx[33];
- /** precinct size (in power of 2), in Y for each resolution level */
- int pdy[33];
- /** information concerning packets inside tile */
- opj_packet_info_t *packet;
- /** add fixed_quality */
- int numpix;
- /** add fixed_quality */
- double distotile;
- /** number of markers */
- int marknum;
- /** list of markers */
- opj_marker_info_t *marker;
- /** actual size of markers array */
- int maxmarknum;
- /** number of tile parts */
- int num_tps;
- /** information concerning tile parts */
- opj_tp_info_t *tp;
-} opj_tile_info_t;
-
-/**
- * Index structure of the codestream
-*/
-typedef struct opj_codestream_info {
- /** maximum distortion reduction on the whole image (add for Marcela) */
- double D_max;
- /** packet number */
- int packno;
- /** writing the packet in the index with t2_encode_packets */
- int index_write;
- /** image width */
- int image_w;
- /** image height */
- int image_h;
- /** progression order */
- OPJ_PROG_ORDER prog;
- /** tile size in x */
- int tile_x;
- /** tile size in y */
- int tile_y;
- /** */
- int tile_Ox;
- /** */
- int tile_Oy;
- /** number of tiles in X */
- int tw;
- /** number of tiles in Y */
- int th;
- /** component numbers */
- int numcomps;
- /** number of layer */
- int numlayers;
- /** number of decomposition for each component */
- int *numdecompos;
- /* UniPG>> */
- /** number of markers */
- int marknum;
- /** list of markers */
- opj_marker_info_t *marker;
- /** actual size of markers array */
- int maxmarknum;
- /* <<UniPG */
- /** main header position */
- int main_head_start;
- /** main header position */
- int main_head_end;
- /** codestream's size */
- int codestream_size;
- /** information regarding tiles inside image */
- opj_tile_info_t *tile;
-} opj_codestream_info_t;
-
-/* <----------------------------------------------------------- */
-/* new output management of the codestream information and index */
-
-/**
- * Tile-component coding parameters information
- */
-typedef struct opj_tccp_info {
- /** component index */
- OPJ_UINT32 compno;
- /** coding style */
- OPJ_UINT32 csty;
- /** number of resolutions */
- OPJ_UINT32 numresolutions;
- /** log2 of code-blocks width */
- OPJ_UINT32 cblkw;
- /** log2 of code-blocks height */
- OPJ_UINT32 cblkh;
- /** code-block coding style */
- OPJ_UINT32 cblksty;
- /** discrete wavelet transform identifier: 0 = 9-7 irreversible, 1 = 5-3 reversible */
- OPJ_UINT32 qmfbid;
- /** quantisation style */
- OPJ_UINT32 qntsty;
- /** stepsizes used for quantization */
- OPJ_UINT32 stepsizes_mant[OPJ_J2K_MAXBANDS];
- /** stepsizes used for quantization */
- OPJ_UINT32 stepsizes_expn[OPJ_J2K_MAXBANDS];
- /** number of guard bits */
- OPJ_UINT32 numgbits;
- /** Region Of Interest shift */
- OPJ_INT32 roishift;
- /** precinct width */
- OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS];
- /** precinct height */
- OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS];
-}
-opj_tccp_info_t;
-
-/**
- * Tile coding parameters information
- */
-typedef struct opj_tile_v2_info {
-
- /** number (index) of tile */
- int tileno;
- /** coding style */
- OPJ_UINT32 csty;
- /** progression order */
- OPJ_PROG_ORDER prg;
- /** number of layers */
- OPJ_UINT32 numlayers;
- /** multi-component transform identifier */
- OPJ_UINT32 mct;
-
- /** information concerning tile component parameters*/
- opj_tccp_info_t *tccp_info;
-
-} opj_tile_info_v2_t;
-
-/**
- * Information structure about the codestream (FIXME should be expand and enhance)
- */
-typedef struct opj_codestream_info_v2 {
- /* Tile info */
- /** tile origin in x = XTOsiz */
- OPJ_UINT32 tx0;
- /** tile origin in y = YTOsiz */
- OPJ_UINT32 ty0;
- /** tile size in x = XTsiz */
- OPJ_UINT32 tdx;
- /** tile size in y = YTsiz */
- OPJ_UINT32 tdy;
- /** number of tiles in X */
- OPJ_UINT32 tw;
- /** number of tiles in Y */
- OPJ_UINT32 th;
-
- /** number of components*/
- OPJ_UINT32 nbcomps;
-
- /** Default information regarding tiles inside image */
- opj_tile_info_v2_t m_default_tile_info;
-
- /** information regarding tiles inside image */
- opj_tile_info_v2_t *tile_info; /* FIXME not used for the moment */
-
-} opj_codestream_info_v2_t;
-
-
-/**
- * Index structure about a tile part
- */
-typedef struct opj_tp_index {
- /** start position */
- OPJ_OFF_T start_pos;
- /** end position of the header */
- OPJ_OFF_T end_header;
- /** end position */
- OPJ_OFF_T end_pos;
-
-} opj_tp_index_t;
-
-/**
- * Index structure about a tile
- */
-typedef struct opj_tile_index {
- /** tile index */
- OPJ_UINT32 tileno;
-
- /** number of tile parts */
- OPJ_UINT32 nb_tps;
- /** current nb of tile part (allocated)*/
- OPJ_UINT32 current_nb_tps;
- /** current tile-part index */
- OPJ_UINT32 current_tpsno;
- /** information concerning tile parts */
- opj_tp_index_t *tp_index;
-
- /* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
- /** number of markers */
- OPJ_UINT32 marknum;
- /** list of markers */
- opj_marker_info_t *marker;
- /** actual size of markers array */
- OPJ_UINT32 maxmarknum;
- /* <<UniPG */
-
- /** packet number */
- OPJ_UINT32 nb_packet;
- /** information concerning packets inside tile */
- opj_packet_info_t *packet_index;
-
-} opj_tile_index_t;
-
-/**
- * Index structure of the codestream (FIXME should be expand and enhance)
- */
-typedef struct opj_codestream_index {
- /** main header start position (SOC position) */
- OPJ_OFF_T main_head_start;
- /** main header end position (first SOT position) */
- OPJ_OFF_T main_head_end;
-
- /** codestream's size */
- OPJ_UINT64 codestream_size;
-
- /* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
- /** number of markers */
- OPJ_UINT32 marknum;
- /** list of markers */
- opj_marker_info_t *marker;
- /** actual size of markers array */
- OPJ_UINT32 maxmarknum;
- /* <<UniPG */
-
- /** */
- OPJ_UINT32 nb_of_tiles;
- /** */
- opj_tile_index_t *tile_index; /* FIXME not used for the moment */
-
-} opj_codestream_index_t;
-/* -----------------------------------------------------------> */
-
-/*
-==========================================================
- Metadata from the JP2file
-==========================================================
-*/
-
-/**
- * Info structure of the JP2 file
- * EXPERIMENTAL FOR THE MOMENT
- */
-typedef struct opj_jp2_metadata {
- /** */
- OPJ_INT32 not_used;
-
-} opj_jp2_metadata_t;
-
-/**
- * Index structure of the JP2 file
- * EXPERIMENTAL FOR THE MOMENT
- */
-typedef struct opj_jp2_index {
- /** */
- OPJ_INT32 not_used;
-
-} opj_jp2_index_t;
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/*
-==========================================================
- openjpeg version
-==========================================================
-*/
-
-/* Get the version of the openjpeg library*/
-OPJ_API const char * OPJ_CALLCONV opj_version(void);
-
-/*
-==========================================================
- image functions definitions
-==========================================================
-*/
-
-/**
- * Create an image
- *
- * @param numcmpts number of components
- * @param cmptparms components parameters
- * @param clrspc image color space
- * @return returns a new image structure if successful, returns NULL otherwise
- * */
-OPJ_API opj_image_t* OPJ_CALLCONV opj_image_create(OPJ_UINT32 numcmpts,
- opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
-
-/**
- * Deallocate any resources associated with an image
- *
- * @param image image to be destroyed
- */
-OPJ_API void OPJ_CALLCONV opj_image_destroy(opj_image_t *image);
-
-/**
- * Creates an image without allocating memory for the image (used in the new version of the library).
- *
- * @param numcmpts the number of components
- * @param cmptparms the components parameters
- * @param clrspc the image color space
- *
- * @return a new image structure if successful, NULL otherwise.
-*/
-OPJ_API opj_image_t* OPJ_CALLCONV opj_image_tile_create(OPJ_UINT32 numcmpts,
- opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
-
-/**
- * Allocator for opj_image_t->comps[].data
- * To be paired with opj_image_data_free.
- *
- * @param size number of bytes to allocate
- *
- * @return a new pointer if successful, NULL otherwise.
- * @since 2.2.0
-*/
-OPJ_API void* OPJ_CALLCONV opj_image_data_alloc(OPJ_SIZE_T size);
-
-/**
- * Destructor for opj_image_t->comps[].data
- * To be paired with opj_image_data_alloc.
- *
- * @param ptr Pointer to free
- *
- * @since 2.2.0
-*/
-OPJ_API void OPJ_CALLCONV opj_image_data_free(void* ptr);
-
-/*
-==========================================================
- stream functions definitions
-==========================================================
-*/
-
-/**
- * Creates an abstract stream. This function does nothing except allocating memory and initializing the abstract stream.
- *
- * @param p_is_input if set to true then the stream will be an input stream, an output stream else.
- *
- * @return a stream object.
-*/
-OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_default_create(
- OPJ_BOOL p_is_input);
-
-/**
- * Creates an abstract stream. This function does nothing except allocating memory and initializing the abstract stream.
- *
- * @param p_buffer_size FIXME DOC
- * @param p_is_input if set to true then the stream will be an input stream, an output stream else.
- *
- * @return a stream object.
-*/
-OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create(OPJ_SIZE_T p_buffer_size,
- OPJ_BOOL p_is_input);
-
-/**
- * Destroys a stream created by opj_create_stream. This function does NOT close the abstract stream. If needed the user must
- * close its own implementation of the stream.
- *
- * @param p_stream the stream to destroy.
- */
-OPJ_API void OPJ_CALLCONV opj_stream_destroy(opj_stream_t* p_stream);
-
-/**
- * Sets the given function to be used as a read function.
- * @param p_stream the stream to modify
- * @param p_function the function to use a read function.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_read_function(opj_stream_t* p_stream,
- opj_stream_read_fn p_function);
-
-/**
- * Sets the given function to be used as a write function.
- * @param p_stream the stream to modify
- * @param p_function the function to use a write function.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_write_function(opj_stream_t* p_stream,
- opj_stream_write_fn p_function);
-
-/**
- * Sets the given function to be used as a skip function.
- * @param p_stream the stream to modify
- * @param p_function the function to use a skip function.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_skip_function(opj_stream_t* p_stream,
- opj_stream_skip_fn p_function);
-
-/**
- * Sets the given function to be used as a seek function, the stream is then seekable,
- * using SEEK_SET behavior.
- * @param p_stream the stream to modify
- * @param p_function the function to use a skip function.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_seek_function(opj_stream_t* p_stream,
- opj_stream_seek_fn p_function);
-
-/**
- * Sets the given data to be used as a user data for the stream.
- * @param p_stream the stream to modify
- * @param p_data the data to set.
- * @param p_function the function to free p_data when opj_stream_destroy() is called.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_user_data(opj_stream_t* p_stream,
- void * p_data, opj_stream_free_user_data_fn p_function);
-
-/**
- * Sets the length of the user data for the stream.
- *
- * @param p_stream the stream to modify
- * @param data_length length of the user_data.
-*/
-OPJ_API void OPJ_CALLCONV opj_stream_set_user_data_length(
- opj_stream_t* p_stream, OPJ_UINT64 data_length);
-
-/**
- * Create a stream from a file identified with its filename with default parameters (helper function)
- * @param fname the filename of the file to stream
- * @param p_is_read_stream whether the stream is a read stream (true) or not (false)
-*/
-OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create_default_file_stream(
- const char *fname, OPJ_BOOL p_is_read_stream);
-
-/** Create a stream from a file identified with its filename with a specific buffer size
- * @param fname the filename of the file to stream
- * @param p_buffer_size size of the chunk used to stream
- * @param p_is_read_stream whether the stream is a read stream (true) or not (false)
-*/
-OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create_file_stream(
- const char *fname,
- OPJ_SIZE_T p_buffer_size,
- OPJ_BOOL p_is_read_stream);
-
-/*
-==========================================================
- event manager functions definitions
-==========================================================
-*/
-/**
- * Set the info handler use by openjpeg.
- * @param p_codec the codec previously initialise
- * @param p_callback the callback function which will be used
- * @param p_user_data client object where will be returned the message
-*/
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_info_handler(opj_codec_t * p_codec,
- opj_msg_callback p_callback,
- void * p_user_data);
-/**
- * Set the warning handler use by openjpeg.
- * @param p_codec the codec previously initialise
- * @param p_callback the callback function which will be used
- * @param p_user_data client object where will be returned the message
-*/
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_warning_handler(opj_codec_t * p_codec,
- opj_msg_callback p_callback,
- void * p_user_data);
-/**
- * Set the error handler use by openjpeg.
- * @param p_codec the codec previously initialise
- * @param p_callback the callback function which will be used
- * @param p_user_data client object where will be returned the message
-*/
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_error_handler(opj_codec_t * p_codec,
- opj_msg_callback p_callback,
- void * p_user_data);
-
-/*
-==========================================================
- codec functions definitions
-==========================================================
-*/
-
-/**
- * Creates a J2K/JP2 decompression structure
- * @param format Decoder to select
- *
- * @return Returns a handle to a decompressor if successful, returns NULL otherwise
- * */
-OPJ_API opj_codec_t* OPJ_CALLCONV opj_create_decompress(
- OPJ_CODEC_FORMAT format);
-
-/**
- * Destroy a decompressor handle
- *
- * @param p_codec decompressor handle to destroy
- */
-OPJ_API void OPJ_CALLCONV opj_destroy_codec(opj_codec_t * p_codec);
-
-/**
- * Read after the codestream if necessary
- * @param p_codec the JPEG2000 codec to read.
- * @param p_stream the JPEG2000 stream.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_end_decompress(opj_codec_t *p_codec,
- opj_stream_t *p_stream);
-
-
-/**
- * Set decoding parameters to default values
- * @param parameters Decompression parameters
- */
-OPJ_API void OPJ_CALLCONV opj_set_default_decoder_parameters(
- opj_dparameters_t *parameters);
-
-/**
- * Setup the decoder with decompression parameters provided by the user and with the message handler
- * provided by the user.
- *
- * @param p_codec decompressor handler
- * @param parameters decompression parameters
- *
- * @return true if the decoder is correctly set
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_decoder(opj_codec_t *p_codec,
- opj_dparameters_t *parameters);
-
-/**
- * Allocates worker threads for the compressor/decompressor.
- *
- * By default, only the main thread is used. If this function is not used,
- * but the OPJ_NUM_THREADS environment variable is set, its value will be
- * used to initialize the number of threads. The value can be either an integer
- * number, or "ALL_CPUS". If OPJ_NUM_THREADS is set and this function is called,
- * this function will override the behaviour of the environment variable.
- *
- * This function must be called after opj_setup_decoder() and
- * before opj_read_header() for the decoding side, or after opj_setup_encoder()
- * and before opj_start_compress() for the encoding side.
- *
- * @param p_codec decompressor or compressor handler
- * @param num_threads number of threads.
- *
- * @return OPJ_TRUE if the function is successful.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_codec_set_threads(opj_codec_t *p_codec,
- int num_threads);
-
-/**
- * Decodes an image header.
- *
- * @param p_stream the jpeg2000 stream.
- * @param p_codec the jpeg2000 codec to read.
- * @param p_image the image structure initialized with the characteristics of encoded image.
- *
- * @return true if the main header of the codestream and the JP2 header is correctly read.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_read_header(opj_stream_t *p_stream,
- opj_codec_t *p_codec,
- opj_image_t **p_image);
-
-
-/** Restrict the number of components to decode.
- *
- * This function should be called after opj_read_header().
- *
- * This function enables to restrict the set of decoded components to the
- * specified indices.
- * Note that the current implementation (apply_color_transforms == OPJ_FALSE)
- * is such that neither the multi-component transform at codestream level,
- * nor JP2 channel transformations will be applied.
- * Consequently the indices are relative to the codestream.
- *
- * Note: opj_decode_tile_data() should not be used together with opj_set_decoded_components().
- *
- * @param p_codec the jpeg2000 codec to read.
- * @param numcomps Size of the comps_indices array.
- * @param comps_indices Array of numcomps values representing the indices
- * of the components to decode (relative to the
- * codestream, starting at 0)
- * @param apply_color_transforms Whether multi-component transform at codestream level
- * or JP2 channel transformations should be applied.
- * Currently this parameter should be set to OPJ_FALSE.
- * Setting it to OPJ_TRUE will result in an error.
- *
- * @return OPJ_TRUE in case of success.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decoded_components(opj_codec_t *p_codec,
- OPJ_UINT32 numcomps,
- const OPJ_UINT32* comps_indices,
- OPJ_BOOL apply_color_transforms);
-
-/**
- * Sets the given area to be decoded. This function should be called right after opj_read_header and before any tile header reading.
- *
- * The coordinates passed to this function should be expressed in the reference grid,
- * that is to say at the highest resolution level, even if requesting the image at lower
- * resolution levels.
- *
- * Generally opj_set_decode_area() should be followed by opj_decode(), and the
- * codec cannot be re-used.
- * In the particular case of an image made of a single tile, several sequences of
- * calls to opoj_set_decode_area() and opj_decode() are allowed, and will bring
- * performance improvements when reading an image by chunks.
- *
- * @param p_codec the jpeg2000 codec.
- * @param p_image the decoded image previously set by opj_read_header
- * @param p_start_x the left position of the rectangle to decode (in image coordinates).
- * @param p_end_x the right position of the rectangle to decode (in image coordinates).
- * @param p_start_y the up position of the rectangle to decode (in image coordinates).
- * @param p_end_y the bottom position of the rectangle to decode (in image coordinates).
- *
- * @return true if the area could be set.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decode_area(opj_codec_t *p_codec,
- opj_image_t* p_image,
- OPJ_INT32 p_start_x, OPJ_INT32 p_start_y,
- OPJ_INT32 p_end_x, OPJ_INT32 p_end_y);
-
-/**
- * Decode an image from a JPEG-2000 codestream
- *
- * @param p_decompressor decompressor handle
- * @param p_stream Input buffer stream
- * @param p_image the decoded image
- * @return true if success, otherwise false
- * */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_decode(opj_codec_t *p_decompressor,
- opj_stream_t *p_stream,
- opj_image_t *p_image);
-
-/**
- * Get the decoded tile from the codec
- *
- * @param p_codec the jpeg2000 codec.
- * @param p_stream input streamm
- * @param p_image output image
- * @param tile_index index of the tile which will be decode
- *
- * @return true if success, otherwise false
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_get_decoded_tile(opj_codec_t *p_codec,
- opj_stream_t *p_stream,
- opj_image_t *p_image,
- OPJ_UINT32 tile_index);
-
-/**
- * Set the resolution factor of the decoded image
- * @param p_codec the jpeg2000 codec.
- * @param res_factor resolution factor to set
- *
- * @return true if success, otherwise false
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decoded_resolution_factor(
- opj_codec_t *p_codec, OPJ_UINT32 res_factor);
-
-/**
- * Writes a tile with the given data.
- *
- * @param p_codec the jpeg2000 codec.
- * @param p_tile_index the index of the tile to write. At the moment, the tiles must be written from 0 to n-1 in sequence.
- * @param p_data pointer to the data to write. Data is arranged in sequence, data_comp0, then data_comp1, then ... NO INTERLEAVING should be set.
- * @param p_data_size this value os used to make sure the data being written is correct. The size must be equal to the sum for each component of
- * tile_width * tile_height * component_size. component_size can be 1,2 or 4 bytes, depending on the precision of the given component.
- * @param p_stream the stream to write data to.
- *
- * @return true if the data could be written.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_write_tile(opj_codec_t *p_codec,
- OPJ_UINT32 p_tile_index,
- OPJ_BYTE * p_data,
- OPJ_UINT32 p_data_size,
- opj_stream_t *p_stream);
-
-/**
- * Reads a tile header. This function is compulsory and allows one to know the size of the tile that will be decoded.
- * The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.
- *
- * @param p_codec the jpeg2000 codec.
- * @param p_tile_index pointer to a value that will hold the index of the tile being decoded, in case of success.
- * @param p_data_size pointer to a value that will hold the maximum size of the decoded data, in case of success. In case
- * of truncated codestreams, the actual number of bytes decoded may be lower. The computation of the size is the same
- * as depicted in opj_write_tile.
- * @param p_tile_x0 pointer to a value that will hold the x0 pos of the tile (in the image).
- * @param p_tile_y0 pointer to a value that will hold the y0 pos of the tile (in the image).
- * @param p_tile_x1 pointer to a value that will hold the x1 pos of the tile (in the image).
- * @param p_tile_y1 pointer to a value that will hold the y1 pos of the tile (in the image).
- * @param p_nb_comps pointer to a value that will hold the number of components in the tile.
- * @param p_should_go_on pointer to a boolean that will hold the fact that the decoding should go on. In case the
- * codestream is over at the time of the call, the value will be set to false. The user should then stop
- * the decoding.
- * @param p_stream the stream to decode.
- * @return true if the tile header could be decoded. In case the decoding should end, the returned value is still true.
- * returning false may be the result of a shortage of memory or an internal error.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_read_tile_header(opj_codec_t *p_codec,
- opj_stream_t * p_stream,
- OPJ_UINT32 * p_tile_index,
- OPJ_UINT32 * p_data_size,
- OPJ_INT32 * p_tile_x0, OPJ_INT32 * p_tile_y0,
- OPJ_INT32 * p_tile_x1, OPJ_INT32 * p_tile_y1,
- OPJ_UINT32 * p_nb_comps,
- OPJ_BOOL * p_should_go_on);
-
-/**
- * Reads a tile data. This function is compulsory and allows one to decode tile data. opj_read_tile_header should be called before.
- * The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.
- *
- * Note: opj_decode_tile_data() should not be used together with opj_set_decoded_components().
- *
- * @param p_codec the jpeg2000 codec.
- * @param p_tile_index the index of the tile being decoded, this should be the value set by opj_read_tile_header.
- * @param p_data pointer to a memory block that will hold the decoded data.
- * @param p_data_size size of p_data. p_data_size should be bigger or equal to the value set by opj_read_tile_header.
- * @param p_stream the stream to decode.
- *
- * @return true if the data could be decoded.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_decode_tile_data(opj_codec_t *p_codec,
- OPJ_UINT32 p_tile_index,
- OPJ_BYTE * p_data,
- OPJ_UINT32 p_data_size,
- opj_stream_t *p_stream);
-
-/* COMPRESSION FUNCTIONS*/
-
-/**
- * Creates a J2K/JP2 compression structure
- * @param format Coder to select
- * @return Returns a handle to a compressor if successful, returns NULL otherwise
- */
-OPJ_API opj_codec_t* OPJ_CALLCONV opj_create_compress(OPJ_CODEC_FORMAT format);
-
-/**
-Set encoding parameters to default values, that means :
-<ul>
-<li>Lossless
-<li>1 tile
-<li>Size of precinct : 2^15 x 2^15 (means 1 precinct)
-<li>Size of code-block : 64 x 64
-<li>Number of resolutions: 6
-<li>No SOP marker in the codestream
-<li>No EPH marker in the codestream
-<li>No sub-sampling in x or y direction
-<li>No mode switch activated
-<li>Progression order: LRCP
-<li>No index file
-<li>No ROI upshifted
-<li>No offset of the origin of the image
-<li>No offset of the origin of the tiles
-<li>Reversible DWT 5-3
-</ul>
-@param parameters Compression parameters
-*/
-OPJ_API void OPJ_CALLCONV opj_set_default_encoder_parameters(
- opj_cparameters_t *parameters);
-
-/**
- * Setup the encoder parameters using the current image and using user parameters.
- * @param p_codec Compressor handle
- * @param parameters Compression parameters
- * @param image Input filled image
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_encoder(opj_codec_t *p_codec,
- opj_cparameters_t *parameters,
- opj_image_t *image);
-
-
-/**
- * Specify extra options for the encoder.
- *
- * This may be called after opj_setup_encoder() and before opj_start_compress()
- *
- * This is the way to add new options in a fully ABI compatible way, without
- * extending the opj_cparameters_t structure.
- *
- * Currently supported options are:
- * <ul>
- * <li>PLT=YES/NO. Defaults to NO. If set to YES, PLT marker segments,
- * indicating the length of each packet in the tile-part header, will be
- * written. Since 2.4.0</li>
- * <li>TLM=YES/NO. Defaults to NO (except for Cinema and IMF profiles).
- * If set to YES, TLM marker segments, indicating the length of each
- * tile-part part will be written. Since 2.4.0</li>
- * </ul>
- *
- * @param p_codec Compressor handle
- * @param p_options Compression options. This should be a NULL terminated
- * array of strings. Each string is of the form KEY=VALUE.
- *
- * @return OPJ_TRUE in case of success.
- * @since 2.4.0
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_encoder_set_extra_options(
- opj_codec_t *p_codec,
- const char* const* p_options);
-
-/**
- * Start to compress the current image.
- * @param p_codec Compressor handle
- * @param p_image Input filled image
- * @param p_stream Input stgream
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_start_compress(opj_codec_t *p_codec,
- opj_image_t * p_image,
- opj_stream_t *p_stream);
-
-/**
- * End to compress the current image.
- * @param p_codec Compressor handle
- * @param p_stream Input stgream
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_end_compress(opj_codec_t *p_codec,
- opj_stream_t *p_stream);
-
-/**
- * Encode an image into a JPEG-2000 codestream
- * @param p_codec compressor handle
- * @param p_stream Output buffer stream
- *
- * @return Returns true if successful, returns false otherwise
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_encode(opj_codec_t *p_codec,
- opj_stream_t *p_stream);
-/*
-==========================================================
- codec output functions definitions
-==========================================================
-*/
-/* EXPERIMENTAL FUNCTIONS FOR NOW, USED ONLY IN J2K_DUMP*/
-
-/**
-Destroy Codestream information after compression or decompression
-@param cstr_info Codestream information structure
-*/
-OPJ_API void OPJ_CALLCONV opj_destroy_cstr_info(opj_codestream_info_v2_t
- **cstr_info);
-
-
-/**
- * Dump the codec information into the output stream
- *
- * @param p_codec the jpeg2000 codec.
- * @param info_flag type of information dump.
- * @param output_stream output stream where dump the information gotten from the codec.
- *
- */
-OPJ_API void OPJ_CALLCONV opj_dump_codec(opj_codec_t *p_codec,
- OPJ_INT32 info_flag,
- FILE* output_stream);
-
-/**
- * Get the codestream information from the codec
- *
- * @param p_codec the jpeg2000 codec.
- *
- * @return a pointer to a codestream information structure.
- *
- */
-OPJ_API opj_codestream_info_v2_t* OPJ_CALLCONV opj_get_cstr_info(
- opj_codec_t *p_codec);
-
-/**
- * Get the codestream index from the codec
- *
- * @param p_codec the jpeg2000 codec.
- *
- * @return a pointer to a codestream index structure.
- *
- */
-OPJ_API opj_codestream_index_t * OPJ_CALLCONV opj_get_cstr_index(
- opj_codec_t *p_codec);
-
-OPJ_API void OPJ_CALLCONV opj_destroy_cstr_index(opj_codestream_index_t
- **p_cstr_index);
-
-
-/**
- * Get the JP2 file information from the codec FIXME
- *
- * @param p_codec the jpeg2000 codec.
- *
- * @return a pointer to a JP2 metadata structure.
- *
- */
-OPJ_API opj_jp2_metadata_t* OPJ_CALLCONV opj_get_jp2_metadata(
- opj_codec_t *p_codec);
-
-/**
- * Get the JP2 file index from the codec FIXME
- *
- * @param p_codec the jpeg2000 codec.
- *
- * @return a pointer to a JP2 index structure.
- *
- */
-OPJ_API opj_jp2_index_t* OPJ_CALLCONV opj_get_jp2_index(opj_codec_t *p_codec);
-
-
-/*
-==========================================================
- MCT functions
-==========================================================
-*/
-
-/**
- * Sets the MCT matrix to use.
- *
- * @param parameters the parameters to change.
- * @param pEncodingMatrix the encoding matrix.
- * @param p_dc_shift the dc shift coefficients to use.
- * @param pNbComp the number of components of the image.
- *
- * @return true if the parameters could be set.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_MCT(opj_cparameters_t *parameters,
- OPJ_FLOAT32 * pEncodingMatrix,
- OPJ_INT32 * p_dc_shift,
- OPJ_UINT32 pNbComp);
-
-/*
-==========================================================
- Thread functions
-==========================================================
-*/
-
-/** Returns if the library is built with thread support.
- * OPJ_TRUE if mutex, condition, thread, thread pool are available.
- */
-OPJ_API OPJ_BOOL OPJ_CALLCONV opj_has_thread_support(void);
-
-/** Return the number of virtual CPUs */
-OPJ_API int OPJ_CALLCONV opj_get_num_cpus(void);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* OPENJPEG_H */
+++ /dev/null
-/* create opj_config.h for CMake */
-#define OPJ_HAVE_STDINT_H 1
-
-/*--------------------------------------------------------------------------*/
-/* OpenJPEG Versioning */
-
-/* Version number. */
-#define OPJ_VERSION_MAJOR 2
-#define OPJ_VERSION_MINOR 4
-#define OPJ_VERSION_BUILD 0
+++ /dev/null
-/*
- * The copyright in this software is being made available under the 2-clauses
- * BSD License, included below. This software may be subject to other third
- * party and contributor rights, including patent rights, and no such rights
- * are granted under this license.
- *
- * Copyright (c) 2012, Mathieu Malaterre <mathieu.malaterre@gmail.com>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-#ifndef OPJ_STDINT_H
-#define OPJ_STDINT_H
-
-#include "opj_config.h"
-#ifdef OPJ_HAVE_STDINT_H
-#include <stdint.h>
-#else
-#if defined(_WIN32)
-typedef signed __int8 int8_t;
-typedef unsigned __int8 uint8_t;
-typedef signed __int16 int16_t;
-typedef unsigned __int16 uint16_t;
-typedef signed __int32 int32_t;
-typedef unsigned __int32 uint32_t;
-typedef signed __int64 int64_t;
-typedef unsigned __int64 uint64_t;
-#else
-#error unsupported platform
-#endif
-#endif
-
-#endif /* OPJ_STDINT_H */
--- /dev/null
+/*
+* The copyright in this software is being made available under the 2-clauses
+* BSD License, included below. This software may be subject to other third
+* party and contributor rights, including patent rights, and no such rights
+* are granted under this license.
+*
+* Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
+* Copyright (c) 2002-2014, Professor Benoit Macq
+* Copyright (c) 2001-2003, David Janssens
+* Copyright (c) 2002-2003, Yannick Verschueren
+* Copyright (c) 2003-2007, Francois-Olivier Devaux
+* Copyright (c) 2003-2014, Antonin Descampe
+* Copyright (c) 2005, Herve Drolon, FreeImage Team
+* Copyright (c) 2006-2007, Parvatha Elangovan
+* Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>
+* Copyright (c) 2010-2011, Kaori Hagihara
+* Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France
+* Copyright (c) 2012, CS Systemes d'Information, France
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+* 1. Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* 2. Redistributions in binary form must reproduce the above copyright
+* notice, this list of conditions and the following disclaimer in the
+* documentation and/or other materials provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
+* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*/
+#ifndef OPENJPEG_H
+#define OPENJPEG_H
+
+
+/*
+==========================================================
+ Compiler directives
+==========================================================
+*/
+
+/*
+The inline keyword is supported by C99 but not by C90.
+Most compilers implement their own version of this keyword ...
+*/
+#ifndef INLINE
+#if defined(_MSC_VER)
+#define INLINE __forceinline
+#elif defined(__GNUC__)
+#define INLINE __inline__
+#elif defined(__MWERKS__)
+#define INLINE inline
+#else
+/* add other compilers here ... */
+#define INLINE
+#endif /* defined(<Compiler>) */
+#endif /* INLINE */
+
+/* deprecated attribute */
+#ifdef __GNUC__
+#define OPJ_DEPRECATED(func) func __attribute__ ((deprecated))
+#elif defined(_MSC_VER)
+#define OPJ_DEPRECATED(func) __declspec(deprecated) func
+#else
+#pragma message("WARNING: You need to implement DEPRECATED for this compiler")
+#define OPJ_DEPRECATED(func) func
+#endif
+
+#if defined(OPJ_STATIC) || !defined(_WIN32)
+/* http://gcc.gnu.org/wiki/Visibility */
+# if !defined(_WIN32) && __GNUC__ >= 4
+# if defined(OPJ_STATIC) /* static library uses "hidden" */
+# define OPJ_API __attribute__ ((visibility ("hidden")))
+# else
+# define OPJ_API __attribute__ ((visibility ("default")))
+# endif
+# define OPJ_LOCAL __attribute__ ((visibility ("hidden")))
+# else
+# define OPJ_API
+# define OPJ_LOCAL
+# endif
+# define OPJ_CALLCONV
+#else
+# define OPJ_CALLCONV __stdcall
+/*
+The following ifdef block is the standard way of creating macros which make exporting
+from a DLL simpler. All files within this DLL are compiled with the OPJ_EXPORTS
+symbol defined on the command line. this symbol should not be defined on any project
+that uses this DLL. This way any other project whose source files include this file see
+OPJ_API functions as being imported from a DLL, whereas this DLL sees symbols
+defined with this macro as being exported.
+*/
+# if defined(OPJ_EXPORTS) || defined(DLL_EXPORT)
+# define OPJ_API __declspec(dllexport)
+# else
+# define OPJ_API __declspec(dllimport)
+# endif /* OPJ_EXPORTS */
+#endif /* !OPJ_STATIC || !_WIN32 */
+
+typedef int OPJ_BOOL;
+#define OPJ_TRUE 1
+#define OPJ_FALSE 0
+
+typedef char OPJ_CHAR;
+typedef float OPJ_FLOAT32;
+typedef double OPJ_FLOAT64;
+typedef unsigned char OPJ_BYTE;
+
+#include "opj_stdint.h"
+
+typedef int8_t OPJ_INT8;
+typedef uint8_t OPJ_UINT8;
+typedef int16_t OPJ_INT16;
+typedef uint16_t OPJ_UINT16;
+typedef int32_t OPJ_INT32;
+typedef uint32_t OPJ_UINT32;
+typedef int64_t OPJ_INT64;
+typedef uint64_t OPJ_UINT64;
+
+typedef int64_t OPJ_OFF_T; /* 64-bit file offset type */
+
+#include <stdio.h>
+typedef size_t OPJ_SIZE_T;
+
+/* Avoid compile-time warning because parameter is not used */
+#define OPJ_ARG_NOT_USED(x) (void)(x)
+
+/*
+==========================================================
+ Useful constant definitions
+==========================================================
+*/
+
+#define OPJ_PATH_LEN 4096 /**< Maximum allowed size for filenames */
+
+#define OPJ_J2K_MAXRLVLS 33 /**< Number of maximum resolution level authorized */
+#define OPJ_J2K_MAXBANDS (3*OPJ_J2K_MAXRLVLS-2) /**< Number of maximum sub-band linked to number of resolution level */
+
+#define OPJ_J2K_DEFAULT_NB_SEGS 10
+#define OPJ_J2K_STREAM_CHUNK_SIZE 0x100000 /** 1 mega by default */
+#define OPJ_J2K_DEFAULT_HEADER_SIZE 1000
+#define OPJ_J2K_MCC_DEFAULT_NB_RECORDS 10
+#define OPJ_J2K_MCT_DEFAULT_NB_RECORDS 10
+
+/* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
+#define JPWL_MAX_NO_TILESPECS 16 /**< Maximum number of tile parts expected by JPWL: increase at your will */
+#define JPWL_MAX_NO_PACKSPECS 16 /**< Maximum number of packet parts expected by JPWL: increase at your will */
+#define JPWL_MAX_NO_MARKERS 512 /**< Maximum number of JPWL markers: increase at your will */
+#define JPWL_PRIVATEINDEX_NAME "jpwl_index_privatefilename" /**< index file name used when JPWL is on */
+#define JPWL_EXPECTED_COMPONENTS 3 /**< Expect this number of components, so you'll find better the first EPB */
+#define JPWL_MAXIMUM_TILES 8192 /**< Expect this maximum number of tiles, to avoid some crashes */
+#define JPWL_MAXIMUM_HAMMING 2 /**< Expect this maximum number of bit errors in marker id's */
+#define JPWL_MAXIMUM_EPB_ROOM 65450 /**< Expect this maximum number of bytes for composition of EPBs */
+/* <<UniPG */
+
+/**
+ * EXPERIMENTAL FOR THE MOMENT
+ * Supported options about file information used only in j2k_dump
+*/
+#define OPJ_IMG_INFO 1 /**< Basic image information provided to the user */
+#define OPJ_J2K_MH_INFO 2 /**< Codestream information based only on the main header */
+#define OPJ_J2K_TH_INFO 4 /**< Tile information based on the current tile header */
+#define OPJ_J2K_TCH_INFO 8 /**< Tile/Component information of all tiles */
+#define OPJ_J2K_MH_IND 16 /**< Codestream index based only on the main header */
+#define OPJ_J2K_TH_IND 32 /**< Tile index based on the current tile */
+/*FIXME #define OPJ_J2K_CSTR_IND 48*/ /**< */
+#define OPJ_JP2_INFO 128 /**< JP2 file information */
+#define OPJ_JP2_IND 256 /**< JP2 file index */
+
+/**
+ * JPEG 2000 Profiles, see Table A.10 from 15444-1 (updated in various AMD)
+ * These values help choosing the RSIZ value for the J2K codestream.
+ * The RSIZ value triggers various encoding options, as detailed in Table A.10.
+ * If OPJ_PROFILE_PART2 is chosen, it has to be combined with one or more extensions
+ * described hereunder.
+ * Example: rsiz = OPJ_PROFILE_PART2 | OPJ_EXTENSION_MCT;
+ * For broadcast profiles, the OPJ_PROFILE value has to be combined with the targeted
+ * mainlevel (3-0 LSB, value between 0 and 11):
+ * Example: rsiz = OPJ_PROFILE_BC_MULTI | 0x0005; (here mainlevel 5)
+ * For IMF profiles, the OPJ_PROFILE value has to be combined with the targeted mainlevel
+ * (3-0 LSB, value between 0 and 11) and sublevel (7-4 LSB, value between 0 and 9):
+ * Example: rsiz = OPJ_PROFILE_IMF_2K | 0x0040 | 0x0005; (here main 5 and sublevel 4)
+ * */
+#define OPJ_PROFILE_NONE 0x0000 /** no profile, conform to 15444-1 */
+#define OPJ_PROFILE_0 0x0001 /** Profile 0 as described in 15444-1,Table A.45 */
+#define OPJ_PROFILE_1 0x0002 /** Profile 1 as described in 15444-1,Table A.45 */
+#define OPJ_PROFILE_PART2 0x8000 /** At least 1 extension defined in 15444-2 (Part-2) */
+#define OPJ_PROFILE_CINEMA_2K 0x0003 /** 2K cinema profile defined in 15444-1 AMD1 */
+#define OPJ_PROFILE_CINEMA_4K 0x0004 /** 4K cinema profile defined in 15444-1 AMD1 */
+#define OPJ_PROFILE_CINEMA_S2K 0x0005 /** Scalable 2K cinema profile defined in 15444-1 AMD2 */
+#define OPJ_PROFILE_CINEMA_S4K 0x0006 /** Scalable 4K cinema profile defined in 15444-1 AMD2 */
+#define OPJ_PROFILE_CINEMA_LTS 0x0007 /** Long term storage cinema profile defined in 15444-1 AMD2 */
+#define OPJ_PROFILE_BC_SINGLE 0x0100 /** Single Tile Broadcast profile defined in 15444-1 AMD3 */
+#define OPJ_PROFILE_BC_MULTI 0x0200 /** Multi Tile Broadcast profile defined in 15444-1 AMD3 */
+#define OPJ_PROFILE_BC_MULTI_R 0x0300 /** Multi Tile Reversible Broadcast profile defined in 15444-1 AMD3 */
+#define OPJ_PROFILE_IMF_2K 0x0400 /** 2K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
+#define OPJ_PROFILE_IMF_4K 0x0500 /** 4K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
+#define OPJ_PROFILE_IMF_8K 0x0600 /** 8K Single Tile Lossy IMF profile defined in 15444-1 AMD 8 */
+#define OPJ_PROFILE_IMF_2K_R 0x0700 /** 2K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
+#define OPJ_PROFILE_IMF_4K_R 0x0800 /** 4K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
+#define OPJ_PROFILE_IMF_8K_R 0x0900 /** 8K Single/Multi Tile Reversible IMF profile defined in 15444-1 AMD 8 */
+
+/**
+ * JPEG 2000 Part-2 extensions
+ * */
+#define OPJ_EXTENSION_NONE 0x0000 /** No Part-2 extension */
+#define OPJ_EXTENSION_MCT 0x0100 /** Custom MCT support */
+
+/**
+ * JPEG 2000 profile macros
+ * */
+#define OPJ_IS_CINEMA(v) (((v) >= OPJ_PROFILE_CINEMA_2K)&&((v) <= OPJ_PROFILE_CINEMA_S4K))
+#define OPJ_IS_STORAGE(v) ((v) == OPJ_PROFILE_CINEMA_LTS)
+#define OPJ_IS_BROADCAST(v) (((v) >= OPJ_PROFILE_BC_SINGLE)&&((v) <= ((OPJ_PROFILE_BC_MULTI_R) | (0x000b))))
+#define OPJ_IS_IMF(v) (((v) >= OPJ_PROFILE_IMF_2K)&&((v) <= ((OPJ_PROFILE_IMF_8K_R) | (0x009b))))
+#define OPJ_IS_PART2(v) ((v) & OPJ_PROFILE_PART2)
+
+#define OPJ_GET_IMF_PROFILE(v) ((v) & 0xff00) /** Extract IMF profile without mainlevel/sublevel */
+#define OPJ_GET_IMF_MAINLEVEL(v) ((v) & 0xf) /** Extract IMF main level */
+#define OPJ_GET_IMF_SUBLEVEL(v) (((v) >> 4) & 0xf) /** Extract IMF sub level */
+
+#define OPJ_IMF_MAINLEVEL_MAX 11 /** Maximum main level */
+
+/** Max. Components Sampling Rate (MSamples/sec) per IMF main level */
+#define OPJ_IMF_MAINLEVEL_1_MSAMPLESEC 65 /** MSamples/sec for IMF main level 1 */
+#define OPJ_IMF_MAINLEVEL_2_MSAMPLESEC 130 /** MSamples/sec for IMF main level 2 */
+#define OPJ_IMF_MAINLEVEL_3_MSAMPLESEC 195 /** MSamples/sec for IMF main level 3 */
+#define OPJ_IMF_MAINLEVEL_4_MSAMPLESEC 260 /** MSamples/sec for IMF main level 4 */
+#define OPJ_IMF_MAINLEVEL_5_MSAMPLESEC 520 /** MSamples/sec for IMF main level 5 */
+#define OPJ_IMF_MAINLEVEL_6_MSAMPLESEC 1200 /** MSamples/sec for IMF main level 6 */
+#define OPJ_IMF_MAINLEVEL_7_MSAMPLESEC 2400 /** MSamples/sec for IMF main level 7 */
+#define OPJ_IMF_MAINLEVEL_8_MSAMPLESEC 4800 /** MSamples/sec for IMF main level 8 */
+#define OPJ_IMF_MAINLEVEL_9_MSAMPLESEC 9600 /** MSamples/sec for IMF main level 9 */
+#define OPJ_IMF_MAINLEVEL_10_MSAMPLESEC 19200 /** MSamples/sec for IMF main level 10 */
+#define OPJ_IMF_MAINLEVEL_11_MSAMPLESEC 38400 /** MSamples/sec for IMF main level 11 */
+
+/** Max. compressed Bit Rate (Mbits/s) per IMF sub level */
+#define OPJ_IMF_SUBLEVEL_1_MBITSSEC 200 /** Mbits/s for IMF sub level 1 */
+#define OPJ_IMF_SUBLEVEL_2_MBITSSEC 400 /** Mbits/s for IMF sub level 2 */
+#define OPJ_IMF_SUBLEVEL_3_MBITSSEC 800 /** Mbits/s for IMF sub level 3 */
+#define OPJ_IMF_SUBLEVEL_4_MBITSSEC 1600 /** Mbits/s for IMF sub level 4 */
+#define OPJ_IMF_SUBLEVEL_5_MBITSSEC 3200 /** Mbits/s for IMF sub level 5 */
+#define OPJ_IMF_SUBLEVEL_6_MBITSSEC 6400 /** Mbits/s for IMF sub level 6 */
+#define OPJ_IMF_SUBLEVEL_7_MBITSSEC 12800 /** Mbits/s for IMF sub level 7 */
+#define OPJ_IMF_SUBLEVEL_8_MBITSSEC 25600 /** Mbits/s for IMF sub level 8 */
+#define OPJ_IMF_SUBLEVEL_9_MBITSSEC 51200 /** Mbits/s for IMF sub level 9 */
+
+/**
+ * JPEG 2000 codestream and component size limits in cinema profiles
+ * */
+#define OPJ_CINEMA_24_CS 1302083 /** Maximum codestream length for 24fps */
+#define OPJ_CINEMA_48_CS 651041 /** Maximum codestream length for 48fps */
+#define OPJ_CINEMA_24_COMP 1041666 /** Maximum size per color component for 2K & 4K @ 24fps */
+#define OPJ_CINEMA_48_COMP 520833 /** Maximum size per color component for 2K @ 48fps */
+
+/*
+==========================================================
+ enum definitions
+==========================================================
+*/
+
+/**
+ * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
+ * Rsiz Capabilities
+ * */
+typedef enum RSIZ_CAPABILITIES {
+ OPJ_STD_RSIZ = 0, /** Standard JPEG2000 profile*/
+ OPJ_CINEMA2K = 3, /** Profile name for a 2K image*/
+ OPJ_CINEMA4K = 4, /** Profile name for a 4K image*/
+ OPJ_MCT = 0x8100
+} OPJ_RSIZ_CAPABILITIES;
+
+/**
+ * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
+ * Digital cinema operation mode
+ * */
+typedef enum CINEMA_MODE {
+ OPJ_OFF = 0, /** Not Digital Cinema*/
+ OPJ_CINEMA2K_24 = 1, /** 2K Digital Cinema at 24 fps*/
+ OPJ_CINEMA2K_48 = 2, /** 2K Digital Cinema at 48 fps*/
+ OPJ_CINEMA4K_24 = 3 /** 4K Digital Cinema at 24 fps*/
+} OPJ_CINEMA_MODE;
+
+/**
+ * Progression order
+ * */
+typedef enum PROG_ORDER {
+ OPJ_PROG_UNKNOWN = -1, /**< place-holder */
+ OPJ_LRCP = 0, /**< layer-resolution-component-precinct order */
+ OPJ_RLCP = 1, /**< resolution-layer-component-precinct order */
+ OPJ_RPCL = 2, /**< resolution-precinct-component-layer order */
+ OPJ_PCRL = 3, /**< precinct-component-resolution-layer order */
+ OPJ_CPRL = 4 /**< component-precinct-resolution-layer order */
+} OPJ_PROG_ORDER;
+
+/**
+ * Supported image color spaces
+*/
+typedef enum COLOR_SPACE {
+ OPJ_CLRSPC_UNKNOWN = -1, /**< not supported by the library */
+ OPJ_CLRSPC_UNSPECIFIED = 0, /**< not specified in the codestream */
+ OPJ_CLRSPC_SRGB = 1, /**< sRGB */
+ OPJ_CLRSPC_GRAY = 2, /**< grayscale */
+ OPJ_CLRSPC_SYCC = 3, /**< YUV */
+ OPJ_CLRSPC_EYCC = 4, /**< e-YCC */
+ OPJ_CLRSPC_CMYK = 5 /**< CMYK */
+} OPJ_COLOR_SPACE;
+
+/**
+ * Supported codec
+*/
+typedef enum CODEC_FORMAT {
+ OPJ_CODEC_UNKNOWN = -1, /**< place-holder */
+ OPJ_CODEC_J2K = 0, /**< JPEG-2000 codestream : read/write */
+ OPJ_CODEC_JPT = 1, /**< JPT-stream (JPEG 2000, JPIP) : read only */
+ OPJ_CODEC_JP2 = 2, /**< JP2 file format : read/write */
+ OPJ_CODEC_JPP = 3, /**< JPP-stream (JPEG 2000, JPIP) : to be coded */
+ OPJ_CODEC_JPX = 4 /**< JPX file format (JPEG 2000 Part-2) : to be coded */
+} OPJ_CODEC_FORMAT;
+
+
+/*
+==========================================================
+ event manager typedef definitions
+==========================================================
+*/
+
+/**
+ * Callback function prototype for events
+ * @param msg Event message
+ * @param client_data Client object where will be return the event message
+ * */
+typedef void (*opj_msg_callback)(const char *msg, void *client_data);
+
+/*
+==========================================================
+ codec typedef definitions
+==========================================================
+*/
+
+#ifndef OPJ_UINT32_SEMANTICALLY_BUT_INT32
+#define OPJ_UINT32_SEMANTICALLY_BUT_INT32 OPJ_INT32
+#endif
+
+/**
+ * Progression order changes
+ *
+ */
+typedef struct opj_poc {
+ /** Resolution num start, Component num start, given by POC */
+ OPJ_UINT32 resno0, compno0;
+ /** Layer num end,Resolution num end, Component num end, given by POC */
+ OPJ_UINT32 layno1, resno1, compno1;
+ /** Layer num start,Precinct num start, Precinct num end */
+ OPJ_UINT32 layno0, precno0, precno1;
+ /** Progression order enum*/
+ OPJ_PROG_ORDER prg1, prg;
+ /** Progression order string*/
+ OPJ_CHAR progorder[5];
+ /** Tile number (starting at 1) */
+ OPJ_UINT32 tile;
+ /** Start and end values for Tile width and height*/
+ OPJ_UINT32_SEMANTICALLY_BUT_INT32 tx0, tx1, ty0, ty1;
+ /** Start value, initialised in pi_initialise_encode*/
+ OPJ_UINT32 layS, resS, compS, prcS;
+ /** End value, initialised in pi_initialise_encode */
+ OPJ_UINT32 layE, resE, compE, prcE;
+ /** Start and end values of Tile width and height, initialised in pi_initialise_encode*/
+ OPJ_UINT32 txS, txE, tyS, tyE, dx, dy;
+ /** Temporary values for Tile parts, initialised in pi_create_encode */
+ OPJ_UINT32 lay_t, res_t, comp_t, prc_t, tx0_t, ty0_t;
+} opj_poc_t;
+
+/**
+ * Compression parameters
+ * */
+typedef struct opj_cparameters {
+ /** size of tile: tile_size_on = false (not in argument) or = true (in argument) */
+ OPJ_BOOL tile_size_on;
+ /** XTOsiz */
+ int cp_tx0;
+ /** YTOsiz */
+ int cp_ty0;
+ /** XTsiz */
+ int cp_tdx;
+ /** YTsiz */
+ int cp_tdy;
+ /** allocation by rate/distortion */
+ int cp_disto_alloc;
+ /** allocation by fixed layer */
+ int cp_fixed_alloc;
+ /** add fixed_quality */
+ int cp_fixed_quality;
+ /** fixed layer */
+ int *cp_matrice;
+ /** comment for coding */
+ char *cp_comment;
+ /** csty : coding style */
+ int csty;
+ /** progression order (default OPJ_LRCP) */
+ OPJ_PROG_ORDER prog_order;
+ /** progression order changes */
+ opj_poc_t POC[32];
+ /** number of progression order changes (POC), default to 0 */
+ OPJ_UINT32 numpocs;
+ /** number of layers */
+ int tcp_numlayers;
+ /** rates of layers - might be subsequently limited by the max_cs_size field.
+ * Should be decreasing. 1 can be
+ * used as last value to indicate the last layer is lossless. */
+ float tcp_rates[100];
+ /** different psnr for successive layers. Should be increasing. 0 can be
+ * used as last value to indicate the last layer is lossless. */
+ float tcp_distoratio[100];
+ /** number of resolutions */
+ int numresolution;
+ /** initial code block width, default to 64 */
+ int cblockw_init;
+ /** initial code block height, default to 64 */
+ int cblockh_init;
+ /** mode switch (cblk_style) */
+ int mode;
+ /** 1 : use the irreversible DWT 9-7, 0 : use lossless compression (default) */
+ int irreversible;
+ /** region of interest: affected component in [0..3], -1 means no ROI */
+ int roi_compno;
+ /** region of interest: upshift value */
+ int roi_shift;
+ /* number of precinct size specifications */
+ int res_spec;
+ /** initial precinct width */
+ int prcw_init[OPJ_J2K_MAXRLVLS];
+ /** initial precinct height */
+ int prch_init[OPJ_J2K_MAXRLVLS];
+
+ /**@name command line encoder parameters (not used inside the library) */
+ /*@{*/
+ /** input file name */
+ char infile[OPJ_PATH_LEN];
+ /** output file name */
+ char outfile[OPJ_PATH_LEN];
+ /** DEPRECATED. Index generation is now handeld with the opj_encode_with_info() function. Set to NULL */
+ int index_on;
+ /** DEPRECATED. Index generation is now handeld with the opj_encode_with_info() function. Set to NULL */
+ char index[OPJ_PATH_LEN];
+ /** subimage encoding: origin image offset in x direction */
+ int image_offset_x0;
+ /** subimage encoding: origin image offset in y direction */
+ int image_offset_y0;
+ /** subsampling value for dx */
+ int subsampling_dx;
+ /** subsampling value for dy */
+ int subsampling_dy;
+ /** input file format 0: PGX, 1: PxM, 2: BMP 3:TIF*/
+ int decod_format;
+ /** output file format 0: J2K, 1: JP2, 2: JPT */
+ int cod_format;
+ /*@}*/
+
+ /* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
+ /**@name JPWL encoding parameters */
+ /*@{*/
+ /** enables writing of EPC in MH, thus activating JPWL */
+ OPJ_BOOL jpwl_epc_on;
+ /** error protection method for MH (0,1,16,32,37-128) */
+ int jpwl_hprot_MH;
+ /** tile number of header protection specification (>=0) */
+ int jpwl_hprot_TPH_tileno[JPWL_MAX_NO_TILESPECS];
+ /** error protection methods for TPHs (0,1,16,32,37-128) */
+ int jpwl_hprot_TPH[JPWL_MAX_NO_TILESPECS];
+ /** tile number of packet protection specification (>=0) */
+ int jpwl_pprot_tileno[JPWL_MAX_NO_PACKSPECS];
+ /** packet number of packet protection specification (>=0) */
+ int jpwl_pprot_packno[JPWL_MAX_NO_PACKSPECS];
+ /** error protection methods for packets (0,1,16,32,37-128) */
+ int jpwl_pprot[JPWL_MAX_NO_PACKSPECS];
+ /** enables writing of ESD, (0=no/1/2 bytes) */
+ int jpwl_sens_size;
+ /** sensitivity addressing size (0=auto/2/4 bytes) */
+ int jpwl_sens_addr;
+ /** sensitivity range (0-3) */
+ int jpwl_sens_range;
+ /** sensitivity method for MH (-1=no,0-7) */
+ int jpwl_sens_MH;
+ /** tile number of sensitivity specification (>=0) */
+ int jpwl_sens_TPH_tileno[JPWL_MAX_NO_TILESPECS];
+ /** sensitivity methods for TPHs (-1=no,0-7) */
+ int jpwl_sens_TPH[JPWL_MAX_NO_TILESPECS];
+ /*@}*/
+ /* <<UniPG */
+
+ /**
+ * DEPRECATED: use RSIZ, OPJ_PROFILE_* and MAX_COMP_SIZE instead
+ * Digital Cinema compliance 0-not compliant, 1-compliant
+ * */
+ OPJ_CINEMA_MODE cp_cinema;
+ /**
+ * Maximum size (in bytes) for each component.
+ * If == 0, component size limitation is not considered
+ * */
+ int max_comp_size;
+ /**
+ * DEPRECATED: use RSIZ, OPJ_PROFILE_* and OPJ_EXTENSION_* instead
+ * Profile name
+ * */
+ OPJ_RSIZ_CAPABILITIES cp_rsiz;
+ /** Tile part generation*/
+ char tp_on;
+ /** Flag for Tile part generation*/
+ char tp_flag;
+ /** MCT (multiple component transform) */
+ char tcp_mct;
+ /** Enable JPIP indexing*/
+ OPJ_BOOL jpip_on;
+ /** Naive implementation of MCT restricted to a single reversible array based
+ encoding without offset concerning all the components. */
+ void * mct_data;
+ /**
+ * Maximum size (in bytes) for the whole codestream.
+ * If == 0, codestream size limitation is not considered
+ * If it does not comply with tcp_rates, max_cs_size prevails
+ * and a warning is issued.
+ * */
+ int max_cs_size;
+ /** RSIZ value
+ To be used to combine OPJ_PROFILE_*, OPJ_EXTENSION_* and (sub)levels values. */
+ OPJ_UINT16 rsiz;
+} opj_cparameters_t;
+
+#define OPJ_DPARAMETERS_IGNORE_PCLR_CMAP_CDEF_FLAG 0x0001
+#define OPJ_DPARAMETERS_DUMP_FLAG 0x0002
+
+/**
+ * Decompression parameters
+ * */
+typedef struct opj_dparameters {
+ /**
+ Set the number of highest resolution levels to be discarded.
+ The image resolution is effectively divided by 2 to the power of the number of discarded levels.
+ The reduce factor is limited by the smallest total number of decomposition levels among tiles.
+ if != 0, then original dimension divided by 2^(reduce);
+ if == 0 or not used, image is decoded to the full resolution
+ */
+ OPJ_UINT32 cp_reduce;
+ /**
+ Set the maximum number of quality layers to decode.
+ If there are less quality layers than the specified number, all the quality layers are decoded.
+ if != 0, then only the first "layer" layers are decoded;
+ if == 0 or not used, all the quality layers are decoded
+ */
+ OPJ_UINT32 cp_layer;
+
+ /**@name command line decoder parameters (not used inside the library) */
+ /*@{*/
+ /** input file name */
+ char infile[OPJ_PATH_LEN];
+ /** output file name */
+ char outfile[OPJ_PATH_LEN];
+ /** input file format 0: J2K, 1: JP2, 2: JPT */
+ int decod_format;
+ /** output file format 0: PGX, 1: PxM, 2: BMP */
+ int cod_format;
+
+ /** Decoding area left boundary */
+ OPJ_UINT32 DA_x0;
+ /** Decoding area right boundary */
+ OPJ_UINT32 DA_x1;
+ /** Decoding area up boundary */
+ OPJ_UINT32 DA_y0;
+ /** Decoding area bottom boundary */
+ OPJ_UINT32 DA_y1;
+ /** Verbose mode */
+ OPJ_BOOL m_verbose;
+
+ /** tile number of the decoded tile */
+ OPJ_UINT32 tile_index;
+ /** Nb of tile to decode */
+ OPJ_UINT32 nb_tile_to_decode;
+
+ /*@}*/
+
+ /* UniPG>> */ /* NOT YET USED IN THE V2 VERSION OF OPENJPEG */
+ /**@name JPWL decoding parameters */
+ /*@{*/
+ /** activates the JPWL correction capabilities */
+ OPJ_BOOL jpwl_correct;
+ /** expected number of components */
+ int jpwl_exp_comps;
+ /** maximum number of tiles */
+ int jpwl_max_tiles;
+ /*@}*/
+ /* <<UniPG */
+
+ unsigned int flags;
+
+} opj_dparameters_t;
+
+
+/**
+ * JPEG2000 codec V2.
+ * */
+typedef void * opj_codec_t;
+
+/*
+==========================================================
+ I/O stream typedef definitions
+==========================================================
+*/
+
+/**
+ * Stream open flags.
+ * */
+/** The stream was opened for reading. */
+#define OPJ_STREAM_READ OPJ_TRUE
+/** The stream was opened for writing. */
+#define OPJ_STREAM_WRITE OPJ_FALSE
+
+/*
+ * Callback function prototype for read function
+ */
+typedef OPJ_SIZE_T(* opj_stream_read_fn)(void * p_buffer, OPJ_SIZE_T p_nb_bytes,
+ void * p_user_data) ;
+
+/*
+ * Callback function prototype for write function
+ */
+typedef OPJ_SIZE_T(* opj_stream_write_fn)(void * p_buffer,
+ OPJ_SIZE_T p_nb_bytes, void * p_user_data) ;
+
+/*
+ * Callback function prototype for skip function
+ */
+typedef OPJ_OFF_T(* opj_stream_skip_fn)(OPJ_OFF_T p_nb_bytes,
+ void * p_user_data) ;
+
+/*
+ * Callback function prototype for seek function
+ */
+typedef OPJ_BOOL(* opj_stream_seek_fn)(OPJ_OFF_T p_nb_bytes,
+ void * p_user_data) ;
+
+/*
+ * Callback function prototype for free user data function
+ */
+typedef void (* opj_stream_free_user_data_fn)(void * p_user_data) ;
+
+/*
+ * JPEG2000 Stream.
+ */
+typedef void * opj_stream_t;
+
+/*
+==========================================================
+ image typedef definitions
+==========================================================
+*/
+
+/**
+ * Defines a single image component
+ * */
+typedef struct opj_image_comp {
+ /** XRsiz: horizontal separation of a sample of ith component with respect to the reference grid */
+ OPJ_UINT32 dx;
+ /** YRsiz: vertical separation of a sample of ith component with respect to the reference grid */
+ OPJ_UINT32 dy;
+ /** data width */
+ OPJ_UINT32 w;
+ /** data height */
+ OPJ_UINT32 h;
+ /** x component offset compared to the whole image */
+ OPJ_UINT32 x0;
+ /** y component offset compared to the whole image */
+ OPJ_UINT32 y0;
+ /** precision */
+ OPJ_UINT32 prec;
+ /** image depth in bits */
+ OPJ_UINT32 bpp;
+ /** signed (1) / unsigned (0) */
+ OPJ_UINT32 sgnd;
+ /** number of decoded resolution */
+ OPJ_UINT32 resno_decoded;
+ /** number of division by 2 of the out image compared to the original size of image */
+ OPJ_UINT32 factor;
+ /** image component data */
+ OPJ_INT32 *data;
+ /** alpha channel */
+ OPJ_UINT16 alpha;
+} opj_image_comp_t;
+
+/**
+ * Defines image data and characteristics
+ * */
+typedef struct opj_image {
+ /** XOsiz: horizontal offset from the origin of the reference grid to the left side of the image area */
+ OPJ_UINT32 x0;
+ /** YOsiz: vertical offset from the origin of the reference grid to the top side of the image area */
+ OPJ_UINT32 y0;
+ /** Xsiz: width of the reference grid */
+ OPJ_UINT32 x1;
+ /** Ysiz: height of the reference grid */
+ OPJ_UINT32 y1;
+ /** number of components in the image */
+ OPJ_UINT32 numcomps;
+ /** color space: sRGB, Greyscale or YUV */
+ OPJ_COLOR_SPACE color_space;
+ /** image components */
+ opj_image_comp_t *comps;
+ /** 'restricted' ICC profile */
+ OPJ_BYTE *icc_profile_buf;
+ /** size of ICC profile */
+ OPJ_UINT32 icc_profile_len;
+} opj_image_t;
+
+
+/**
+ * Component parameters structure used by the opj_image_create function
+ * */
+typedef struct opj_image_comptparm {
+ /** XRsiz: horizontal separation of a sample of ith component with respect to the reference grid */
+ OPJ_UINT32 dx;
+ /** YRsiz: vertical separation of a sample of ith component with respect to the reference grid */
+ OPJ_UINT32 dy;
+ /** data width */
+ OPJ_UINT32 w;
+ /** data height */
+ OPJ_UINT32 h;
+ /** x component offset compared to the whole image */
+ OPJ_UINT32 x0;
+ /** y component offset compared to the whole image */
+ OPJ_UINT32 y0;
+ /** precision */
+ OPJ_UINT32 prec;
+ /** image depth in bits */
+ OPJ_UINT32 bpp;
+ /** signed (1) / unsigned (0) */
+ OPJ_UINT32 sgnd;
+} opj_image_cmptparm_t;
+
+
+/*
+==========================================================
+ Information on the JPEG 2000 codestream
+==========================================================
+*/
+/* QUITE EXPERIMENTAL FOR THE MOMENT */
+
+/**
+ * Index structure : Information concerning a packet inside tile
+ * */
+typedef struct opj_packet_info {
+ /** packet start position (including SOP marker if it exists) */
+ OPJ_OFF_T start_pos;
+ /** end of packet header position (including EPH marker if it exists)*/
+ OPJ_OFF_T end_ph_pos;
+ /** packet end position */
+ OPJ_OFF_T end_pos;
+ /** packet distorsion */
+ double disto;
+} opj_packet_info_t;
+
+
+/* UniPG>> */
+/**
+ * Marker structure
+ * */
+typedef struct opj_marker_info {
+ /** marker type */
+ unsigned short int type;
+ /** position in codestream */
+ OPJ_OFF_T pos;
+ /** length, marker val included */
+ int len;
+} opj_marker_info_t;
+/* <<UniPG */
+
+/**
+ * Index structure : Information concerning tile-parts
+*/
+typedef struct opj_tp_info {
+ /** start position of tile part */
+ int tp_start_pos;
+ /** end position of tile part header */
+ int tp_end_header;
+ /** end position of tile part */
+ int tp_end_pos;
+ /** start packet of tile part */
+ int tp_start_pack;
+ /** number of packets of tile part */
+ int tp_numpacks;
+} opj_tp_info_t;
+
+/**
+ * Index structure : information regarding tiles
+*/
+typedef struct opj_tile_info {
+ /** value of thresh for each layer by tile cfr. Marcela */
+ double *thresh;
+ /** number of tile */
+ int tileno;
+ /** start position */
+ int start_pos;
+ /** end position of the header */
+ int end_header;
+ /** end position */
+ int end_pos;
+ /** precinct number for each resolution level (width) */
+ int pw[33];
+ /** precinct number for each resolution level (height) */
+ int ph[33];
+ /** precinct size (in power of 2), in X for each resolution level */
+ int pdx[33];
+ /** precinct size (in power of 2), in Y for each resolution level */
+ int pdy[33];
+ /** information concerning packets inside tile */
+ opj_packet_info_t *packet;
+ /** add fixed_quality */
+ int numpix;
+ /** add fixed_quality */
+ double distotile;
+ /** number of markers */
+ int marknum;
+ /** list of markers */
+ opj_marker_info_t *marker;
+ /** actual size of markers array */
+ int maxmarknum;
+ /** number of tile parts */
+ int num_tps;
+ /** information concerning tile parts */
+ opj_tp_info_t *tp;
+} opj_tile_info_t;
+
+/**
+ * Index structure of the codestream
+*/
+typedef struct opj_codestream_info {
+ /** maximum distortion reduction on the whole image (add for Marcela) */
+ double D_max;
+ /** packet number */
+ int packno;
+ /** writing the packet in the index with t2_encode_packets */
+ int index_write;
+ /** image width */
+ int image_w;
+ /** image height */
+ int image_h;
+ /** progression order */
+ OPJ_PROG_ORDER prog;
+ /** tile size in x */
+ int tile_x;
+ /** tile size in y */
+ int tile_y;
+ /** */
+ int tile_Ox;
+ /** */
+ int tile_Oy;
+ /** number of tiles in X */
+ int tw;
+ /** number of tiles in Y */
+ int th;
+ /** component numbers */
+ int numcomps;
+ /** number of layer */
+ int numlayers;
+ /** number of decomposition for each component */
+ int *numdecompos;
+ /* UniPG>> */
+ /** number of markers */
+ int marknum;
+ /** list of markers */
+ opj_marker_info_t *marker;
+ /** actual size of markers array */
+ int maxmarknum;
+ /* <<UniPG */
+ /** main header position */
+ int main_head_start;
+ /** main header position */
+ int main_head_end;
+ /** codestream's size */
+ int codestream_size;
+ /** information regarding tiles inside image */
+ opj_tile_info_t *tile;
+} opj_codestream_info_t;
+
+/* <----------------------------------------------------------- */
+/* new output management of the codestream information and index */
+
+/**
+ * Tile-component coding parameters information
+ */
+typedef struct opj_tccp_info {
+ /** component index */
+ OPJ_UINT32 compno;
+ /** coding style */
+ OPJ_UINT32 csty;
+ /** number of resolutions */
+ OPJ_UINT32 numresolutions;
+ /** log2 of code-blocks width */
+ OPJ_UINT32 cblkw;
+ /** log2 of code-blocks height */
+ OPJ_UINT32 cblkh;
+ /** code-block coding style */
+ OPJ_UINT32 cblksty;
+ /** discrete wavelet transform identifier: 0 = 9-7 irreversible, 1 = 5-3 reversible */
+ OPJ_UINT32 qmfbid;
+ /** quantisation style */
+ OPJ_UINT32 qntsty;
+ /** stepsizes used for quantization */
+ OPJ_UINT32 stepsizes_mant[OPJ_J2K_MAXBANDS];
+ /** stepsizes used for quantization */
+ OPJ_UINT32 stepsizes_expn[OPJ_J2K_MAXBANDS];
+ /** number of guard bits */
+ OPJ_UINT32 numgbits;
+ /** Region Of Interest shift */
+ OPJ_INT32 roishift;
+ /** precinct width */
+ OPJ_UINT32 prcw[OPJ_J2K_MAXRLVLS];
+ /** precinct height */
+ OPJ_UINT32 prch[OPJ_J2K_MAXRLVLS];
+}
+opj_tccp_info_t;
+
+/**
+ * Tile coding parameters information
+ */
+typedef struct opj_tile_v2_info {
+
+ /** number (index) of tile */
+ int tileno;
+ /** coding style */
+ OPJ_UINT32 csty;
+ /** progression order */
+ OPJ_PROG_ORDER prg;
+ /** number of layers */
+ OPJ_UINT32 numlayers;
+ /** multi-component transform identifier */
+ OPJ_UINT32 mct;
+
+ /** information concerning tile component parameters*/
+ opj_tccp_info_t *tccp_info;
+
+} opj_tile_info_v2_t;
+
+/**
+ * Information structure about the codestream (FIXME should be expand and enhance)
+ */
+typedef struct opj_codestream_info_v2 {
+ /* Tile info */
+ /** tile origin in x = XTOsiz */
+ OPJ_UINT32 tx0;
+ /** tile origin in y = YTOsiz */
+ OPJ_UINT32 ty0;
+ /** tile size in x = XTsiz */
+ OPJ_UINT32 tdx;
+ /** tile size in y = YTsiz */
+ OPJ_UINT32 tdy;
+ /** number of tiles in X */
+ OPJ_UINT32 tw;
+ /** number of tiles in Y */
+ OPJ_UINT32 th;
+
+ /** number of components*/
+ OPJ_UINT32 nbcomps;
+
+ /** Default information regarding tiles inside image */
+ opj_tile_info_v2_t m_default_tile_info;
+
+ /** information regarding tiles inside image */
+ opj_tile_info_v2_t *tile_info; /* FIXME not used for the moment */
+
+} opj_codestream_info_v2_t;
+
+
+/**
+ * Index structure about a tile part
+ */
+typedef struct opj_tp_index {
+ /** start position */
+ OPJ_OFF_T start_pos;
+ /** end position of the header */
+ OPJ_OFF_T end_header;
+ /** end position */
+ OPJ_OFF_T end_pos;
+
+} opj_tp_index_t;
+
+/**
+ * Index structure about a tile
+ */
+typedef struct opj_tile_index {
+ /** tile index */
+ OPJ_UINT32 tileno;
+
+ /** number of tile parts */
+ OPJ_UINT32 nb_tps;
+ /** current nb of tile part (allocated)*/
+ OPJ_UINT32 current_nb_tps;
+ /** current tile-part index */
+ OPJ_UINT32 current_tpsno;
+ /** information concerning tile parts */
+ opj_tp_index_t *tp_index;
+
+ /* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
+ /** number of markers */
+ OPJ_UINT32 marknum;
+ /** list of markers */
+ opj_marker_info_t *marker;
+ /** actual size of markers array */
+ OPJ_UINT32 maxmarknum;
+ /* <<UniPG */
+
+ /** packet number */
+ OPJ_UINT32 nb_packet;
+ /** information concerning packets inside tile */
+ opj_packet_info_t *packet_index;
+
+} opj_tile_index_t;
+
+/**
+ * Index structure of the codestream (FIXME should be expand and enhance)
+ */
+typedef struct opj_codestream_index {
+ /** main header start position (SOC position) */
+ OPJ_OFF_T main_head_start;
+ /** main header end position (first SOT position) */
+ OPJ_OFF_T main_head_end;
+
+ /** codestream's size */
+ OPJ_UINT64 codestream_size;
+
+ /* UniPG>> */ /* NOT USED FOR THE MOMENT IN THE V2 VERSION */
+ /** number of markers */
+ OPJ_UINT32 marknum;
+ /** list of markers */
+ opj_marker_info_t *marker;
+ /** actual size of markers array */
+ OPJ_UINT32 maxmarknum;
+ /* <<UniPG */
+
+ /** */
+ OPJ_UINT32 nb_of_tiles;
+ /** */
+ opj_tile_index_t *tile_index; /* FIXME not used for the moment */
+
+} opj_codestream_index_t;
+/* -----------------------------------------------------------> */
+
+/*
+==========================================================
+ Metadata from the JP2file
+==========================================================
+*/
+
+/**
+ * Info structure of the JP2 file
+ * EXPERIMENTAL FOR THE MOMENT
+ */
+typedef struct opj_jp2_metadata {
+ /** */
+ OPJ_INT32 not_used;
+
+} opj_jp2_metadata_t;
+
+/**
+ * Index structure of the JP2 file
+ * EXPERIMENTAL FOR THE MOMENT
+ */
+typedef struct opj_jp2_index {
+ /** */
+ OPJ_INT32 not_used;
+
+} opj_jp2_index_t;
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/*
+==========================================================
+ openjpeg version
+==========================================================
+*/
+
+/* Get the version of the openjpeg library*/
+OPJ_API const char * OPJ_CALLCONV opj_version(void);
+
+/*
+==========================================================
+ image functions definitions
+==========================================================
+*/
+
+/**
+ * Create an image
+ *
+ * @param numcmpts number of components
+ * @param cmptparms components parameters
+ * @param clrspc image color space
+ * @return returns a new image structure if successful, returns NULL otherwise
+ * */
+OPJ_API opj_image_t* OPJ_CALLCONV opj_image_create(OPJ_UINT32 numcmpts,
+ opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
+
+/**
+ * Deallocate any resources associated with an image
+ *
+ * @param image image to be destroyed
+ */
+OPJ_API void OPJ_CALLCONV opj_image_destroy(opj_image_t *image);
+
+/**
+ * Creates an image without allocating memory for the image (used in the new version of the library).
+ *
+ * @param numcmpts the number of components
+ * @param cmptparms the components parameters
+ * @param clrspc the image color space
+ *
+ * @return a new image structure if successful, NULL otherwise.
+*/
+OPJ_API opj_image_t* OPJ_CALLCONV opj_image_tile_create(OPJ_UINT32 numcmpts,
+ opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
+
+/**
+ * Allocator for opj_image_t->comps[].data
+ * To be paired with opj_image_data_free.
+ *
+ * @param size number of bytes to allocate
+ *
+ * @return a new pointer if successful, NULL otherwise.
+ * @since 2.2.0
+*/
+OPJ_API void* OPJ_CALLCONV opj_image_data_alloc(OPJ_SIZE_T size);
+
+/**
+ * Destructor for opj_image_t->comps[].data
+ * To be paired with opj_image_data_alloc.
+ *
+ * @param ptr Pointer to free
+ *
+ * @since 2.2.0
+*/
+OPJ_API void OPJ_CALLCONV opj_image_data_free(void* ptr);
+
+/*
+==========================================================
+ stream functions definitions
+==========================================================
+*/
+
+/**
+ * Creates an abstract stream. This function does nothing except allocating memory and initializing the abstract stream.
+ *
+ * @param p_is_input if set to true then the stream will be an input stream, an output stream else.
+ *
+ * @return a stream object.
+*/
+OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_default_create(
+ OPJ_BOOL p_is_input);
+
+/**
+ * Creates an abstract stream. This function does nothing except allocating memory and initializing the abstract stream.
+ *
+ * @param p_buffer_size FIXME DOC
+ * @param p_is_input if set to true then the stream will be an input stream, an output stream else.
+ *
+ * @return a stream object.
+*/
+OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create(OPJ_SIZE_T p_buffer_size,
+ OPJ_BOOL p_is_input);
+
+/**
+ * Destroys a stream created by opj_create_stream. This function does NOT close the abstract stream. If needed the user must
+ * close its own implementation of the stream.
+ *
+ * @param p_stream the stream to destroy.
+ */
+OPJ_API void OPJ_CALLCONV opj_stream_destroy(opj_stream_t* p_stream);
+
+/**
+ * Sets the given function to be used as a read function.
+ * @param p_stream the stream to modify
+ * @param p_function the function to use a read function.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_read_function(opj_stream_t* p_stream,
+ opj_stream_read_fn p_function);
+
+/**
+ * Sets the given function to be used as a write function.
+ * @param p_stream the stream to modify
+ * @param p_function the function to use a write function.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_write_function(opj_stream_t* p_stream,
+ opj_stream_write_fn p_function);
+
+/**
+ * Sets the given function to be used as a skip function.
+ * @param p_stream the stream to modify
+ * @param p_function the function to use a skip function.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_skip_function(opj_stream_t* p_stream,
+ opj_stream_skip_fn p_function);
+
+/**
+ * Sets the given function to be used as a seek function, the stream is then seekable,
+ * using SEEK_SET behavior.
+ * @param p_stream the stream to modify
+ * @param p_function the function to use a skip function.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_seek_function(opj_stream_t* p_stream,
+ opj_stream_seek_fn p_function);
+
+/**
+ * Sets the given data to be used as a user data for the stream.
+ * @param p_stream the stream to modify
+ * @param p_data the data to set.
+ * @param p_function the function to free p_data when opj_stream_destroy() is called.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_user_data(opj_stream_t* p_stream,
+ void * p_data, opj_stream_free_user_data_fn p_function);
+
+/**
+ * Sets the length of the user data for the stream.
+ *
+ * @param p_stream the stream to modify
+ * @param data_length length of the user_data.
+*/
+OPJ_API void OPJ_CALLCONV opj_stream_set_user_data_length(
+ opj_stream_t* p_stream, OPJ_UINT64 data_length);
+
+/**
+ * Create a stream from a file identified with its filename with default parameters (helper function)
+ * @param fname the filename of the file to stream
+ * @param p_is_read_stream whether the stream is a read stream (true) or not (false)
+*/
+OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create_default_file_stream(
+ const char *fname, OPJ_BOOL p_is_read_stream);
+
+/** Create a stream from a file identified with its filename with a specific buffer size
+ * @param fname the filename of the file to stream
+ * @param p_buffer_size size of the chunk used to stream
+ * @param p_is_read_stream whether the stream is a read stream (true) or not (false)
+*/
+OPJ_API opj_stream_t* OPJ_CALLCONV opj_stream_create_file_stream(
+ const char *fname,
+ OPJ_SIZE_T p_buffer_size,
+ OPJ_BOOL p_is_read_stream);
+
+/*
+==========================================================
+ event manager functions definitions
+==========================================================
+*/
+/**
+ * Set the info handler use by openjpeg.
+ * @param p_codec the codec previously initialise
+ * @param p_callback the callback function which will be used
+ * @param p_user_data client object where will be returned the message
+*/
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_info_handler(opj_codec_t * p_codec,
+ opj_msg_callback p_callback,
+ void * p_user_data);
+/**
+ * Set the warning handler use by openjpeg.
+ * @param p_codec the codec previously initialise
+ * @param p_callback the callback function which will be used
+ * @param p_user_data client object where will be returned the message
+*/
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_warning_handler(opj_codec_t * p_codec,
+ opj_msg_callback p_callback,
+ void * p_user_data);
+/**
+ * Set the error handler use by openjpeg.
+ * @param p_codec the codec previously initialise
+ * @param p_callback the callback function which will be used
+ * @param p_user_data client object where will be returned the message
+*/
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_error_handler(opj_codec_t * p_codec,
+ opj_msg_callback p_callback,
+ void * p_user_data);
+
+/*
+==========================================================
+ codec functions definitions
+==========================================================
+*/
+
+/**
+ * Creates a J2K/JP2 decompression structure
+ * @param format Decoder to select
+ *
+ * @return Returns a handle to a decompressor if successful, returns NULL otherwise
+ * */
+OPJ_API opj_codec_t* OPJ_CALLCONV opj_create_decompress(
+ OPJ_CODEC_FORMAT format);
+
+/**
+ * Destroy a decompressor handle
+ *
+ * @param p_codec decompressor handle to destroy
+ */
+OPJ_API void OPJ_CALLCONV opj_destroy_codec(opj_codec_t * p_codec);
+
+/**
+ * Read after the codestream if necessary
+ * @param p_codec the JPEG2000 codec to read.
+ * @param p_stream the JPEG2000 stream.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_end_decompress(opj_codec_t *p_codec,
+ opj_stream_t *p_stream);
+
+
+/**
+ * Set decoding parameters to default values
+ * @param parameters Decompression parameters
+ */
+OPJ_API void OPJ_CALLCONV opj_set_default_decoder_parameters(
+ opj_dparameters_t *parameters);
+
+/**
+ * Setup the decoder with decompression parameters provided by the user and with the message handler
+ * provided by the user.
+ *
+ * @param p_codec decompressor handler
+ * @param parameters decompression parameters
+ *
+ * @return true if the decoder is correctly set
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_decoder(opj_codec_t *p_codec,
+ opj_dparameters_t *parameters);
+
+/**
+ * Allocates worker threads for the compressor/decompressor.
+ *
+ * By default, only the main thread is used. If this function is not used,
+ * but the OPJ_NUM_THREADS environment variable is set, its value will be
+ * used to initialize the number of threads. The value can be either an integer
+ * number, or "ALL_CPUS". If OPJ_NUM_THREADS is set and this function is called,
+ * this function will override the behaviour of the environment variable.
+ *
+ * This function must be called after opj_setup_decoder() and
+ * before opj_read_header() for the decoding side, or after opj_setup_encoder()
+ * and before opj_start_compress() for the encoding side.
+ *
+ * @param p_codec decompressor or compressor handler
+ * @param num_threads number of threads.
+ *
+ * @return OPJ_TRUE if the function is successful.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_codec_set_threads(opj_codec_t *p_codec,
+ int num_threads);
+
+/**
+ * Decodes an image header.
+ *
+ * @param p_stream the jpeg2000 stream.
+ * @param p_codec the jpeg2000 codec to read.
+ * @param p_image the image structure initialized with the characteristics of encoded image.
+ *
+ * @return true if the main header of the codestream and the JP2 header is correctly read.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_read_header(opj_stream_t *p_stream,
+ opj_codec_t *p_codec,
+ opj_image_t **p_image);
+
+
+/** Restrict the number of components to decode.
+ *
+ * This function should be called after opj_read_header().
+ *
+ * This function enables to restrict the set of decoded components to the
+ * specified indices.
+ * Note that the current implementation (apply_color_transforms == OPJ_FALSE)
+ * is such that neither the multi-component transform at codestream level,
+ * nor JP2 channel transformations will be applied.
+ * Consequently the indices are relative to the codestream.
+ *
+ * Note: opj_decode_tile_data() should not be used together with opj_set_decoded_components().
+ *
+ * @param p_codec the jpeg2000 codec to read.
+ * @param numcomps Size of the comps_indices array.
+ * @param comps_indices Array of numcomps values representing the indices
+ * of the components to decode (relative to the
+ * codestream, starting at 0)
+ * @param apply_color_transforms Whether multi-component transform at codestream level
+ * or JP2 channel transformations should be applied.
+ * Currently this parameter should be set to OPJ_FALSE.
+ * Setting it to OPJ_TRUE will result in an error.
+ *
+ * @return OPJ_TRUE in case of success.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decoded_components(opj_codec_t *p_codec,
+ OPJ_UINT32 numcomps,
+ const OPJ_UINT32* comps_indices,
+ OPJ_BOOL apply_color_transforms);
+
+/**
+ * Sets the given area to be decoded. This function should be called right after opj_read_header and before any tile header reading.
+ *
+ * The coordinates passed to this function should be expressed in the reference grid,
+ * that is to say at the highest resolution level, even if requesting the image at lower
+ * resolution levels.
+ *
+ * Generally opj_set_decode_area() should be followed by opj_decode(), and the
+ * codec cannot be re-used.
+ * In the particular case of an image made of a single tile, several sequences of
+ * calls to opoj_set_decode_area() and opj_decode() are allowed, and will bring
+ * performance improvements when reading an image by chunks.
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param p_image the decoded image previously set by opj_read_header
+ * @param p_start_x the left position of the rectangle to decode (in image coordinates).
+ * @param p_end_x the right position of the rectangle to decode (in image coordinates).
+ * @param p_start_y the up position of the rectangle to decode (in image coordinates).
+ * @param p_end_y the bottom position of the rectangle to decode (in image coordinates).
+ *
+ * @return true if the area could be set.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decode_area(opj_codec_t *p_codec,
+ opj_image_t* p_image,
+ OPJ_INT32 p_start_x, OPJ_INT32 p_start_y,
+ OPJ_INT32 p_end_x, OPJ_INT32 p_end_y);
+
+/**
+ * Decode an image from a JPEG-2000 codestream
+ *
+ * @param p_decompressor decompressor handle
+ * @param p_stream Input buffer stream
+ * @param p_image the decoded image
+ * @return true if success, otherwise false
+ * */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_decode(opj_codec_t *p_decompressor,
+ opj_stream_t *p_stream,
+ opj_image_t *p_image);
+
+/**
+ * Get the decoded tile from the codec
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param p_stream input streamm
+ * @param p_image output image
+ * @param tile_index index of the tile which will be decode
+ *
+ * @return true if success, otherwise false
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_get_decoded_tile(opj_codec_t *p_codec,
+ opj_stream_t *p_stream,
+ opj_image_t *p_image,
+ OPJ_UINT32 tile_index);
+
+/**
+ * Set the resolution factor of the decoded image
+ * @param p_codec the jpeg2000 codec.
+ * @param res_factor resolution factor to set
+ *
+ * @return true if success, otherwise false
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_decoded_resolution_factor(
+ opj_codec_t *p_codec, OPJ_UINT32 res_factor);
+
+/**
+ * Writes a tile with the given data.
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param p_tile_index the index of the tile to write. At the moment, the tiles must be written from 0 to n-1 in sequence.
+ * @param p_data pointer to the data to write. Data is arranged in sequence, data_comp0, then data_comp1, then ... NO INTERLEAVING should be set.
+ * @param p_data_size this value os used to make sure the data being written is correct. The size must be equal to the sum for each component of
+ * tile_width * tile_height * component_size. component_size can be 1,2 or 4 bytes, depending on the precision of the given component.
+ * @param p_stream the stream to write data to.
+ *
+ * @return true if the data could be written.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_write_tile(opj_codec_t *p_codec,
+ OPJ_UINT32 p_tile_index,
+ OPJ_BYTE * p_data,
+ OPJ_UINT32 p_data_size,
+ opj_stream_t *p_stream);
+
+/**
+ * Reads a tile header. This function is compulsory and allows one to know the size of the tile that will be decoded.
+ * The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param p_tile_index pointer to a value that will hold the index of the tile being decoded, in case of success.
+ * @param p_data_size pointer to a value that will hold the maximum size of the decoded data, in case of success. In case
+ * of truncated codestreams, the actual number of bytes decoded may be lower. The computation of the size is the same
+ * as depicted in opj_write_tile.
+ * @param p_tile_x0 pointer to a value that will hold the x0 pos of the tile (in the image).
+ * @param p_tile_y0 pointer to a value that will hold the y0 pos of the tile (in the image).
+ * @param p_tile_x1 pointer to a value that will hold the x1 pos of the tile (in the image).
+ * @param p_tile_y1 pointer to a value that will hold the y1 pos of the tile (in the image).
+ * @param p_nb_comps pointer to a value that will hold the number of components in the tile.
+ * @param p_should_go_on pointer to a boolean that will hold the fact that the decoding should go on. In case the
+ * codestream is over at the time of the call, the value will be set to false. The user should then stop
+ * the decoding.
+ * @param p_stream the stream to decode.
+ * @return true if the tile header could be decoded. In case the decoding should end, the returned value is still true.
+ * returning false may be the result of a shortage of memory or an internal error.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_read_tile_header(opj_codec_t *p_codec,
+ opj_stream_t * p_stream,
+ OPJ_UINT32 * p_tile_index,
+ OPJ_UINT32 * p_data_size,
+ OPJ_INT32 * p_tile_x0, OPJ_INT32 * p_tile_y0,
+ OPJ_INT32 * p_tile_x1, OPJ_INT32 * p_tile_y1,
+ OPJ_UINT32 * p_nb_comps,
+ OPJ_BOOL * p_should_go_on);
+
+/**
+ * Reads a tile data. This function is compulsory and allows one to decode tile data. opj_read_tile_header should be called before.
+ * The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.
+ *
+ * Note: opj_decode_tile_data() should not be used together with opj_set_decoded_components().
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param p_tile_index the index of the tile being decoded, this should be the value set by opj_read_tile_header.
+ * @param p_data pointer to a memory block that will hold the decoded data.
+ * @param p_data_size size of p_data. p_data_size should be bigger or equal to the value set by opj_read_tile_header.
+ * @param p_stream the stream to decode.
+ *
+ * @return true if the data could be decoded.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_decode_tile_data(opj_codec_t *p_codec,
+ OPJ_UINT32 p_tile_index,
+ OPJ_BYTE * p_data,
+ OPJ_UINT32 p_data_size,
+ opj_stream_t *p_stream);
+
+/* COMPRESSION FUNCTIONS*/
+
+/**
+ * Creates a J2K/JP2 compression structure
+ * @param format Coder to select
+ * @return Returns a handle to a compressor if successful, returns NULL otherwise
+ */
+OPJ_API opj_codec_t* OPJ_CALLCONV opj_create_compress(OPJ_CODEC_FORMAT format);
+
+/**
+Set encoding parameters to default values, that means :
+<ul>
+<li>Lossless
+<li>1 tile
+<li>Size of precinct : 2^15 x 2^15 (means 1 precinct)
+<li>Size of code-block : 64 x 64
+<li>Number of resolutions: 6
+<li>No SOP marker in the codestream
+<li>No EPH marker in the codestream
+<li>No sub-sampling in x or y direction
+<li>No mode switch activated
+<li>Progression order: LRCP
+<li>No index file
+<li>No ROI upshifted
+<li>No offset of the origin of the image
+<li>No offset of the origin of the tiles
+<li>Reversible DWT 5-3
+</ul>
+@param parameters Compression parameters
+*/
+OPJ_API void OPJ_CALLCONV opj_set_default_encoder_parameters(
+ opj_cparameters_t *parameters);
+
+/**
+ * Setup the encoder parameters using the current image and using user parameters.
+ * @param p_codec Compressor handle
+ * @param parameters Compression parameters
+ * @param image Input filled image
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_encoder(opj_codec_t *p_codec,
+ opj_cparameters_t *parameters,
+ opj_image_t *image);
+
+
+/**
+ * Specify extra options for the encoder.
+ *
+ * This may be called after opj_setup_encoder() and before opj_start_compress()
+ *
+ * This is the way to add new options in a fully ABI compatible way, without
+ * extending the opj_cparameters_t structure.
+ *
+ * Currently supported options are:
+ * <ul>
+ * <li>PLT=YES/NO. Defaults to NO. If set to YES, PLT marker segments,
+ * indicating the length of each packet in the tile-part header, will be
+ * written. Since 2.4.0</li>
+ * <li>TLM=YES/NO. Defaults to NO (except for Cinema and IMF profiles).
+ * If set to YES, TLM marker segments, indicating the length of each
+ * tile-part part will be written. Since 2.4.0</li>
+ * </ul>
+ *
+ * @param p_codec Compressor handle
+ * @param p_options Compression options. This should be a NULL terminated
+ * array of strings. Each string is of the form KEY=VALUE.
+ *
+ * @return OPJ_TRUE in case of success.
+ * @since 2.4.0
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_encoder_set_extra_options(
+ opj_codec_t *p_codec,
+ const char* const* p_options);
+
+/**
+ * Start to compress the current image.
+ * @param p_codec Compressor handle
+ * @param p_image Input filled image
+ * @param p_stream Input stgream
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_start_compress(opj_codec_t *p_codec,
+ opj_image_t * p_image,
+ opj_stream_t *p_stream);
+
+/**
+ * End to compress the current image.
+ * @param p_codec Compressor handle
+ * @param p_stream Input stgream
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_end_compress(opj_codec_t *p_codec,
+ opj_stream_t *p_stream);
+
+/**
+ * Encode an image into a JPEG-2000 codestream
+ * @param p_codec compressor handle
+ * @param p_stream Output buffer stream
+ *
+ * @return Returns true if successful, returns false otherwise
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_encode(opj_codec_t *p_codec,
+ opj_stream_t *p_stream);
+/*
+==========================================================
+ codec output functions definitions
+==========================================================
+*/
+/* EXPERIMENTAL FUNCTIONS FOR NOW, USED ONLY IN J2K_DUMP*/
+
+/**
+Destroy Codestream information after compression or decompression
+@param cstr_info Codestream information structure
+*/
+OPJ_API void OPJ_CALLCONV opj_destroy_cstr_info(opj_codestream_info_v2_t
+ **cstr_info);
+
+
+/**
+ * Dump the codec information into the output stream
+ *
+ * @param p_codec the jpeg2000 codec.
+ * @param info_flag type of information dump.
+ * @param output_stream output stream where dump the information gotten from the codec.
+ *
+ */
+OPJ_API void OPJ_CALLCONV opj_dump_codec(opj_codec_t *p_codec,
+ OPJ_INT32 info_flag,
+ FILE* output_stream);
+
+/**
+ * Get the codestream information from the codec
+ *
+ * @param p_codec the jpeg2000 codec.
+ *
+ * @return a pointer to a codestream information structure.
+ *
+ */
+OPJ_API opj_codestream_info_v2_t* OPJ_CALLCONV opj_get_cstr_info(
+ opj_codec_t *p_codec);
+
+/**
+ * Get the codestream index from the codec
+ *
+ * @param p_codec the jpeg2000 codec.
+ *
+ * @return a pointer to a codestream index structure.
+ *
+ */
+OPJ_API opj_codestream_index_t * OPJ_CALLCONV opj_get_cstr_index(
+ opj_codec_t *p_codec);
+
+OPJ_API void OPJ_CALLCONV opj_destroy_cstr_index(opj_codestream_index_t
+ **p_cstr_index);
+
+
+/**
+ * Get the JP2 file information from the codec FIXME
+ *
+ * @param p_codec the jpeg2000 codec.
+ *
+ * @return a pointer to a JP2 metadata structure.
+ *
+ */
+OPJ_API opj_jp2_metadata_t* OPJ_CALLCONV opj_get_jp2_metadata(
+ opj_codec_t *p_codec);
+
+/**
+ * Get the JP2 file index from the codec FIXME
+ *
+ * @param p_codec the jpeg2000 codec.
+ *
+ * @return a pointer to a JP2 index structure.
+ *
+ */
+OPJ_API opj_jp2_index_t* OPJ_CALLCONV opj_get_jp2_index(opj_codec_t *p_codec);
+
+
+/*
+==========================================================
+ MCT functions
+==========================================================
+*/
+
+/**
+ * Sets the MCT matrix to use.
+ *
+ * @param parameters the parameters to change.
+ * @param pEncodingMatrix the encoding matrix.
+ * @param p_dc_shift the dc shift coefficients to use.
+ * @param pNbComp the number of components of the image.
+ *
+ * @return true if the parameters could be set.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_set_MCT(opj_cparameters_t *parameters,
+ OPJ_FLOAT32 * pEncodingMatrix,
+ OPJ_INT32 * p_dc_shift,
+ OPJ_UINT32 pNbComp);
+
+/*
+==========================================================
+ Thread functions
+==========================================================
+*/
+
+/** Returns if the library is built with thread support.
+ * OPJ_TRUE if mutex, condition, thread, thread pool are available.
+ */
+OPJ_API OPJ_BOOL OPJ_CALLCONV opj_has_thread_support(void);
+
+/** Return the number of virtual CPUs */
+OPJ_API int OPJ_CALLCONV opj_get_num_cpus(void);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* OPENJPEG_H */
--- /dev/null
+/* create opj_config.h for CMake */
+#define OPJ_HAVE_STDINT_H 1
+
+/*--------------------------------------------------------------------------*/
+/* OpenJPEG Versioning */
+
+/* Version number. */
+#define OPJ_VERSION_MAJOR 2
+#define OPJ_VERSION_MINOR 5
+#define OPJ_VERSION_BUILD 0
--- /dev/null
+/*
+ * The copyright in this software is being made available under the 2-clauses
+ * BSD License, included below. This software may be subject to other third
+ * party and contributor rights, including patent rights, and no such rights
+ * are granted under this license.
+ *
+ * Copyright (c) 2012, Mathieu Malaterre <mathieu.malaterre@gmail.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+#ifndef OPJ_STDINT_H
+#define OPJ_STDINT_H
+
+#include "opj_config.h"
+#ifdef OPJ_HAVE_STDINT_H
+#include <stdint.h>
+#else
+#if defined(_WIN32)
+typedef signed __int8 int8_t;
+typedef unsigned __int8 uint8_t;
+typedef signed __int16 int16_t;
+typedef unsigned __int16 uint16_t;
+typedef signed __int32 int32_t;
+typedef unsigned __int32 uint32_t;
+typedef signed __int64 int64_t;
+typedef unsigned __int64 uint64_t;
+#else
+#error unsupported platform
+#endif
+#endif
+
+#endif /* OPJ_STDINT_H */
-libopenjp2.so.2.4.0
\ No newline at end of file
+libopenjp2.so.2.5.0
\ No newline at end of file
+++ /dev/null
-#-----------------------------------------------------------------------------
-#
-# OPENJPEGConfig.cmake - CMake configuration file for external projects.
-#
-# This file is configured by OPENJPEG and used by the UseOPENJPEG.cmake
-# module to load OPENJPEG's settings for an external project.
-
-# The OPENJPEG version number.
-set(OPENJPEG_MAJOR_VERSION "2")
-set(OPENJPEG_MINOR_VERSION "4")
-set(OPENJPEG_BUILD_VERSION "0")
-
-# The libraries.
-set(OPENJPEG_LIBRARIES "openjp2")
-
-# The CMake macros dir.
-set(OPENJPEG_CMAKE_DIR "lib/openjpeg-2.4")
-
-# The configuration options.
-set(OPENJPEG_BUILD_SHARED_LIBS "ON")
-
-# The "use" file.
-set(OPENJPEG_USE_FILE "")
-
-get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
-if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
- # This is an install tree
- include(${SELF_DIR}/OpenJPEGTargets.cmake)
-
- # We find a relative path from the PKG directory to header files.
- set(PKG_DIR "/home/travis/abi-check/work/abi-check/installed/openjpeg/current/lib/openjpeg-2.4")
- set(INC_DIR "/home/travis/abi-check/work/abi-check/installed/openjpeg/current/include/openjpeg-2.4")
- file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
-
- get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" REALPATH)
-
-else()
- if(EXISTS ${SELF_DIR}/OpenJPEGExports.cmake)
- # This is a build tree
- set( OPENJPEG_INCLUDE_DIRS )
-
- include(${SELF_DIR}/OpenJPEGExports.cmake)
-
- else()
- message(FATAL_ERROR "ooops")
- endif()
-endif()
-
-set(OPENJPEG_USE_FILE ${SELF_DIR}/UseOPENJPEG.cmake)
-
-# Backward compatible part:
-set(OPENJPEG_FOUND TRUE)
-
+++ /dev/null
-#----------------------------------------------------------------
-# Generated CMake target import file for configuration "Debug".
-#----------------------------------------------------------------
-
-# Commands may need to know the format version.
-set(CMAKE_IMPORT_FILE_VERSION 1)
-
-# Import target "openjp2" for configuration "Debug"
-set_property(TARGET openjp2 APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(openjp2 PROPERTIES
- IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "m;-lpthread"
- IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libopenjp2.so.2.4.0"
- IMPORTED_SONAME_DEBUG "libopenjp2.so.7"
- )
-
-list(APPEND _IMPORT_CHECK_TARGETS openjp2 )
-list(APPEND _IMPORT_CHECK_FILES_FOR_openjp2 "${_IMPORT_PREFIX}/lib/libopenjp2.so.2.4.0" )
-
-# Import target "openjp2_static" for configuration "Debug"
-set_property(TARGET openjp2_static APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(openjp2_static PROPERTIES
- IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C"
- IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libopenjp2.a"
- )
-
-list(APPEND _IMPORT_CHECK_TARGETS openjp2_static )
-list(APPEND _IMPORT_CHECK_FILES_FOR_openjp2_static "${_IMPORT_PREFIX}/lib/libopenjp2.a" )
-
-# Import target "opj_decompress" for configuration "Debug"
-set_property(TARGET opj_decompress APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(opj_decompress PROPERTIES
- IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_decompress"
- )
-
-list(APPEND _IMPORT_CHECK_TARGETS opj_decompress )
-list(APPEND _IMPORT_CHECK_FILES_FOR_opj_decompress "${_IMPORT_PREFIX}/bin/opj_decompress" )
-
-# Import target "opj_compress" for configuration "Debug"
-set_property(TARGET opj_compress APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(opj_compress PROPERTIES
- IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_compress"
- )
-
-list(APPEND _IMPORT_CHECK_TARGETS opj_compress )
-list(APPEND _IMPORT_CHECK_FILES_FOR_opj_compress "${_IMPORT_PREFIX}/bin/opj_compress" )
-
-# Import target "opj_dump" for configuration "Debug"
-set_property(TARGET opj_dump APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-set_target_properties(opj_dump PROPERTIES
- IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_dump"
- )
-
-list(APPEND _IMPORT_CHECK_TARGETS opj_dump )
-list(APPEND _IMPORT_CHECK_FILES_FOR_opj_dump "${_IMPORT_PREFIX}/bin/opj_dump" )
-
-# Commands beyond this point should not need to know the version.
-set(CMAKE_IMPORT_FILE_VERSION)
+++ /dev/null
-# Generated by CMake
-
-if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
- message(FATAL_ERROR "CMake >= 2.6.0 required")
-endif()
-cmake_policy(PUSH)
-cmake_policy(VERSION 2.6)
-#----------------------------------------------------------------
-# Generated CMake target import file.
-#----------------------------------------------------------------
-
-# Commands may need to know the format version.
-set(CMAKE_IMPORT_FILE_VERSION 1)
-
-# Protect against multiple inclusion, which would fail when already imported targets are added once more.
-set(_targetsDefined)
-set(_targetsNotDefined)
-set(_expectedTargets)
-foreach(_expectedTarget openjp2 openjp2_static opj_decompress opj_compress opj_dump)
- list(APPEND _expectedTargets ${_expectedTarget})
- if(NOT TARGET ${_expectedTarget})
- list(APPEND _targetsNotDefined ${_expectedTarget})
- endif()
- if(TARGET ${_expectedTarget})
- list(APPEND _targetsDefined ${_expectedTarget})
- endif()
-endforeach()
-if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
- unset(_targetsDefined)
- unset(_targetsNotDefined)
- unset(_expectedTargets)
- set(CMAKE_IMPORT_FILE_VERSION)
- cmake_policy(POP)
- return()
-endif()
-if(NOT "${_targetsDefined}" STREQUAL "")
- message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
-endif()
-unset(_targetsDefined)
-unset(_targetsNotDefined)
-unset(_expectedTargets)
-
-
-# Compute the installation prefix relative to this file.
-get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
-get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
-get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
-if(_IMPORT_PREFIX STREQUAL "/")
- set(_IMPORT_PREFIX "")
-endif()
-
-# Create imported target openjp2
-add_library(openjp2 SHARED IMPORTED)
-
-# Create imported target openjp2_static
-add_library(openjp2_static STATIC IMPORTED)
-
-# Create imported target opj_decompress
-add_executable(opj_decompress IMPORTED)
-
-# Create imported target opj_compress
-add_executable(opj_compress IMPORTED)
-
-# Create imported target opj_dump
-add_executable(opj_dump IMPORTED)
-
-# Load information for each installed configuration.
-get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
-file(GLOB CONFIG_FILES "${_DIR}/OpenJPEGTargets-*.cmake")
-foreach(f ${CONFIG_FILES})
- include(${f})
-endforeach()
-
-# Cleanup temporary variables.
-set(_IMPORT_PREFIX)
-
-# Loop over all imported files and verify that they actually exist
-foreach(target ${_IMPORT_CHECK_TARGETS} )
- foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
- if(NOT EXISTS "${file}" )
- message(FATAL_ERROR "The imported target \"${target}\" references the file
- \"${file}\"
-but this file does not exist. Possible reasons include:
-* The file was deleted, renamed, or moved to another location.
-* An install or uninstall procedure did not complete successfully.
-* The installation package was faulty and contained
- \"${CMAKE_CURRENT_LIST_FILE}\"
-but not all the files it references.
-")
- endif()
- endforeach()
- unset(_IMPORT_CHECK_FILES_FOR_${target})
-endforeach()
-unset(_IMPORT_CHECK_TARGETS)
-
-# This file does not depend on other imported targets which have
-# been exported from the same project but in a separate export set.
-
-# Commands beyond this point should not need to know the version.
-set(CMAKE_IMPORT_FILE_VERSION)
-cmake_policy(POP)
--- /dev/null
+#-----------------------------------------------------------------------------
+#
+# OPENJPEGConfig.cmake - CMake configuration file for external projects.
+#
+# This file is configured by OPENJPEG and used by the UseOPENJPEG.cmake
+# module to load OPENJPEG's settings for an external project.
+
+# The OPENJPEG version number.
+set(OPENJPEG_MAJOR_VERSION "2")
+set(OPENJPEG_MINOR_VERSION "5")
+set(OPENJPEG_BUILD_VERSION "0")
+
+# The libraries.
+set(OPENJPEG_LIBRARIES "openjp2")
+
+# The CMake macros dir.
+set(OPENJPEG_CMAKE_DIR "lib/openjpeg-2.5")
+
+# The configuration options.
+set(OPENJPEG_BUILD_SHARED_LIBS "ON")
+
+# The "use" file.
+set(OPENJPEG_USE_FILE "")
+
+get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
+ # This is an install tree
+ include(${SELF_DIR}/OpenJPEGTargets.cmake)
+
+ # We find a relative path from the PKG directory to header files.
+ set(PKG_DIR "/home/travis/abi-check/work/abi-check/installed/openjpeg/current/lib/openjpeg-2.5")
+ set(INC_DIR "/home/travis/abi-check/work/abi-check/installed/openjpeg/current/include/openjpeg-2.5")
+ file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
+
+ get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" REALPATH)
+
+else()
+ if(EXISTS ${SELF_DIR}/OpenJPEGExports.cmake)
+ # This is a build tree
+ set( OPENJPEG_INCLUDE_DIRS )
+
+ include(${SELF_DIR}/OpenJPEGExports.cmake)
+
+ else()
+ message(FATAL_ERROR "ooops")
+ endif()
+endif()
+
+set(OPENJPEG_USE_FILE ${SELF_DIR}/UseOPENJPEG.cmake)
+
+# Backward compatible part:
+set(OPENJPEG_FOUND TRUE)
+
--- /dev/null
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "Debug".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "openjp2" for configuration "Debug"
+set_property(TARGET openjp2 APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(openjp2 PROPERTIES
+ IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "m;-lpthread"
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libopenjp2.so.2.5.0"
+ IMPORTED_SONAME_DEBUG "libopenjp2.so.7"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS openjp2 )
+list(APPEND _IMPORT_CHECK_FILES_FOR_openjp2 "${_IMPORT_PREFIX}/lib/libopenjp2.so.2.5.0" )
+
+# Import target "openjp2_static" for configuration "Debug"
+set_property(TARGET openjp2_static APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(openjp2_static PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C"
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libopenjp2.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS openjp2_static )
+list(APPEND _IMPORT_CHECK_FILES_FOR_openjp2_static "${_IMPORT_PREFIX}/lib/libopenjp2.a" )
+
+# Import target "opj_decompress" for configuration "Debug"
+set_property(TARGET opj_decompress APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(opj_decompress PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_decompress"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS opj_decompress )
+list(APPEND _IMPORT_CHECK_FILES_FOR_opj_decompress "${_IMPORT_PREFIX}/bin/opj_decompress" )
+
+# Import target "opj_compress" for configuration "Debug"
+set_property(TARGET opj_compress APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(opj_compress PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_compress"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS opj_compress )
+list(APPEND _IMPORT_CHECK_FILES_FOR_opj_compress "${_IMPORT_PREFIX}/bin/opj_compress" )
+
+# Import target "opj_dump" for configuration "Debug"
+set_property(TARGET opj_dump APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(opj_dump PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/opj_dump"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS opj_dump )
+list(APPEND _IMPORT_CHECK_FILES_FOR_opj_dump "${_IMPORT_PREFIX}/bin/opj_dump" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
--- /dev/null
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
+ message(FATAL_ERROR "CMake >= 2.6.0 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.6)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_targetsDefined)
+set(_targetsNotDefined)
+set(_expectedTargets)
+foreach(_expectedTarget openjp2 openjp2_static opj_decompress opj_compress opj_dump)
+ list(APPEND _expectedTargets ${_expectedTarget})
+ if(NOT TARGET ${_expectedTarget})
+ list(APPEND _targetsNotDefined ${_expectedTarget})
+ endif()
+ if(TARGET ${_expectedTarget})
+ list(APPEND _targetsDefined ${_expectedTarget})
+ endif()
+endforeach()
+if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
+ unset(_targetsDefined)
+ unset(_targetsNotDefined)
+ unset(_expectedTargets)
+ set(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT "${_targetsDefined}" STREQUAL "")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
+endif()
+unset(_targetsDefined)
+unset(_targetsNotDefined)
+unset(_expectedTargets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target openjp2
+add_library(openjp2 SHARED IMPORTED)
+
+# Create imported target openjp2_static
+add_library(openjp2_static STATIC IMPORTED)
+
+# Create imported target opj_decompress
+add_executable(opj_decompress IMPORTED)
+
+# Create imported target opj_compress
+add_executable(opj_compress IMPORTED)
+
+# Create imported target opj_dump
+add_executable(opj_dump IMPORTED)
+
+# Load information for each installed configuration.
+get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+file(GLOB CONFIG_FILES "${_DIR}/OpenJPEGTargets-*.cmake")
+foreach(f ${CONFIG_FILES})
+ include(${f})
+endforeach()
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(target ${_IMPORT_CHECK_TARGETS} )
+ foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
+ if(NOT EXISTS "${file}" )
+ message(FATAL_ERROR "The imported target \"${target}\" references the file
+ \"${file}\"
+but this file does not exist. Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+ \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+ endif()
+ endforeach()
+ unset(_IMPORT_CHECK_FILES_FOR_${target})
+endforeach()
+unset(_IMPORT_CHECK_TARGETS)
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)
mandir=${prefix}/
docdir=${prefix}/
libdir=${prefix}/lib
-includedir=${prefix}/include/openjpeg-2.4
+includedir=${prefix}/include/openjpeg-2.5
Name: openjp2
Description: JPEG2000 library (Part 1 and 2)
URL: http://www.openjpeg.org/
-Version: 2.4.0
+Version: 2.5.0
Libs: -L${libdir} -lopenjp2
Libs.private: -lm
Cflags: -I${includedir}
</tr>
<tr>
<td class='object'>libopenjp2.so.2.4.0</td>
-<td class='ok'><a href='../../../../compat_report/openjpeg/2.4.0/current/d6a7b/abi_compat_report.html'>100%</a></td>
+<td class='ok'><a href='../../../../compat_report/openjpeg/2.4.0/current/c6917/abi_compat_report.html'>100%</a></td>
<td class='ok'>0</td>
<td class='ok'>0</td>
</tr>
<th>Headers<br/>Diff</th>
</tr>
<tr id='current'><td>current</td>
-<td>2021-06-08<br/>11:11</td>
+<td>2021-06-09<br/>11:53</td>
<td>7</td>
<td><a href='../../changelog/openjpeg/current/log.html'>changelog</a></td>
<td class='ok'><a href='../../objects_report/openjpeg/2.4.0/current/report.html'>100%</a></td>
<td class='ok'>0</td>
<td class='ok'>0</td>
-<td><a href='../../headers_diff/openjpeg/2.4.0/current/diff.html'>1</a></td>
+<td><a href='../../headers_diff/openjpeg/2.4.0/current/diff.html'>2</a></td>
</tr>
<tr id='v2.4.0'><td>2.4.0</td>
<td>2020-12-28</td>
<td>N/A</td>
<td>N/A</td>
</tr>
-</table><br/>Maintained by <a href='http://www.openjpeg.org/'>OpenJPEG team</a>. Last updated on Tue Jun 8 09:15:59 2021.<br/>
+</table><br/>Maintained by <a href='http://www.openjpeg.org/'>OpenJPEG team</a>. Last updated on Wed Jun 9 09:58:41 2021.<br/>
<br/>
<hr/>
<div align='right'><a class='home' title="Andrey Ponomarenko's ABI laboratory" href='http://abi-laboratory.pro/'>abi-laboratory.pro</a></div>