1*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/libopenjpeg/j2k.c b/third_party/libopenjpeg/j2k.c 2*3ac0a46fSAndroid Build Coastguard Workerindex 9b06e7ec8..e2e048760 100644 3*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/libopenjpeg/j2k.c 4*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/libopenjpeg/j2k.c 5*3ac0a46fSAndroid Build Coastguard Worker@@ -6685,8 +6685,9 @@ static OPJ_BOOL opj_j2k_read_cpf(opj_j2k_t *p_j2k, 6*3ac0a46fSAndroid Build Coastguard Worker /* J2K / JPT decoder interface */ 7*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 8*3ac0a46fSAndroid Build Coastguard Worker 9*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters) 10*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_setup_decoder(void *p_j2k, opj_dparameters_t *parameters) 11*3ac0a46fSAndroid Build Coastguard Worker { 12*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* j2k = (opj_j2k_t*)p_j2k; 13*3ac0a46fSAndroid Build Coastguard Worker if (j2k && parameters) { 14*3ac0a46fSAndroid Build Coastguard Worker j2k->m_cp.m_specific_param.m_dec.m_layer = parameters->cp_layer; 15*3ac0a46fSAndroid Build Coastguard Worker j2k->m_cp.m_specific_param.m_dec.m_reduce = parameters->cp_reduce; 16*3ac0a46fSAndroid Build Coastguard Worker@@ -6700,15 +6701,17 @@ void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters) 17*3ac0a46fSAndroid Build Coastguard Worker } 18*3ac0a46fSAndroid Build Coastguard Worker } 19*3ac0a46fSAndroid Build Coastguard Worker 20*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_decoder_set_strict_mode(opj_j2k_t *j2k, OPJ_BOOL strict) 21*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_decoder_set_strict_mode(void *p_j2k, OPJ_BOOL strict) 22*3ac0a46fSAndroid Build Coastguard Worker { 23*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* j2k = (opj_j2k_t*)p_j2k; 24*3ac0a46fSAndroid Build Coastguard Worker if (j2k) { 25*3ac0a46fSAndroid Build Coastguard Worker j2k->m_cp.strict = strict; 26*3ac0a46fSAndroid Build Coastguard Worker } 27*3ac0a46fSAndroid Build Coastguard Worker } 28*3ac0a46fSAndroid Build Coastguard Worker 29*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_threads(opj_j2k_t *j2k, OPJ_UINT32 num_threads) 30*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_threads(void *p_j2k, OPJ_UINT32 num_threads) 31*3ac0a46fSAndroid Build Coastguard Worker { 32*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* j2k = (opj_j2k_t*)p_j2k; 33*3ac0a46fSAndroid Build Coastguard Worker /* Currently we pass the thread-pool to the tcd, so we cannot re-set it */ 34*3ac0a46fSAndroid Build Coastguard Worker /* afterwards */ 35*3ac0a46fSAndroid Build Coastguard Worker if (opj_has_thread_support() && j2k->m_tcd == NULL) { 36*3ac0a46fSAndroid Build Coastguard Worker@@ -7613,11 +7616,12 @@ static OPJ_BOOL opj_j2k_is_imf_compliant(opj_cparameters_t *parameters, 37*3ac0a46fSAndroid Build Coastguard Worker } 38*3ac0a46fSAndroid Build Coastguard Worker 39*3ac0a46fSAndroid Build Coastguard Worker 40*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_setup_encoder(opj_j2k_t *p_j2k, 41*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_setup_encoder(void *p_j2k, 42*3ac0a46fSAndroid Build Coastguard Worker opj_cparameters_t *parameters, 43*3ac0a46fSAndroid Build Coastguard Worker opj_image_t *image, 44*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 45*3ac0a46fSAndroid Build Coastguard Worker { 46*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* j2k = (opj_j2k_t*)p_j2k; 47*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 i, j, tileno, numpocs_tile; 48*3ac0a46fSAndroid Build Coastguard Worker opj_cp_t *cp = 00; 49*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 cblkw, cblkh; 50*3ac0a46fSAndroid Build Coastguard Worker@@ -7666,10 +7670,10 @@ OPJ_BOOL opj_j2k_setup_encoder(opj_j2k_t *p_j2k, 51*3ac0a46fSAndroid Build Coastguard Worker return OPJ_FALSE; 52*3ac0a46fSAndroid Build Coastguard Worker } 53*3ac0a46fSAndroid Build Coastguard Worker 54*3ac0a46fSAndroid Build Coastguard Worker- p_j2k->m_specific_param.m_encoder.m_nb_comps = image->numcomps; 55*3ac0a46fSAndroid Build Coastguard Worker+ j2k->m_specific_param.m_encoder.m_nb_comps = image->numcomps; 56*3ac0a46fSAndroid Build Coastguard Worker 57*3ac0a46fSAndroid Build Coastguard Worker /* keep a link to cp so that we can destroy it later in j2k_destroy_compress */ 58*3ac0a46fSAndroid Build Coastguard Worker- cp = &(p_j2k->m_cp); 59*3ac0a46fSAndroid Build Coastguard Worker+ cp = &(j2k->m_cp); 60*3ac0a46fSAndroid Build Coastguard Worker 61*3ac0a46fSAndroid Build Coastguard Worker /* set default values for cp */ 62*3ac0a46fSAndroid Build Coastguard Worker cp->tw = 1; 63*3ac0a46fSAndroid Build Coastguard Worker@@ -7834,7 +7838,7 @@ OPJ_BOOL opj_j2k_setup_encoder(opj_j2k_t *p_j2k, 64*3ac0a46fSAndroid Build Coastguard Worker } 65*3ac0a46fSAndroid Build Coastguard Worker 66*3ac0a46fSAndroid Build Coastguard Worker if (OPJ_IS_CINEMA(parameters->rsiz) || OPJ_IS_IMF(parameters->rsiz)) { 67*3ac0a46fSAndroid Build Coastguard Worker- p_j2k->m_specific_param.m_encoder.m_TLM = OPJ_TRUE; 68*3ac0a46fSAndroid Build Coastguard Worker+ j2k->m_specific_param.m_encoder.m_TLM = OPJ_TRUE; 69*3ac0a46fSAndroid Build Coastguard Worker } 70*3ac0a46fSAndroid Build Coastguard Worker 71*3ac0a46fSAndroid Build Coastguard Worker /* Manage profiles and applications and set RSIZ */ 72*3ac0a46fSAndroid Build Coastguard Worker@@ -8379,7 +8383,7 @@ static OPJ_BOOL opj_j2k_add_tlmarker(OPJ_UINT32 tileno, 73*3ac0a46fSAndroid Build Coastguard Worker * ----------------------------------------------------------------------- 74*3ac0a46fSAndroid Build Coastguard Worker */ 75*3ac0a46fSAndroid Build Coastguard Worker 76*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *p_j2k, 77*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_end_decompress(void *p_j2k, 78*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 79*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 80*3ac0a46fSAndroid Build Coastguard Worker ) 81*3ac0a46fSAndroid Build Coastguard Worker@@ -8391,10 +8395,11 @@ OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *p_j2k, 82*3ac0a46fSAndroid Build Coastguard Worker } 83*3ac0a46fSAndroid Build Coastguard Worker 84*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_j2k_read_header(opj_stream_private_t *p_stream, 85*3ac0a46fSAndroid Build Coastguard Worker- opj_j2k_t* p_j2k, 86*3ac0a46fSAndroid Build Coastguard Worker+ void* j2k, 87*3ac0a46fSAndroid Build Coastguard Worker opj_image_t** p_image, 88*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t* p_manager) 89*3ac0a46fSAndroid Build Coastguard Worker { 90*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t *p_j2k = (opj_j2k_t*)j2k; 91*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 92*3ac0a46fSAndroid Build Coastguard Worker assert(p_j2k != 00); 93*3ac0a46fSAndroid Build Coastguard Worker assert(p_stream != 00); 94*3ac0a46fSAndroid Build Coastguard Worker@@ -9178,8 +9183,9 @@ static const opj_dec_memory_marker_handler_t * opj_j2k_get_marker_handler( 95*3ac0a46fSAndroid Build Coastguard Worker return e; 96*3ac0a46fSAndroid Build Coastguard Worker } 97*3ac0a46fSAndroid Build Coastguard Worker 98*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_destroy(opj_j2k_t *p_j2k) 99*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_destroy(void *j2k) 100*3ac0a46fSAndroid Build Coastguard Worker { 101*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t *p_j2k = (opj_j2k_t*)j2k; 102*3ac0a46fSAndroid Build Coastguard Worker if (p_j2k == 00) { 103*3ac0a46fSAndroid Build Coastguard Worker return; 104*3ac0a46fSAndroid Build Coastguard Worker } 105*3ac0a46fSAndroid Build Coastguard Worker@@ -9518,7 +9524,7 @@ static OPJ_BOOL opj_j2k_need_nb_tile_parts_correction(opj_stream_private_t 106*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 107*3ac0a46fSAndroid Build Coastguard Worker } 108*3ac0a46fSAndroid Build Coastguard Worker 109*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 110*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_read_tile_header(void * j2k, 111*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_tile_index, 112*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_data_size, 113*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 * p_tile_x0, OPJ_INT32 * p_tile_y0, 114*3ac0a46fSAndroid Build Coastguard Worker@@ -9528,6 +9534,7 @@ OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 115*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 116*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 117*3ac0a46fSAndroid Build Coastguard Worker { 118*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 119*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 l_current_marker = J2K_MS_SOT; 120*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 l_marker_size; 121*3ac0a46fSAndroid Build Coastguard Worker const opj_dec_memory_marker_handler_t * l_marker_handler = 00; 122*3ac0a46fSAndroid Build Coastguard Worker@@ -9827,13 +9834,14 @@ OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 123*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 124*3ac0a46fSAndroid Build Coastguard Worker } 125*3ac0a46fSAndroid Build Coastguard Worker 126*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_decode_tile(opj_j2k_t * p_j2k, 127*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_decode_tile(void * j2k, 128*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 129*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 130*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 131*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 132*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 133*3ac0a46fSAndroid Build Coastguard Worker { 134*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 135*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 l_current_marker; 136*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE l_data [2]; 137*3ac0a46fSAndroid Build Coastguard Worker opj_tcp_t * l_tcp; 138*3ac0a46fSAndroid Build Coastguard Worker@@ -10200,11 +10208,12 @@ static OPJ_BOOL opj_j2k_update_image_dimensions(opj_image_t* p_image, 139*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 140*3ac0a46fSAndroid Build Coastguard Worker } 141*3ac0a46fSAndroid Build Coastguard Worker 142*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decoded_components(opj_j2k_t *p_j2k, 143*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decoded_components(void *j2k, 144*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 numcomps, 145*3ac0a46fSAndroid Build Coastguard Worker const OPJ_UINT32* comps_indices, 146*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 147*3ac0a46fSAndroid Build Coastguard Worker { 148*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 149*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 i; 150*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL* already_mapped; 151*3ac0a46fSAndroid Build Coastguard Worker 152*3ac0a46fSAndroid Build Coastguard Worker@@ -10260,12 +10269,13 @@ OPJ_BOOL opj_j2k_set_decoded_components(opj_j2k_t *p_j2k, 153*3ac0a46fSAndroid Build Coastguard Worker } 154*3ac0a46fSAndroid Build Coastguard Worker 155*3ac0a46fSAndroid Build Coastguard Worker 156*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decode_area(opj_j2k_t *p_j2k, 157*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decode_area(void *j2k, 158*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 159*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_start_x, OPJ_INT32 p_start_y, 160*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_end_x, OPJ_INT32 p_end_y, 161*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 162*3ac0a46fSAndroid Build Coastguard Worker { 163*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 164*3ac0a46fSAndroid Build Coastguard Worker opj_cp_t * l_cp = &(p_j2k->m_cp); 165*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * l_image = p_j2k->m_private_image; 166*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL ret; 167*3ac0a46fSAndroid Build Coastguard Worker@@ -11200,8 +11210,9 @@ static void opj_j2k_dump_tile_info(opj_tcp_t * l_default_tile, 168*3ac0a46fSAndroid Build Coastguard Worker } 169*3ac0a46fSAndroid Build Coastguard Worker } 170*3ac0a46fSAndroid Build Coastguard Worker 171*3ac0a46fSAndroid Build Coastguard Worker-void j2k_dump(opj_j2k_t* p_j2k, OPJ_INT32 flag, FILE* out_stream) 172*3ac0a46fSAndroid Build Coastguard Worker+void j2k_dump(void* j2k, OPJ_INT32 flag, FILE* out_stream) 173*3ac0a46fSAndroid Build Coastguard Worker { 174*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 175*3ac0a46fSAndroid Build Coastguard Worker /* Check if the flag is compatible with j2k file*/ 176*3ac0a46fSAndroid Build Coastguard Worker if ((flag & OPJ_JP2_INFO) || (flag & OPJ_JP2_IND)) { 177*3ac0a46fSAndroid Build Coastguard Worker fprintf(out_stream, "Wrong flag\n"); 178*3ac0a46fSAndroid Build Coastguard Worker@@ -11391,8 +11402,9 @@ void j2k_dump_image_comp_header(opj_image_comp_t* comp_header, 179*3ac0a46fSAndroid Build Coastguard Worker } 180*3ac0a46fSAndroid Build Coastguard Worker } 181*3ac0a46fSAndroid Build Coastguard Worker 182*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_info_v2_t* j2k_get_cstr_info(opj_j2k_t* p_j2k) 183*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_info_v2_t* j2k_get_cstr_info(void* j2k) 184*3ac0a46fSAndroid Build Coastguard Worker { 185*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 186*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 compno; 187*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 numcomps = p_j2k->m_private_image->numcomps; 188*3ac0a46fSAndroid Build Coastguard Worker opj_tcp_t *l_default_tile; 189*3ac0a46fSAndroid Build Coastguard Worker@@ -11467,8 +11479,9 @@ opj_codestream_info_v2_t* j2k_get_cstr_info(opj_j2k_t* p_j2k) 190*3ac0a46fSAndroid Build Coastguard Worker return cstr_info; 191*3ac0a46fSAndroid Build Coastguard Worker } 192*3ac0a46fSAndroid Build Coastguard Worker 193*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_index_t* j2k_get_cstr_index(opj_j2k_t* p_j2k) 194*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_index_t* j2k_get_cstr_index(void* j2k) 195*3ac0a46fSAndroid Build Coastguard Worker { 196*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 197*3ac0a46fSAndroid Build Coastguard Worker opj_codestream_index_t* l_cstr_index = (opj_codestream_index_t*) 198*3ac0a46fSAndroid Build Coastguard Worker opj_calloc(1, sizeof(opj_codestream_index_t)); 199*3ac0a46fSAndroid Build Coastguard Worker if (!l_cstr_index) { 200*3ac0a46fSAndroid Build Coastguard Worker@@ -11972,11 +11985,12 @@ static OPJ_BOOL opj_j2k_move_data_from_codec_to_output_image(opj_j2k_t * p_j2k, 201*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 202*3ac0a46fSAndroid Build Coastguard Worker } 203*3ac0a46fSAndroid Build Coastguard Worker 204*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_decode(opj_j2k_t * p_j2k, 205*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_decode(void * j2k, 206*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t * p_stream, 207*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * p_image, 208*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 209*3ac0a46fSAndroid Build Coastguard Worker { 210*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 211*3ac0a46fSAndroid Build Coastguard Worker if (!p_image) { 212*3ac0a46fSAndroid Build Coastguard Worker return OPJ_FALSE; 213*3ac0a46fSAndroid Build Coastguard Worker } 214*3ac0a46fSAndroid Build Coastguard Worker@@ -12030,12 +12044,13 @@ OPJ_BOOL opj_j2k_decode(opj_j2k_t * p_j2k, 215*3ac0a46fSAndroid Build Coastguard Worker return opj_j2k_move_data_from_codec_to_output_image(p_j2k, p_image); 216*3ac0a46fSAndroid Build Coastguard Worker } 217*3ac0a46fSAndroid Build Coastguard Worker 218*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_get_tile(opj_j2k_t *p_j2k, 219*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_get_tile(void *j2k, 220*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 221*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 222*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager, 223*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 tile_index) 224*3ac0a46fSAndroid Build Coastguard Worker { 225*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 226*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 compno; 227*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 l_tile_x, l_tile_y; 228*3ac0a46fSAndroid Build Coastguard Worker opj_image_comp_t* l_img_comp; 229*3ac0a46fSAndroid Build Coastguard Worker@@ -12143,10 +12158,11 @@ OPJ_BOOL opj_j2k_get_tile(opj_j2k_t *p_j2k, 230*3ac0a46fSAndroid Build Coastguard Worker return opj_j2k_move_data_from_codec_to_output_image(p_j2k, p_image); 231*3ac0a46fSAndroid Build Coastguard Worker } 232*3ac0a46fSAndroid Build Coastguard Worker 233*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decoded_resolution_factor(opj_j2k_t *p_j2k, 234*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decoded_resolution_factor(void *j2k, 235*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 res_factor, 236*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 237*3ac0a46fSAndroid Build Coastguard Worker { 238*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 239*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 it_comp; 240*3ac0a46fSAndroid Build Coastguard Worker 241*3ac0a46fSAndroid Build Coastguard Worker p_j2k->m_cp.m_specific_param.m_dec.m_reduce = res_factor; 242*3ac0a46fSAndroid Build Coastguard Worker@@ -12177,10 +12193,11 @@ OPJ_BOOL opj_j2k_set_decoded_resolution_factor(opj_j2k_t *p_j2k, 243*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 244*3ac0a46fSAndroid Build Coastguard Worker 245*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_j2k_encoder_set_extra_options( 246*3ac0a46fSAndroid Build Coastguard Worker- opj_j2k_t *p_j2k, 247*3ac0a46fSAndroid Build Coastguard Worker+ void *j2k, 248*3ac0a46fSAndroid Build Coastguard Worker const char* const* p_options, 249*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 250*3ac0a46fSAndroid Build Coastguard Worker { 251*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 252*3ac0a46fSAndroid Build Coastguard Worker const char* const* p_option_iter; 253*3ac0a46fSAndroid Build Coastguard Worker 254*3ac0a46fSAndroid Build Coastguard Worker if (p_options == NULL) { 255*3ac0a46fSAndroid Build Coastguard Worker@@ -12239,10 +12256,11 @@ OPJ_BOOL opj_j2k_encoder_set_extra_options( 256*3ac0a46fSAndroid Build Coastguard Worker 257*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 258*3ac0a46fSAndroid Build Coastguard Worker 259*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_encode(opj_j2k_t * p_j2k, 260*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_encode(void * j2k, 261*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 262*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 263*3ac0a46fSAndroid Build Coastguard Worker { 264*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 265*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 i, j; 266*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 l_nb_tiles; 267*3ac0a46fSAndroid Build Coastguard Worker OPJ_SIZE_T l_max_tile_size = 0, l_current_tile_size; 268*3ac0a46fSAndroid Build Coastguard Worker@@ -12347,10 +12365,11 @@ OPJ_BOOL opj_j2k_encode(opj_j2k_t * p_j2k, 269*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 270*3ac0a46fSAndroid Build Coastguard Worker } 271*3ac0a46fSAndroid Build Coastguard Worker 272*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_end_compress(opj_j2k_t *p_j2k, 273*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_end_compress(void *j2k, 274*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 275*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 276*3ac0a46fSAndroid Build Coastguard Worker { 277*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 278*3ac0a46fSAndroid Build Coastguard Worker /* customization of the encoding */ 279*3ac0a46fSAndroid Build Coastguard Worker if (! opj_j2k_setup_end_compress(p_j2k, p_manager)) { 280*3ac0a46fSAndroid Build Coastguard Worker return OPJ_FALSE; 281*3ac0a46fSAndroid Build Coastguard Worker@@ -12363,11 +12382,12 @@ OPJ_BOOL opj_j2k_end_compress(opj_j2k_t *p_j2k, 282*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 283*3ac0a46fSAndroid Build Coastguard Worker } 284*3ac0a46fSAndroid Build Coastguard Worker 285*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_start_compress(opj_j2k_t *p_j2k, 286*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_start_compress(void *j2k, 287*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 288*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * p_image, 289*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 290*3ac0a46fSAndroid Build Coastguard Worker { 291*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 292*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 293*3ac0a46fSAndroid Build Coastguard Worker assert(p_j2k != 00); 294*3ac0a46fSAndroid Build Coastguard Worker assert(p_stream != 00); 295*3ac0a46fSAndroid Build Coastguard Worker@@ -13154,13 +13174,14 @@ static OPJ_BOOL opj_j2k_create_tcd(opj_j2k_t *p_j2k, 296*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 297*3ac0a46fSAndroid Build Coastguard Worker } 298*3ac0a46fSAndroid Build Coastguard Worker 299*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_write_tile(opj_j2k_t * p_j2k, 300*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_write_tile(void * j2k, 301*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 302*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 303*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 304*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 305*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 306*3ac0a46fSAndroid Build Coastguard Worker { 307*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_t* p_j2k = (opj_j2k_t*)j2k; 308*3ac0a46fSAndroid Build Coastguard Worker if (! opj_j2k_pre_write_tile(p_j2k, p_tile_index, p_stream, p_manager)) { 309*3ac0a46fSAndroid Build Coastguard Worker opj_event_msg(p_manager, EVT_ERROR, 310*3ac0a46fSAndroid Build Coastguard Worker "Error while opj_j2k_pre_write_tile with tile index = %d\n", p_tile_index); 311*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/libopenjpeg/j2k.h b/third_party/libopenjpeg/j2k.h 312*3ac0a46fSAndroid Build Coastguard Workerindex 04fba645a..1d824c019 100644 313*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/libopenjpeg/j2k.h 314*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/libopenjpeg/j2k.h 315*3ac0a46fSAndroid Build Coastguard Worker@@ -621,15 +621,15 @@ opj_j2k_t; 316*3ac0a46fSAndroid Build Coastguard Worker 317*3ac0a46fSAndroid Build Coastguard Worker /** 318*3ac0a46fSAndroid Build Coastguard Worker Setup the decoder decoding parameters using user parameters. 319*3ac0a46fSAndroid Build Coastguard Worker-Decoding parameters are returned in j2k->cp. 320*3ac0a46fSAndroid Build Coastguard Worker-@param j2k J2K decompressor handle 321*3ac0a46fSAndroid Build Coastguard Worker+Decoding parameters are returned in p_j2k->cp. 322*3ac0a46fSAndroid Build Coastguard Worker+@param p_j2k J2K decompressor handle 323*3ac0a46fSAndroid Build Coastguard Worker @param parameters decompression parameters 324*3ac0a46fSAndroid Build Coastguard Worker */ 325*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters); 326*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_setup_decoder(void *p_j2k, opj_dparameters_t *parameters); 327*3ac0a46fSAndroid Build Coastguard Worker 328*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_decoder_set_strict_mode(opj_j2k_t *j2k, OPJ_BOOL strict); 329*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_decoder_set_strict_mode(void *j2k, OPJ_BOOL strict); 330*3ac0a46fSAndroid Build Coastguard Worker 331*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_threads(opj_j2k_t *j2k, OPJ_UINT32 num_threads); 332*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_threads(void *j2k, OPJ_UINT32 num_threads); 333*3ac0a46fSAndroid Build Coastguard Worker 334*3ac0a46fSAndroid Build Coastguard Worker /** 335*3ac0a46fSAndroid Build Coastguard Worker * Creates a J2K compression structure 336*3ac0a46fSAndroid Build Coastguard Worker@@ -639,7 +639,7 @@ OPJ_BOOL opj_j2k_set_threads(opj_j2k_t *j2k, OPJ_UINT32 num_threads); 337*3ac0a46fSAndroid Build Coastguard Worker opj_j2k_t* opj_j2k_create_compress(void); 338*3ac0a46fSAndroid Build Coastguard Worker 339*3ac0a46fSAndroid Build Coastguard Worker 340*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_setup_encoder(opj_j2k_t *p_j2k, 341*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_setup_encoder(void *p_j2k, 342*3ac0a46fSAndroid Build Coastguard Worker opj_cparameters_t *parameters, 343*3ac0a46fSAndroid Build Coastguard Worker opj_image_t *image, 344*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 345*3ac0a46fSAndroid Build Coastguard Worker@@ -658,7 +658,7 @@ const char *opj_j2k_convert_progression_order(OPJ_PROG_ORDER prg_order); 346*3ac0a46fSAndroid Build Coastguard Worker * Ends the decompression procedures and possibiliy add data to be read after the 347*3ac0a46fSAndroid Build Coastguard Worker * codestream. 348*3ac0a46fSAndroid Build Coastguard Worker */ 349*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *j2k, 350*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_end_decompress(void *j2k, 351*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 352*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 353*3ac0a46fSAndroid Build Coastguard Worker 354*3ac0a46fSAndroid Build Coastguard Worker@@ -666,14 +666,14 @@ OPJ_BOOL opj_j2k_end_decompress(opj_j2k_t *j2k, 355*3ac0a46fSAndroid Build Coastguard Worker * Reads a jpeg2000 codestream header structure. 356*3ac0a46fSAndroid Build Coastguard Worker * 357*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to read data from. 358*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 359*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 360*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 361*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 362*3ac0a46fSAndroid Build Coastguard Worker * 363*3ac0a46fSAndroid Build Coastguard Worker * @return true if the box is valid. 364*3ac0a46fSAndroid Build Coastguard Worker */ 365*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_j2k_read_header(opj_stream_private_t *p_stream, 366*3ac0a46fSAndroid Build Coastguard Worker- opj_j2k_t* p_j2k, 367*3ac0a46fSAndroid Build Coastguard Worker+ void* j2k, 368*3ac0a46fSAndroid Build Coastguard Worker opj_image_t** p_image, 369*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t* p_manager); 370*3ac0a46fSAndroid Build Coastguard Worker 371*3ac0a46fSAndroid Build Coastguard Worker@@ -681,9 +681,9 @@ OPJ_BOOL opj_j2k_read_header(opj_stream_private_t *p_stream, 372*3ac0a46fSAndroid Build Coastguard Worker /** 373*3ac0a46fSAndroid Build Coastguard Worker * Destroys a jpeg2000 codec. 374*3ac0a46fSAndroid Build Coastguard Worker * 375*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg20000 structure to destroy. 376*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg20000 structure to destroy. 377*3ac0a46fSAndroid Build Coastguard Worker */ 378*3ac0a46fSAndroid Build Coastguard Worker-void opj_j2k_destroy(opj_j2k_t *p_j2k); 379*3ac0a46fSAndroid Build Coastguard Worker+void opj_j2k_destroy(void *j2k); 380*3ac0a46fSAndroid Build Coastguard Worker 381*3ac0a46fSAndroid Build Coastguard Worker /** 382*3ac0a46fSAndroid Build Coastguard Worker * Destroys a codestream index structure. 383*3ac0a46fSAndroid Build Coastguard Worker@@ -694,14 +694,14 @@ void j2k_destroy_cstr_index(opj_codestream_index_t *p_cstr_ind); 384*3ac0a46fSAndroid Build Coastguard Worker 385*3ac0a46fSAndroid Build Coastguard Worker /** 386*3ac0a46fSAndroid Build Coastguard Worker * Decode tile data. 387*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 388*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 389*3ac0a46fSAndroid Build Coastguard Worker * @param p_tile_index 390*3ac0a46fSAndroid Build Coastguard Worker * @param p_data FIXME DOC 391*3ac0a46fSAndroid Build Coastguard Worker * @param p_data_size FIXME DOC 392*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to write data to. 393*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 394*3ac0a46fSAndroid Build Coastguard Worker */ 395*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_decode_tile(opj_j2k_t * p_j2k, 396*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_decode_tile(void * j2k, 397*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 398*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 399*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 400*3ac0a46fSAndroid Build Coastguard Worker@@ -710,7 +710,7 @@ OPJ_BOOL opj_j2k_decode_tile(opj_j2k_t * p_j2k, 401*3ac0a46fSAndroid Build Coastguard Worker 402*3ac0a46fSAndroid Build Coastguard Worker /** 403*3ac0a46fSAndroid Build Coastguard Worker * Reads a tile header. 404*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 405*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 406*3ac0a46fSAndroid Build Coastguard Worker * @param p_tile_index FIXME DOC 407*3ac0a46fSAndroid Build Coastguard Worker * @param p_data_size FIXME DOC 408*3ac0a46fSAndroid Build Coastguard Worker * @param p_tile_x0 FIXME DOC 409*3ac0a46fSAndroid Build Coastguard Worker@@ -722,7 +722,7 @@ OPJ_BOOL opj_j2k_decode_tile(opj_j2k_t * p_j2k, 410*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to write data to. 411*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 412*3ac0a46fSAndroid Build Coastguard Worker */ 413*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 414*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_read_tile_header(void * j2k, 415*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_tile_index, 416*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_data_size, 417*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 * p_tile_x0, 418*3ac0a46fSAndroid Build Coastguard Worker@@ -737,7 +737,7 @@ OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 419*3ac0a46fSAndroid Build Coastguard Worker 420*3ac0a46fSAndroid Build Coastguard Worker /** Sets the indices of the components to decode. 421*3ac0a46fSAndroid Build Coastguard Worker * 422*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 423*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 424*3ac0a46fSAndroid Build Coastguard Worker * @param numcomps Number of components to decode. 425*3ac0a46fSAndroid Build Coastguard Worker * @param comps_indices Array of num_compts indices (numbering starting at 0) 426*3ac0a46fSAndroid Build Coastguard Worker * corresponding to the components to decode. 427*3ac0a46fSAndroid Build Coastguard Worker@@ -745,7 +745,7 @@ OPJ_BOOL opj_j2k_read_tile_header(opj_j2k_t * p_j2k, 428*3ac0a46fSAndroid Build Coastguard Worker * 429*3ac0a46fSAndroid Build Coastguard Worker * @return OPJ_TRUE in case of success. 430*3ac0a46fSAndroid Build Coastguard Worker */ 431*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decoded_components(opj_j2k_t *p_j2k, 432*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decoded_components(void *j2k, 433*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 numcomps, 434*3ac0a46fSAndroid Build Coastguard Worker const OPJ_UINT32* comps_indices, 435*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 436*3ac0a46fSAndroid Build Coastguard Worker@@ -753,7 +753,7 @@ OPJ_BOOL opj_j2k_set_decoded_components(opj_j2k_t *p_j2k, 437*3ac0a46fSAndroid Build Coastguard Worker /** 438*3ac0a46fSAndroid Build Coastguard Worker * Sets the given area to be decoded. This function should be called right after opj_read_header and before any tile header reading. 439*3ac0a46fSAndroid Build Coastguard Worker * 440*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 441*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 442*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 443*3ac0a46fSAndroid Build Coastguard Worker * @param p_start_x the left position of the rectangle to decode (in image coordinates). 444*3ac0a46fSAndroid Build Coastguard Worker * @param p_start_y the up position of the rectangle to decode (in image coordinates). 445*3ac0a46fSAndroid Build Coastguard Worker@@ -763,7 +763,7 @@ OPJ_BOOL opj_j2k_set_decoded_components(opj_j2k_t *p_j2k, 446*3ac0a46fSAndroid Build Coastguard Worker * 447*3ac0a46fSAndroid Build Coastguard Worker * @return true if the area could be set. 448*3ac0a46fSAndroid Build Coastguard Worker */ 449*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decode_area(opj_j2k_t *p_j2k, 450*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decode_area(void *j2k, 451*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 452*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_start_x, OPJ_INT32 p_start_y, 453*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_end_x, OPJ_INT32 p_end_y, 454*3ac0a46fSAndroid Build Coastguard Worker@@ -780,12 +780,12 @@ opj_j2k_t* opj_j2k_create_decompress(void); 455*3ac0a46fSAndroid Build Coastguard Worker /** 456*3ac0a46fSAndroid Build Coastguard Worker * Dump some elements from the J2K decompression structure . 457*3ac0a46fSAndroid Build Coastguard Worker * 458*3ac0a46fSAndroid Build Coastguard Worker- *@param p_j2k the jpeg2000 codec. 459*3ac0a46fSAndroid Build Coastguard Worker+ *@param j2k the jpeg2000 codec. 460*3ac0a46fSAndroid Build Coastguard Worker *@param flag flag to describe what elements are dump. 461*3ac0a46fSAndroid Build Coastguard Worker *@param out_stream output stream where dump the elements. 462*3ac0a46fSAndroid Build Coastguard Worker * 463*3ac0a46fSAndroid Build Coastguard Worker */ 464*3ac0a46fSAndroid Build Coastguard Worker-void j2k_dump(opj_j2k_t* p_j2k, OPJ_INT32 flag, FILE* out_stream); 465*3ac0a46fSAndroid Build Coastguard Worker+void j2k_dump(void* j2k, OPJ_INT32 flag, FILE* out_stream); 466*3ac0a46fSAndroid Build Coastguard Worker 467*3ac0a46fSAndroid Build Coastguard Worker 468*3ac0a46fSAndroid Build Coastguard Worker 469*3ac0a46fSAndroid Build Coastguard Worker@@ -812,20 +812,20 @@ void j2k_dump_image_comp_header(opj_image_comp_t* comp, OPJ_BOOL dev_dump_flag, 470*3ac0a46fSAndroid Build Coastguard Worker /** 471*3ac0a46fSAndroid Build Coastguard Worker * Get the codestream info from a JPEG2000 codec. 472*3ac0a46fSAndroid Build Coastguard Worker * 473*3ac0a46fSAndroid Build Coastguard Worker- *@param p_j2k the component image header to dump. 474*3ac0a46fSAndroid Build Coastguard Worker+ *@param j2k the component image header to dump. 475*3ac0a46fSAndroid Build Coastguard Worker * 476*3ac0a46fSAndroid Build Coastguard Worker *@return the codestream information extract from the jpg2000 codec 477*3ac0a46fSAndroid Build Coastguard Worker */ 478*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_info_v2_t* j2k_get_cstr_info(opj_j2k_t* p_j2k); 479*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_info_v2_t* j2k_get_cstr_info(void* j2k); 480*3ac0a46fSAndroid Build Coastguard Worker 481*3ac0a46fSAndroid Build Coastguard Worker /** 482*3ac0a46fSAndroid Build Coastguard Worker * Get the codestream index from a JPEG2000 codec. 483*3ac0a46fSAndroid Build Coastguard Worker * 484*3ac0a46fSAndroid Build Coastguard Worker- *@param p_j2k the component image header to dump. 485*3ac0a46fSAndroid Build Coastguard Worker+ *@param j2k the component image header to dump. 486*3ac0a46fSAndroid Build Coastguard Worker * 487*3ac0a46fSAndroid Build Coastguard Worker *@return the codestream index extract from the jpg2000 codec 488*3ac0a46fSAndroid Build Coastguard Worker */ 489*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_index_t* j2k_get_cstr_index(opj_j2k_t* p_j2k); 490*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_index_t* j2k_get_cstr_index(void* j2k); 491*3ac0a46fSAndroid Build Coastguard Worker 492*3ac0a46fSAndroid Build Coastguard Worker /** 493*3ac0a46fSAndroid Build Coastguard Worker * Decode an image from a JPEG-2000 codestream 494*3ac0a46fSAndroid Build Coastguard Worker@@ -835,46 +835,46 @@ opj_codestream_index_t* j2k_get_cstr_index(opj_j2k_t* p_j2k); 495*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager FIXME DOC 496*3ac0a46fSAndroid Build Coastguard Worker * @return FIXME DOC 497*3ac0a46fSAndroid Build Coastguard Worker */ 498*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_decode(opj_j2k_t *j2k, 499*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_decode(void *j2k, 500*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 501*3ac0a46fSAndroid Build Coastguard Worker opj_image_t *p_image, 502*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t *p_manager); 503*3ac0a46fSAndroid Build Coastguard Worker 504*3ac0a46fSAndroid Build Coastguard Worker 505*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_get_tile(opj_j2k_t *p_j2k, 506*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_get_tile(void *j2k, 507*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 508*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 509*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager, 510*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 tile_index); 511*3ac0a46fSAndroid Build Coastguard Worker 512*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_set_decoded_resolution_factor(opj_j2k_t *p_j2k, 513*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_set_decoded_resolution_factor(void *j2k, 514*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 res_factor, 515*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 516*3ac0a46fSAndroid Build Coastguard Worker 517*3ac0a46fSAndroid Build Coastguard Worker /** 518*3ac0a46fSAndroid Build Coastguard Worker * Specify extra options for the encoder. 519*3ac0a46fSAndroid Build Coastguard Worker * 520*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 521*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 522*3ac0a46fSAndroid Build Coastguard Worker * @param p_options options 523*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager 524*3ac0a46fSAndroid Build Coastguard Worker * 525*3ac0a46fSAndroid Build Coastguard Worker * @see opj_encoder_set_extra_options() for more details. 526*3ac0a46fSAndroid Build Coastguard Worker */ 527*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_j2k_encoder_set_extra_options( 528*3ac0a46fSAndroid Build Coastguard Worker- opj_j2k_t *p_j2k, 529*3ac0a46fSAndroid Build Coastguard Worker+ void *j2k, 530*3ac0a46fSAndroid Build Coastguard Worker const char* const* p_options, 531*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 532*3ac0a46fSAndroid Build Coastguard Worker 533*3ac0a46fSAndroid Build Coastguard Worker /** 534*3ac0a46fSAndroid Build Coastguard Worker * Writes a tile. 535*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 536*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 537*3ac0a46fSAndroid Build Coastguard Worker * @param p_tile_index FIXME DOC 538*3ac0a46fSAndroid Build Coastguard Worker * @param p_data FIXME DOC 539*3ac0a46fSAndroid Build Coastguard Worker * @param p_data_size FIXME DOC 540*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to write data to. 541*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 542*3ac0a46fSAndroid Build Coastguard Worker */ 543*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_write_tile(opj_j2k_t * p_j2k, 544*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_write_tile(void * j2k, 545*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 546*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 547*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 548*3ac0a46fSAndroid Build Coastguard Worker@@ -884,21 +884,21 @@ OPJ_BOOL opj_j2k_write_tile(opj_j2k_t * p_j2k, 549*3ac0a46fSAndroid Build Coastguard Worker /** 550*3ac0a46fSAndroid Build Coastguard Worker * Encodes an image into a JPEG-2000 codestream 551*3ac0a46fSAndroid Build Coastguard Worker */ 552*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_encode(opj_j2k_t * p_j2k, 553*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_encode(void * j2k, 554*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 555*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 556*3ac0a46fSAndroid Build Coastguard Worker 557*3ac0a46fSAndroid Build Coastguard Worker /** 558*3ac0a46fSAndroid Build Coastguard Worker * Starts a compression scheme, i.e. validates the codec parameters, writes the header. 559*3ac0a46fSAndroid Build Coastguard Worker * 560*3ac0a46fSAndroid Build Coastguard Worker- * @param p_j2k the jpeg2000 codec. 561*3ac0a46fSAndroid Build Coastguard Worker+ * @param j2k the jpeg2000 codec. 562*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream object. 563*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 564*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 565*3ac0a46fSAndroid Build Coastguard Worker * 566*3ac0a46fSAndroid Build Coastguard Worker * @return true if the codec is valid. 567*3ac0a46fSAndroid Build Coastguard Worker */ 568*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_start_compress(opj_j2k_t *p_j2k, 569*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_start_compress(void *j2k, 570*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 571*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * p_image, 572*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 573*3ac0a46fSAndroid Build Coastguard Worker@@ -907,7 +907,7 @@ OPJ_BOOL opj_j2k_start_compress(opj_j2k_t *p_j2k, 574*3ac0a46fSAndroid Build Coastguard Worker * Ends the compression procedures and possibiliy add data to be read after the 575*3ac0a46fSAndroid Build Coastguard Worker * codestream. 576*3ac0a46fSAndroid Build Coastguard Worker */ 577*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_j2k_end_compress(opj_j2k_t *p_j2k, 578*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_j2k_end_compress(void *j2k, 579*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 580*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 581*3ac0a46fSAndroid Build Coastguard Worker 582*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/libopenjpeg/jp2.c b/third_party/libopenjpeg/jp2.c 583*3ac0a46fSAndroid Build Coastguard Workerindex 44d0c98e5..6db728d18 100644 584*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/libopenjpeg/jp2.c 585*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/libopenjpeg/jp2.c 586*3ac0a46fSAndroid Build Coastguard Worker@@ -1609,11 +1609,12 @@ static OPJ_BOOL opj_jp2_read_colr(opj_jp2_t *jp2, 587*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 588*3ac0a46fSAndroid Build Coastguard Worker } 589*3ac0a46fSAndroid Build Coastguard Worker 590*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_decode(opj_jp2_t *jp2, 591*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_decode(void *p_jp2, 592*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 593*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 594*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 595*3ac0a46fSAndroid Build Coastguard Worker { 596*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 597*3ac0a46fSAndroid Build Coastguard Worker if (!p_image) { 598*3ac0a46fSAndroid Build Coastguard Worker return OPJ_FALSE; 599*3ac0a46fSAndroid Build Coastguard Worker } 600*3ac0a46fSAndroid Build Coastguard Worker@@ -1905,8 +1906,9 @@ static OPJ_BOOL opj_jp2_write_jp(opj_jp2_t *jp2, 601*3ac0a46fSAndroid Build Coastguard Worker /* JP2 decoder interface */ 602*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 603*3ac0a46fSAndroid Build Coastguard Worker 604*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_setup_decoder(opj_jp2_t *jp2, opj_dparameters_t *parameters) 605*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_setup_decoder(void *p_jp2, opj_dparameters_t *parameters) 606*3ac0a46fSAndroid Build Coastguard Worker { 607*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 608*3ac0a46fSAndroid Build Coastguard Worker /* setup the J2K codec */ 609*3ac0a46fSAndroid Build Coastguard Worker opj_j2k_setup_decoder(jp2->j2k, parameters); 610*3ac0a46fSAndroid Build Coastguard Worker 611*3ac0a46fSAndroid Build Coastguard Worker@@ -1917,13 +1919,15 @@ void opj_jp2_setup_decoder(opj_jp2_t *jp2, opj_dparameters_t *parameters) 612*3ac0a46fSAndroid Build Coastguard Worker OPJ_DPARAMETERS_IGNORE_PCLR_CMAP_CDEF_FLAG; 613*3ac0a46fSAndroid Build Coastguard Worker } 614*3ac0a46fSAndroid Build Coastguard Worker 615*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_decoder_set_strict_mode(opj_jp2_t *jp2, OPJ_BOOL strict) 616*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_decoder_set_strict_mode(void *p_jp2, OPJ_BOOL strict) 617*3ac0a46fSAndroid Build Coastguard Worker { 618*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 619*3ac0a46fSAndroid Build Coastguard Worker opj_j2k_decoder_set_strict_mode(jp2->j2k, strict); 620*3ac0a46fSAndroid Build Coastguard Worker } 621*3ac0a46fSAndroid Build Coastguard Worker 622*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_threads(opj_jp2_t *jp2, OPJ_UINT32 num_threads) 623*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_threads(void *p_jp2, OPJ_UINT32 num_threads) 624*3ac0a46fSAndroid Build Coastguard Worker { 625*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 626*3ac0a46fSAndroid Build Coastguard Worker return opj_j2k_set_threads(jp2->j2k, num_threads); 627*3ac0a46fSAndroid Build Coastguard Worker } 628*3ac0a46fSAndroid Build Coastguard Worker 629*3ac0a46fSAndroid Build Coastguard Worker@@ -1931,11 +1935,12 @@ OPJ_BOOL opj_jp2_set_threads(opj_jp2_t *jp2, OPJ_UINT32 num_threads) 630*3ac0a46fSAndroid Build Coastguard Worker /* JP2 encoder interface */ 631*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 632*3ac0a46fSAndroid Build Coastguard Worker 633*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_setup_encoder(opj_jp2_t *jp2, 634*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_setup_encoder(void *p_jp2, 635*3ac0a46fSAndroid Build Coastguard Worker opj_cparameters_t *parameters, 636*3ac0a46fSAndroid Build Coastguard Worker opj_image_t *image, 637*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 638*3ac0a46fSAndroid Build Coastguard Worker { 639*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 640*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 i; 641*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 depth_0; 642*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 sign; 643*3ac0a46fSAndroid Build Coastguard Worker@@ -2118,18 +2123,20 @@ OPJ_BOOL opj_jp2_setup_encoder(opj_jp2_t *jp2, 644*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 645*3ac0a46fSAndroid Build Coastguard Worker } 646*3ac0a46fSAndroid Build Coastguard Worker 647*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_encode(opj_jp2_t *jp2, 648*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_encode(void *p_jp2, 649*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *stream, 650*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 651*3ac0a46fSAndroid Build Coastguard Worker { 652*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 653*3ac0a46fSAndroid Build Coastguard Worker return opj_j2k_encode(jp2->j2k, stream, p_manager); 654*3ac0a46fSAndroid Build Coastguard Worker } 655*3ac0a46fSAndroid Build Coastguard Worker 656*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_end_decompress(opj_jp2_t *jp2, 657*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_end_decompress(void *p_jp2, 658*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 659*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 660*3ac0a46fSAndroid Build Coastguard Worker ) 661*3ac0a46fSAndroid Build Coastguard Worker { 662*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 663*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 664*3ac0a46fSAndroid Build Coastguard Worker assert(jp2 != 00); 665*3ac0a46fSAndroid Build Coastguard Worker assert(cio != 00); 666*3ac0a46fSAndroid Build Coastguard Worker@@ -2148,11 +2155,12 @@ OPJ_BOOL opj_jp2_end_decompress(opj_jp2_t *jp2, 667*3ac0a46fSAndroid Build Coastguard Worker return opj_j2k_end_decompress(jp2->j2k, cio, p_manager); 668*3ac0a46fSAndroid Build Coastguard Worker } 669*3ac0a46fSAndroid Build Coastguard Worker 670*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_end_compress(opj_jp2_t *jp2, 671*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_end_compress(void *p_jp2, 672*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 673*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 674*3ac0a46fSAndroid Build Coastguard Worker ) 675*3ac0a46fSAndroid Build Coastguard Worker { 676*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 677*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 678*3ac0a46fSAndroid Build Coastguard Worker assert(jp2 != 00); 679*3ac0a46fSAndroid Build Coastguard Worker assert(cio != 00); 680*3ac0a46fSAndroid Build Coastguard Worker@@ -2476,12 +2484,13 @@ static OPJ_BOOL opj_jp2_exec(opj_jp2_t * jp2, 681*3ac0a46fSAndroid Build Coastguard Worker return l_result; 682*3ac0a46fSAndroid Build Coastguard Worker } 683*3ac0a46fSAndroid Build Coastguard Worker 684*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_start_compress(opj_jp2_t *jp2, 685*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_start_compress(void *p_jp2, 686*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *stream, 687*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * p_image, 688*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 689*3ac0a46fSAndroid Build Coastguard Worker ) 690*3ac0a46fSAndroid Build Coastguard Worker { 691*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 692*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 693*3ac0a46fSAndroid Build Coastguard Worker assert(jp2 != 00); 694*3ac0a46fSAndroid Build Coastguard Worker assert(stream != 00); 695*3ac0a46fSAndroid Build Coastguard Worker@@ -2854,11 +2863,12 @@ static OPJ_BOOL opj_jp2_read_boxhdr_char(opj_jp2_box_t *box, 696*3ac0a46fSAndroid Build Coastguard Worker } 697*3ac0a46fSAndroid Build Coastguard Worker 698*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_jp2_read_header(opj_stream_private_t *p_stream, 699*3ac0a46fSAndroid Build Coastguard Worker- opj_jp2_t *jp2, 700*3ac0a46fSAndroid Build Coastguard Worker+ void *p_jp2, 701*3ac0a46fSAndroid Build Coastguard Worker opj_image_t ** p_image, 702*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 703*3ac0a46fSAndroid Build Coastguard Worker ) 704*3ac0a46fSAndroid Build Coastguard Worker { 705*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 706*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 707*3ac0a46fSAndroid Build Coastguard Worker assert(jp2 != 00); 708*3ac0a46fSAndroid Build Coastguard Worker assert(p_stream != 00); 709*3ac0a46fSAndroid Build Coastguard Worker@@ -2981,7 +2991,7 @@ static OPJ_BOOL opj_jp2_setup_header_reading(opj_jp2_t *jp2, 710*3ac0a46fSAndroid Build Coastguard Worker return OPJ_TRUE; 711*3ac0a46fSAndroid Build Coastguard Worker } 712*3ac0a46fSAndroid Build Coastguard Worker 713*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_read_tile_header(opj_jp2_t * p_jp2, 714*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_read_tile_header(void *p_jp2, 715*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_tile_index, 716*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_data_size, 717*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 * p_tile_x0, 718*3ac0a46fSAndroid Build Coastguard Worker@@ -2994,7 +3004,8 @@ OPJ_BOOL opj_jp2_read_tile_header(opj_jp2_t * p_jp2, 719*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 720*3ac0a46fSAndroid Build Coastguard Worker ) 721*3ac0a46fSAndroid Build Coastguard Worker { 722*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_read_tile_header(p_jp2->j2k, 723*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 724*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_read_tile_header(jp2->j2k, 725*3ac0a46fSAndroid Build Coastguard Worker p_tile_index, 726*3ac0a46fSAndroid Build Coastguard Worker p_data_size, 727*3ac0a46fSAndroid Build Coastguard Worker p_tile_x0, p_tile_y0, 728*3ac0a46fSAndroid Build Coastguard Worker@@ -3005,7 +3016,7 @@ OPJ_BOOL opj_jp2_read_tile_header(opj_jp2_t * p_jp2, 729*3ac0a46fSAndroid Build Coastguard Worker p_manager); 730*3ac0a46fSAndroid Build Coastguard Worker } 731*3ac0a46fSAndroid Build Coastguard Worker 732*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_write_tile(opj_jp2_t *p_jp2, 733*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_write_tile(void *p_jp2, 734*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 735*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 736*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 737*3ac0a46fSAndroid Build Coastguard Worker@@ -3014,11 +3025,12 @@ OPJ_BOOL opj_jp2_write_tile(opj_jp2_t *p_jp2, 738*3ac0a46fSAndroid Build Coastguard Worker ) 739*3ac0a46fSAndroid Build Coastguard Worker 740*3ac0a46fSAndroid Build Coastguard Worker { 741*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_write_tile(p_jp2->j2k, p_tile_index, p_data, p_data_size, 742*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 743*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_write_tile(jp2->j2k, p_tile_index, p_data, p_data_size, 744*3ac0a46fSAndroid Build Coastguard Worker p_stream, p_manager); 745*3ac0a46fSAndroid Build Coastguard Worker } 746*3ac0a46fSAndroid Build Coastguard Worker 747*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_decode_tile(opj_jp2_t * p_jp2, 748*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_decode_tile(void *p_jp2, 749*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 750*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 751*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 752*3ac0a46fSAndroid Build Coastguard Worker@@ -3026,12 +3038,14 @@ OPJ_BOOL opj_jp2_decode_tile(opj_jp2_t * p_jp2, 753*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 754*3ac0a46fSAndroid Build Coastguard Worker ) 755*3ac0a46fSAndroid Build Coastguard Worker { 756*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_decode_tile(p_jp2->j2k, p_tile_index, p_data, p_data_size, 757*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 758*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_decode_tile(jp2->j2k, p_tile_index, p_data, p_data_size, 759*3ac0a46fSAndroid Build Coastguard Worker p_stream, p_manager); 760*3ac0a46fSAndroid Build Coastguard Worker } 761*3ac0a46fSAndroid Build Coastguard Worker 762*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_destroy(opj_jp2_t *jp2) 763*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_destroy(void *p_jp2) 764*3ac0a46fSAndroid Build Coastguard Worker { 765*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 766*3ac0a46fSAndroid Build Coastguard Worker if (jp2) { 767*3ac0a46fSAndroid Build Coastguard Worker /* destroy the J2K codec */ 768*3ac0a46fSAndroid Build Coastguard Worker opj_j2k_destroy(jp2->j2k); 769*3ac0a46fSAndroid Build Coastguard Worker@@ -3098,34 +3112,37 @@ void opj_jp2_destroy(opj_jp2_t *jp2) 770*3ac0a46fSAndroid Build Coastguard Worker } 771*3ac0a46fSAndroid Build Coastguard Worker } 772*3ac0a46fSAndroid Build Coastguard Worker 773*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decoded_components(opj_jp2_t *p_jp2, 774*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decoded_components(void *p_jp2, 775*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 numcomps, 776*3ac0a46fSAndroid Build Coastguard Worker const OPJ_UINT32* comps_indices, 777*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 778*3ac0a46fSAndroid Build Coastguard Worker { 779*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_set_decoded_components(p_jp2->j2k, 780*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 781*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_set_decoded_components(jp2->j2k, 782*3ac0a46fSAndroid Build Coastguard Worker numcomps, comps_indices, 783*3ac0a46fSAndroid Build Coastguard Worker p_manager); 784*3ac0a46fSAndroid Build Coastguard Worker } 785*3ac0a46fSAndroid Build Coastguard Worker 786*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decode_area(opj_jp2_t *p_jp2, 787*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decode_area(void *p_jp2, 788*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 789*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_start_x, OPJ_INT32 p_start_y, 790*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_end_x, OPJ_INT32 p_end_y, 791*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager 792*3ac0a46fSAndroid Build Coastguard Worker ) 793*3ac0a46fSAndroid Build Coastguard Worker { 794*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_set_decode_area(p_jp2->j2k, p_image, p_start_x, p_start_y, 795*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 796*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_set_decode_area(jp2->j2k, p_image, p_start_x, p_start_y, 797*3ac0a46fSAndroid Build Coastguard Worker p_end_x, p_end_y, p_manager); 798*3ac0a46fSAndroid Build Coastguard Worker } 799*3ac0a46fSAndroid Build Coastguard Worker 800*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_get_tile(opj_jp2_t *p_jp2, 801*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_get_tile(void *jp2, 802*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 803*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 804*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager, 805*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 tile_index 806*3ac0a46fSAndroid Build Coastguard Worker ) 807*3ac0a46fSAndroid Build Coastguard Worker { 808*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *p_jp2 = (opj_jp2_t*)jp2; 809*3ac0a46fSAndroid Build Coastguard Worker if (!p_image) { 810*3ac0a46fSAndroid Build Coastguard Worker return OPJ_FALSE; 811*3ac0a46fSAndroid Build Coastguard Worker } 812*3ac0a46fSAndroid Build Coastguard Worker@@ -3234,41 +3251,46 @@ opj_jp2_t* opj_jp2_create(OPJ_BOOL p_is_decoder) 813*3ac0a46fSAndroid Build Coastguard Worker return jp2; 814*3ac0a46fSAndroid Build Coastguard Worker } 815*3ac0a46fSAndroid Build Coastguard Worker 816*3ac0a46fSAndroid Build Coastguard Worker-void jp2_dump(opj_jp2_t* p_jp2, OPJ_INT32 flag, FILE* out_stream) 817*3ac0a46fSAndroid Build Coastguard Worker+void jp2_dump(void* p_jp2, OPJ_INT32 flag, FILE* out_stream) 818*3ac0a46fSAndroid Build Coastguard Worker { 819*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 820*3ac0a46fSAndroid Build Coastguard Worker /* preconditions */ 821*3ac0a46fSAndroid Build Coastguard Worker assert(p_jp2 != 00); 822*3ac0a46fSAndroid Build Coastguard Worker 823*3ac0a46fSAndroid Build Coastguard Worker- j2k_dump(p_jp2->j2k, 824*3ac0a46fSAndroid Build Coastguard Worker+ j2k_dump(jp2->j2k, 825*3ac0a46fSAndroid Build Coastguard Worker flag, 826*3ac0a46fSAndroid Build Coastguard Worker out_stream); 827*3ac0a46fSAndroid Build Coastguard Worker } 828*3ac0a46fSAndroid Build Coastguard Worker 829*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_index_t* jp2_get_cstr_index(opj_jp2_t* p_jp2) 830*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_index_t* jp2_get_cstr_index(void* p_jp2) 831*3ac0a46fSAndroid Build Coastguard Worker { 832*3ac0a46fSAndroid Build Coastguard Worker- return j2k_get_cstr_index(p_jp2->j2k); 833*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 834*3ac0a46fSAndroid Build Coastguard Worker+ return j2k_get_cstr_index(jp2->j2k); 835*3ac0a46fSAndroid Build Coastguard Worker } 836*3ac0a46fSAndroid Build Coastguard Worker 837*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_info_v2_t* jp2_get_cstr_info(opj_jp2_t* p_jp2) 838*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_info_v2_t* jp2_get_cstr_info(void* p_jp2) 839*3ac0a46fSAndroid Build Coastguard Worker { 840*3ac0a46fSAndroid Build Coastguard Worker- return j2k_get_cstr_info(p_jp2->j2k); 841*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 842*3ac0a46fSAndroid Build Coastguard Worker+ return j2k_get_cstr_info(jp2->j2k); 843*3ac0a46fSAndroid Build Coastguard Worker } 844*3ac0a46fSAndroid Build Coastguard Worker 845*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decoded_resolution_factor(opj_jp2_t *p_jp2, 846*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decoded_resolution_factor(void *p_jp2, 847*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 res_factor, 848*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 849*3ac0a46fSAndroid Build Coastguard Worker { 850*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_set_decoded_resolution_factor(p_jp2->j2k, res_factor, p_manager); 851*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 852*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_set_decoded_resolution_factor(jp2->j2k, res_factor, p_manager); 853*3ac0a46fSAndroid Build Coastguard Worker } 854*3ac0a46fSAndroid Build Coastguard Worker 855*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 856*3ac0a46fSAndroid Build Coastguard Worker 857*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_jp2_encoder_set_extra_options( 858*3ac0a46fSAndroid Build Coastguard Worker- opj_jp2_t *p_jp2, 859*3ac0a46fSAndroid Build Coastguard Worker+ void *p_jp2, 860*3ac0a46fSAndroid Build Coastguard Worker const char* const* p_options, 861*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager) 862*3ac0a46fSAndroid Build Coastguard Worker { 863*3ac0a46fSAndroid Build Coastguard Worker- return opj_j2k_encoder_set_extra_options(p_jp2->j2k, p_options, p_manager); 864*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_t *jp2 = (opj_jp2_t*)p_jp2; 865*3ac0a46fSAndroid Build Coastguard Worker+ return opj_j2k_encoder_set_extra_options(jp2->j2k, p_options, p_manager); 866*3ac0a46fSAndroid Build Coastguard Worker } 867*3ac0a46fSAndroid Build Coastguard Worker 868*3ac0a46fSAndroid Build Coastguard Worker /* ----------------------------------------------------------------------- */ 869*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/libopenjpeg/jp2.h b/third_party/libopenjpeg/jp2.h 870*3ac0a46fSAndroid Build Coastguard Workerindex 173f25119..fd9175a4e 100644 871*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/libopenjpeg/jp2.h 872*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/libopenjpeg/jp2.h 873*3ac0a46fSAndroid Build Coastguard Worker@@ -230,38 +230,38 @@ opj_jp2_img_header_writer_handler_t; 874*3ac0a46fSAndroid Build Coastguard Worker /** 875*3ac0a46fSAndroid Build Coastguard Worker Setup the decoder decoding parameters using user parameters. 876*3ac0a46fSAndroid Build Coastguard Worker Decoding parameters are returned in jp2->j2k->cp. 877*3ac0a46fSAndroid Build Coastguard Worker-@param jp2 JP2 decompressor handle 878*3ac0a46fSAndroid Build Coastguard Worker+@param p_jp2 JP2 decompressor handle 879*3ac0a46fSAndroid Build Coastguard Worker @param parameters decompression parameters 880*3ac0a46fSAndroid Build Coastguard Worker */ 881*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_setup_decoder(opj_jp2_t *jp2, opj_dparameters_t *parameters); 882*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_setup_decoder(void *p_jp2, opj_dparameters_t *parameters); 883*3ac0a46fSAndroid Build Coastguard Worker 884*3ac0a46fSAndroid Build Coastguard Worker /** 885*3ac0a46fSAndroid Build Coastguard Worker Set the strict mode parameter. When strict mode is enabled, the entire 886*3ac0a46fSAndroid Build Coastguard Worker bitstream must be decoded or an error is returned. When it is disabled, 887*3ac0a46fSAndroid Build Coastguard Worker the decoder will decode partial bitstreams. 888*3ac0a46fSAndroid Build Coastguard Worker-@param jp2 JP2 decompressor handle 889*3ac0a46fSAndroid Build Coastguard Worker+@param p_jp2 JP2 decompressor handle 890*3ac0a46fSAndroid Build Coastguard Worker @param strict OPJ_TRUE for strict mode 891*3ac0a46fSAndroid Build Coastguard Worker */ 892*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_decoder_set_strict_mode(opj_jp2_t *jp2, OPJ_BOOL strict); 893*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_decoder_set_strict_mode(void *p_jp2, OPJ_BOOL strict); 894*3ac0a46fSAndroid Build Coastguard Worker 895*3ac0a46fSAndroid Build Coastguard Worker /** Allocates worker threads for the compressor/decompressor. 896*3ac0a46fSAndroid Build Coastguard Worker * 897*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 JP2 decompressor handle 898*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 JP2 decompressor handle 899*3ac0a46fSAndroid Build Coastguard Worker * @param num_threads Number of threads. 900*3ac0a46fSAndroid Build Coastguard Worker * @return OPJ_TRUE in case of success. 901*3ac0a46fSAndroid Build Coastguard Worker */ 902*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_threads(opj_jp2_t *jp2, OPJ_UINT32 num_threads); 903*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_threads(void *p_jp2, OPJ_UINT32 num_threads); 904*3ac0a46fSAndroid Build Coastguard Worker 905*3ac0a46fSAndroid Build Coastguard Worker /** 906*3ac0a46fSAndroid Build Coastguard Worker * Decode an image from a JPEG-2000 file stream 907*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 JP2 decompressor handle 908*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 JP2 decompressor handle 909*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream FIXME DOC 910*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 911*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager FIXME DOC 912*3ac0a46fSAndroid Build Coastguard Worker * 913*3ac0a46fSAndroid Build Coastguard Worker * @return Returns a decoded image if successful, returns NULL otherwise 914*3ac0a46fSAndroid Build Coastguard Worker */ 915*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_decode(opj_jp2_t *jp2, 916*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_decode(void *p_jp2, 917*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 918*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 919*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 920*3ac0a46fSAndroid Build Coastguard Worker@@ -270,25 +270,25 @@ OPJ_BOOL opj_jp2_decode(opj_jp2_t *jp2, 921*3ac0a46fSAndroid Build Coastguard Worker * Setup the encoder parameters using the current image and using user parameters. 922*3ac0a46fSAndroid Build Coastguard Worker * Coding parameters are returned in jp2->j2k->cp. 923*3ac0a46fSAndroid Build Coastguard Worker * 924*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 JP2 compressor handle 925*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 JP2 compressor handle 926*3ac0a46fSAndroid Build Coastguard Worker * @param parameters compression parameters 927*3ac0a46fSAndroid Build Coastguard Worker * @param image input filled image 928*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager FIXME DOC 929*3ac0a46fSAndroid Build Coastguard Worker * @return OPJ_TRUE if successful, OPJ_FALSE otherwise 930*3ac0a46fSAndroid Build Coastguard Worker */ 931*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_setup_encoder(opj_jp2_t *jp2, 932*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_setup_encoder(void *p_jp2, 933*3ac0a46fSAndroid Build Coastguard Worker opj_cparameters_t *parameters, 934*3ac0a46fSAndroid Build Coastguard Worker opj_image_t *image, 935*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 936*3ac0a46fSAndroid Build Coastguard Worker 937*3ac0a46fSAndroid Build Coastguard Worker /** 938*3ac0a46fSAndroid Build Coastguard Worker Encode an image into a JPEG-2000 file stream 939*3ac0a46fSAndroid Build Coastguard Worker-@param jp2 JP2 compressor handle 940*3ac0a46fSAndroid Build Coastguard Worker+@param p_jp2 JP2 compressor handle 941*3ac0a46fSAndroid Build Coastguard Worker @param stream Output buffer stream 942*3ac0a46fSAndroid Build Coastguard Worker @param p_manager event manager 943*3ac0a46fSAndroid Build Coastguard Worker @return Returns true if successful, returns false otherwise 944*3ac0a46fSAndroid Build Coastguard Worker */ 945*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_encode(opj_jp2_t *jp2, 946*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_encode(void *p_jp2, 947*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *stream, 948*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 949*3ac0a46fSAndroid Build Coastguard Worker 950*3ac0a46fSAndroid Build Coastguard Worker@@ -296,14 +296,14 @@ OPJ_BOOL opj_jp2_encode(opj_jp2_t *jp2, 951*3ac0a46fSAndroid Build Coastguard Worker /** 952*3ac0a46fSAndroid Build Coastguard Worker * Starts a compression scheme, i.e. validates the codec parameters, writes the header. 953*3ac0a46fSAndroid Build Coastguard Worker * 954*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 the jpeg2000 file codec. 955*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 the jpeg2000 file codec. 956*3ac0a46fSAndroid Build Coastguard Worker * @param stream the stream object. 957*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 958*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager FIXME DOC 959*3ac0a46fSAndroid Build Coastguard Worker * 960*3ac0a46fSAndroid Build Coastguard Worker * @return true if the codec is valid. 961*3ac0a46fSAndroid Build Coastguard Worker */ 962*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_start_compress(opj_jp2_t *jp2, 963*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_start_compress(void *p_jp2, 964*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *stream, 965*3ac0a46fSAndroid Build Coastguard Worker opj_image_t * p_image, 966*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 967*3ac0a46fSAndroid Build Coastguard Worker@@ -313,7 +313,7 @@ OPJ_BOOL opj_jp2_start_compress(opj_jp2_t *jp2, 968*3ac0a46fSAndroid Build Coastguard Worker * Ends the compression procedures and possibiliy add data to be read after the 969*3ac0a46fSAndroid Build Coastguard Worker * codestream. 970*3ac0a46fSAndroid Build Coastguard Worker */ 971*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_end_compress(opj_jp2_t *jp2, 972*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_end_compress(void *p_jp2, 973*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 974*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 975*3ac0a46fSAndroid Build Coastguard Worker 976*3ac0a46fSAndroid Build Coastguard Worker@@ -323,7 +323,7 @@ OPJ_BOOL opj_jp2_end_compress(opj_jp2_t *jp2, 977*3ac0a46fSAndroid Build Coastguard Worker * Ends the decompression procedures and possibiliy add data to be read after the 978*3ac0a46fSAndroid Build Coastguard Worker * codestream. 979*3ac0a46fSAndroid Build Coastguard Worker */ 980*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_end_decompress(opj_jp2_t *jp2, 981*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_end_decompress(void *p_jp2, 982*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *cio, 983*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 984*3ac0a46fSAndroid Build Coastguard Worker 985*3ac0a46fSAndroid Build Coastguard Worker@@ -331,20 +331,20 @@ OPJ_BOOL opj_jp2_end_decompress(opj_jp2_t *jp2, 986*3ac0a46fSAndroid Build Coastguard Worker * Reads a jpeg2000 file header structure. 987*3ac0a46fSAndroid Build Coastguard Worker * 988*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to read data from. 989*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 the jpeg2000 file header structure. 990*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 the jpeg2000 file header structure. 991*3ac0a46fSAndroid Build Coastguard Worker * @param p_image FIXME DOC 992*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 993*3ac0a46fSAndroid Build Coastguard Worker * 994*3ac0a46fSAndroid Build Coastguard Worker * @return true if the box is valid. 995*3ac0a46fSAndroid Build Coastguard Worker */ 996*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_jp2_read_header(opj_stream_private_t *p_stream, 997*3ac0a46fSAndroid Build Coastguard Worker- opj_jp2_t *jp2, 998*3ac0a46fSAndroid Build Coastguard Worker+ void *p_jp2, 999*3ac0a46fSAndroid Build Coastguard Worker opj_image_t ** p_image, 1000*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 1001*3ac0a46fSAndroid Build Coastguard Worker 1002*3ac0a46fSAndroid Build Coastguard Worker /** Sets the indices of the components to decode. 1003*3ac0a46fSAndroid Build Coastguard Worker * 1004*3ac0a46fSAndroid Build Coastguard Worker- * @param jp2 JP2 decompressor handle 1005*3ac0a46fSAndroid Build Coastguard Worker+ * @param p_jp2 JP2 decompressor handle 1006*3ac0a46fSAndroid Build Coastguard Worker * @param numcomps Number of components to decode. 1007*3ac0a46fSAndroid Build Coastguard Worker * @param comps_indices Array of num_compts indices (numbering starting at 0) 1008*3ac0a46fSAndroid Build Coastguard Worker * corresponding to the components to decode. 1009*3ac0a46fSAndroid Build Coastguard Worker@@ -352,7 +352,7 @@ OPJ_BOOL opj_jp2_read_header(opj_stream_private_t *p_stream, 1010*3ac0a46fSAndroid Build Coastguard Worker * 1011*3ac0a46fSAndroid Build Coastguard Worker * @return OPJ_TRUE in case of success. 1012*3ac0a46fSAndroid Build Coastguard Worker */ 1013*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decoded_components(opj_jp2_t *jp2, 1014*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decoded_components(void *p_jp2, 1015*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 numcomps, 1016*3ac0a46fSAndroid Build Coastguard Worker const OPJ_UINT32* comps_indices, 1017*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 1018*3ac0a46fSAndroid Build Coastguard Worker@@ -371,7 +371,7 @@ OPJ_BOOL opj_jp2_set_decoded_components(opj_jp2_t *jp2, 1019*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to write data to. 1020*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 1021*3ac0a46fSAndroid Build Coastguard Worker */ 1022*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_read_tile_header(opj_jp2_t * p_jp2, 1023*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_read_tile_header(void * p_jp2, 1024*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_tile_index, 1025*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 * p_data_size, 1026*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 * p_tile_x0, 1027*3ac0a46fSAndroid Build Coastguard Worker@@ -393,7 +393,7 @@ OPJ_BOOL opj_jp2_read_tile_header(opj_jp2_t * p_jp2, 1028*3ac0a46fSAndroid Build Coastguard Worker * @param p_stream the stream to write data to. 1029*3ac0a46fSAndroid Build Coastguard Worker * @param p_manager the user event manager. 1030*3ac0a46fSAndroid Build Coastguard Worker */ 1031*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_write_tile(opj_jp2_t *p_jp2, 1032*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_write_tile(void *p_jp2, 1033*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 1034*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 1035*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 1036*3ac0a46fSAndroid Build Coastguard Worker@@ -411,7 +411,7 @@ OPJ_BOOL opj_jp2_write_tile(opj_jp2_t *p_jp2, 1037*3ac0a46fSAndroid Build Coastguard Worker * 1038*3ac0a46fSAndroid Build Coastguard Worker * @return FIXME DOC 1039*3ac0a46fSAndroid Build Coastguard Worker */ 1040*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_decode_tile(opj_jp2_t * p_jp2, 1041*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_decode_tile(void * p_jp2, 1042*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_tile_index, 1043*3ac0a46fSAndroid Build Coastguard Worker OPJ_BYTE * p_data, 1044*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 p_data_size, 1045*3ac0a46fSAndroid Build Coastguard Worker@@ -427,9 +427,9 @@ opj_jp2_t* opj_jp2_create(OPJ_BOOL p_is_decoder); 1046*3ac0a46fSAndroid Build Coastguard Worker 1047*3ac0a46fSAndroid Build Coastguard Worker /** 1048*3ac0a46fSAndroid Build Coastguard Worker Destroy a JP2 decompressor handle 1049*3ac0a46fSAndroid Build Coastguard Worker-@param jp2 JP2 decompressor handle to destroy 1050*3ac0a46fSAndroid Build Coastguard Worker+@param p_jp2 JP2 decompressor handle to destroy 1051*3ac0a46fSAndroid Build Coastguard Worker */ 1052*3ac0a46fSAndroid Build Coastguard Worker-void opj_jp2_destroy(opj_jp2_t *jp2); 1053*3ac0a46fSAndroid Build Coastguard Worker+void opj_jp2_destroy(void *p_jp2); 1054*3ac0a46fSAndroid Build Coastguard Worker 1055*3ac0a46fSAndroid Build Coastguard Worker 1056*3ac0a46fSAndroid Build Coastguard Worker /** 1057*3ac0a46fSAndroid Build Coastguard Worker@@ -445,7 +445,7 @@ void opj_jp2_destroy(opj_jp2_t *jp2); 1058*3ac0a46fSAndroid Build Coastguard Worker * 1059*3ac0a46fSAndroid Build Coastguard Worker * @return true if the area could be set. 1060*3ac0a46fSAndroid Build Coastguard Worker */ 1061*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decode_area(opj_jp2_t *p_jp2, 1062*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decode_area(void *p_jp2, 1063*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 1064*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_start_x, OPJ_INT32 p_start_y, 1065*3ac0a46fSAndroid Build Coastguard Worker OPJ_INT32 p_end_x, OPJ_INT32 p_end_y, 1066*3ac0a46fSAndroid Build Coastguard Worker@@ -454,7 +454,7 @@ OPJ_BOOL opj_jp2_set_decode_area(opj_jp2_t *p_jp2, 1067*3ac0a46fSAndroid Build Coastguard Worker /** 1068*3ac0a46fSAndroid Build Coastguard Worker * 1069*3ac0a46fSAndroid Build Coastguard Worker */ 1070*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_get_tile(opj_jp2_t *p_jp2, 1071*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_get_tile(void *jp2, 1072*3ac0a46fSAndroid Build Coastguard Worker opj_stream_private_t *p_stream, 1073*3ac0a46fSAndroid Build Coastguard Worker opj_image_t* p_image, 1074*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager, 1075*3ac0a46fSAndroid Build Coastguard Worker@@ -464,7 +464,7 @@ OPJ_BOOL opj_jp2_get_tile(opj_jp2_t *p_jp2, 1076*3ac0a46fSAndroid Build Coastguard Worker /** 1077*3ac0a46fSAndroid Build Coastguard Worker * 1078*3ac0a46fSAndroid Build Coastguard Worker */ 1079*3ac0a46fSAndroid Build Coastguard Worker-OPJ_BOOL opj_jp2_set_decoded_resolution_factor(opj_jp2_t *p_jp2, 1080*3ac0a46fSAndroid Build Coastguard Worker+OPJ_BOOL opj_jp2_set_decoded_resolution_factor(void *p_jp2, 1081*3ac0a46fSAndroid Build Coastguard Worker OPJ_UINT32 res_factor, 1082*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 1083*3ac0a46fSAndroid Build Coastguard Worker 1084*3ac0a46fSAndroid Build Coastguard Worker@@ -478,7 +478,7 @@ OPJ_BOOL opj_jp2_set_decoded_resolution_factor(opj_jp2_t *p_jp2, 1085*3ac0a46fSAndroid Build Coastguard Worker * @see opj_encoder_set_extra_options() for more details. 1086*3ac0a46fSAndroid Build Coastguard Worker */ 1087*3ac0a46fSAndroid Build Coastguard Worker OPJ_BOOL opj_jp2_encoder_set_extra_options( 1088*3ac0a46fSAndroid Build Coastguard Worker- opj_jp2_t *p_jp2, 1089*3ac0a46fSAndroid Build Coastguard Worker+ void *p_jp2, 1090*3ac0a46fSAndroid Build Coastguard Worker const char* const* p_options, 1091*3ac0a46fSAndroid Build Coastguard Worker opj_event_mgr_t * p_manager); 1092*3ac0a46fSAndroid Build Coastguard Worker 1093*3ac0a46fSAndroid Build Coastguard Worker@@ -492,7 +492,7 @@ OPJ_BOOL opj_jp2_encoder_set_extra_options( 1094*3ac0a46fSAndroid Build Coastguard Worker *@param out_stream output stream where dump the elements. 1095*3ac0a46fSAndroid Build Coastguard Worker * 1096*3ac0a46fSAndroid Build Coastguard Worker */ 1097*3ac0a46fSAndroid Build Coastguard Worker-void jp2_dump(opj_jp2_t* p_jp2, OPJ_INT32 flag, FILE* out_stream); 1098*3ac0a46fSAndroid Build Coastguard Worker+void jp2_dump(void* p_jp2, OPJ_INT32 flag, FILE* out_stream); 1099*3ac0a46fSAndroid Build Coastguard Worker 1100*3ac0a46fSAndroid Build Coastguard Worker /** 1101*3ac0a46fSAndroid Build Coastguard Worker * Get the codestream info from a JPEG2000 codec. 1102*3ac0a46fSAndroid Build Coastguard Worker@@ -501,7 +501,7 @@ void jp2_dump(opj_jp2_t* p_jp2, OPJ_INT32 flag, FILE* out_stream); 1103*3ac0a46fSAndroid Build Coastguard Worker * 1104*3ac0a46fSAndroid Build Coastguard Worker *@return the codestream information extract from the jpg2000 codec 1105*3ac0a46fSAndroid Build Coastguard Worker */ 1106*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_info_v2_t* jp2_get_cstr_info(opj_jp2_t* p_jp2); 1107*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_info_v2_t* jp2_get_cstr_info(void* p_jp2); 1108*3ac0a46fSAndroid Build Coastguard Worker 1109*3ac0a46fSAndroid Build Coastguard Worker /** 1110*3ac0a46fSAndroid Build Coastguard Worker * Get the codestream index from a JPEG2000 codec. 1111*3ac0a46fSAndroid Build Coastguard Worker@@ -510,7 +510,7 @@ opj_codestream_info_v2_t* jp2_get_cstr_info(opj_jp2_t* p_jp2); 1112*3ac0a46fSAndroid Build Coastguard Worker * 1113*3ac0a46fSAndroid Build Coastguard Worker *@return the codestream index extract from the jpg2000 codec 1114*3ac0a46fSAndroid Build Coastguard Worker */ 1115*3ac0a46fSAndroid Build Coastguard Worker-opj_codestream_index_t* jp2_get_cstr_index(opj_jp2_t* p_jp2); 1116*3ac0a46fSAndroid Build Coastguard Worker+opj_codestream_index_t* jp2_get_cstr_index(void* p_jp2); 1117*3ac0a46fSAndroid Build Coastguard Worker 1118*3ac0a46fSAndroid Build Coastguard Worker 1119*3ac0a46fSAndroid Build Coastguard Worker /*@}*/ 1120*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/libopenjpeg/openjpeg.c b/third_party/libopenjpeg/openjpeg.c 1121*3ac0a46fSAndroid Build Coastguard Workerindex 29d3ee528..9dd4256d7 100644 1122*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/libopenjpeg/openjpeg.c 1123*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/libopenjpeg/openjpeg.c 1124*3ac0a46fSAndroid Build Coastguard Worker@@ -189,85 +189,48 @@ opj_codec_t* OPJ_CALLCONV opj_create_decompress(OPJ_CODEC_FORMAT p_format) 1125*3ac0a46fSAndroid Build Coastguard Worker 1126*3ac0a46fSAndroid Build Coastguard Worker switch (p_format) { 1127*3ac0a46fSAndroid Build Coastguard Worker case OPJ_CODEC_J2K: 1128*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_dump_codec = (void (*)(void*, OPJ_INT32, FILE*)) j2k_dump; 1129*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_dump_codec = j2k_dump; 1130*3ac0a46fSAndroid Build Coastguard Worker 1131*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_get_codec_info = (opj_codestream_info_v2_t* (*)( 1132*3ac0a46fSAndroid Build Coastguard Worker- void*)) j2k_get_cstr_info; 1133*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_get_codec_info = j2k_get_cstr_info; 1134*3ac0a46fSAndroid Build Coastguard Worker 1135*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_get_codec_index = (opj_codestream_index_t* (*)( 1136*3ac0a46fSAndroid Build Coastguard Worker- void*)) j2k_get_cstr_index; 1137*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_get_codec_index = j2k_get_cstr_index; 1138*3ac0a46fSAndroid Build Coastguard Worker 1139*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_decompression.opj_decode = 1140*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1141*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1142*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t*, struct opj_event_mgr *)) opj_j2k_decode; 1143*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_decompression.opj_decode = opj_j2k_decode; 1144*3ac0a46fSAndroid Build Coastguard Worker 1145*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_end_decompress = 1146*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1147*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1148*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_end_decompress; 1149*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_end_decompress; 1150*3ac0a46fSAndroid Build Coastguard Worker 1151*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_read_header = 1152*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(struct opj_stream_private *, 1153*3ac0a46fSAndroid Build Coastguard Worker- void *, 1154*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t **, 1155*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_read_header; 1156*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_read_header; 1157*3ac0a46fSAndroid Build Coastguard Worker 1158*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_decompression.opj_destroy = 1159*3ac0a46fSAndroid Build Coastguard Worker- (void (*)(void *))opj_j2k_destroy; 1160*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_decompression.opj_destroy = opj_j2k_destroy; 1161*3ac0a46fSAndroid Build Coastguard Worker 1162*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_setup_decoder = 1163*3ac0a46fSAndroid Build Coastguard Worker- (void (*)(void *, opj_dparameters_t *)) opj_j2k_setup_decoder; 1164*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_setup_decoder; 1165*3ac0a46fSAndroid Build Coastguard Worker 1166*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_decoder_set_strict_mode = 1167*3ac0a46fSAndroid Build Coastguard Worker- (void (*)(void *, OPJ_BOOL)) opj_j2k_decoder_set_strict_mode; 1168*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_decoder_set_strict_mode; 1169*3ac0a46fSAndroid Build Coastguard Worker 1170*3ac0a46fSAndroid Build Coastguard Worker 1171*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_read_tile_header = 1172*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1173*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32*, 1174*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32*, 1175*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32*, OPJ_INT32*, 1176*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32*, OPJ_INT32*, 1177*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32*, 1178*3ac0a46fSAndroid Build Coastguard Worker- OPJ_BOOL*, 1179*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1180*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_read_tile_header; 1181*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_read_tile_header; 1182*3ac0a46fSAndroid Build Coastguard Worker 1183*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_decode_tile_data = 1184*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1185*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1186*3ac0a46fSAndroid Build Coastguard Worker- OPJ_BYTE*, 1187*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1188*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1189*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_decode_tile; 1190*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_decode_tile; 1191*3ac0a46fSAndroid Build Coastguard Worker 1192*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decode_area = 1193*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1194*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t*, 1195*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32, OPJ_INT32, OPJ_INT32, OPJ_INT32, 1196*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_set_decode_area; 1197*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_set_decode_area; 1198*3ac0a46fSAndroid Build Coastguard Worker 1199*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_get_decoded_tile = 1200*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *p_codec, 1201*3ac0a46fSAndroid Build Coastguard Worker- opj_stream_private_t *p_cio, 1202*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t *p_image, 1203*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr * p_manager, 1204*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 tile_index)) opj_j2k_get_tile; 1205*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_get_tile; 1206*3ac0a46fSAndroid Build Coastguard Worker 1207*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decoded_resolution_factor = 1208*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, 1209*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 res_factor, 1210*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr * p_manager)) opj_j2k_set_decoded_resolution_factor; 1211*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_set_decoded_resolution_factor; 1212*3ac0a46fSAndroid Build Coastguard Worker 1213*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decoded_components = 1214*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, 1215*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 numcomps, 1216*3ac0a46fSAndroid Build Coastguard Worker- const OPJ_UINT32 * comps_indices, 1217*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr * p_manager)) opj_j2k_set_decoded_components; 1218*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_set_decoded_components; 1219*3ac0a46fSAndroid Build Coastguard Worker 1220*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_set_threads = 1221*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, OPJ_UINT32 num_threads)) opj_j2k_set_threads; 1222*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_set_threads = opj_j2k_set_threads; 1223*3ac0a46fSAndroid Build Coastguard Worker 1224*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec = opj_j2k_create_decompress(); 1225*3ac0a46fSAndroid Build Coastguard Worker 1226*3ac0a46fSAndroid Build Coastguard Worker@@ -280,85 +243,47 @@ opj_codec_t* OPJ_CALLCONV opj_create_decompress(OPJ_CODEC_FORMAT p_format) 1227*3ac0a46fSAndroid Build Coastguard Worker 1228*3ac0a46fSAndroid Build Coastguard Worker case OPJ_CODEC_JP2: 1229*3ac0a46fSAndroid Build Coastguard Worker /* get a JP2 decoder handle */ 1230*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_dump_codec = (void (*)(void*, OPJ_INT32, FILE*)) jp2_dump; 1231*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_dump_codec = jp2_dump; 1232*3ac0a46fSAndroid Build Coastguard Worker 1233*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_get_codec_info = (opj_codestream_info_v2_t* (*)( 1234*3ac0a46fSAndroid Build Coastguard Worker- void*)) jp2_get_cstr_info; 1235*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_get_codec_info = jp2_get_cstr_info; 1236*3ac0a46fSAndroid Build Coastguard Worker 1237*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_get_codec_index = (opj_codestream_index_t* (*)( 1238*3ac0a46fSAndroid Build Coastguard Worker- void*)) jp2_get_cstr_index; 1239*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_get_codec_index = jp2_get_cstr_index; 1240*3ac0a46fSAndroid Build Coastguard Worker 1241*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_decompression.opj_decode = 1242*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1243*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1244*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t*, 1245*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_decode; 1246*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_decompression.opj_decode = opj_jp2_decode; 1247*3ac0a46fSAndroid Build Coastguard Worker 1248*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_end_decompress = 1249*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1250*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1251*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_end_decompress; 1252*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_end_decompress; 1253*3ac0a46fSAndroid Build Coastguard Worker 1254*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_read_header = 1255*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(struct opj_stream_private *, 1256*3ac0a46fSAndroid Build Coastguard Worker- void *, 1257*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t **, 1258*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_read_header; 1259*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_read_header; 1260*3ac0a46fSAndroid Build Coastguard Worker 1261*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_read_tile_header = 1262*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1263*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32*, 1264*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32*, 1265*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32*, 1266*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32*, 1267*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32 *, 1268*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32 *, 1269*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 *, 1270*3ac0a46fSAndroid Build Coastguard Worker- OPJ_BOOL *, 1271*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1272*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_read_tile_header; 1273*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_read_tile_header; 1274*3ac0a46fSAndroid Build Coastguard Worker 1275*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_decode_tile_data = 1276*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1277*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, OPJ_BYTE*, OPJ_UINT32, 1278*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1279*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_decode_tile; 1280*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_decode_tile; 1281*3ac0a46fSAndroid Build Coastguard Worker 1282*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_decompression.opj_destroy = (void (*)( 1283*3ac0a46fSAndroid Build Coastguard Worker- void *))opj_jp2_destroy; 1284*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_decompression.opj_destroy = opj_jp2_destroy; 1285*3ac0a46fSAndroid Build Coastguard Worker 1286*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_setup_decoder = 1287*3ac0a46fSAndroid Build Coastguard Worker- (void (*)(void *, opj_dparameters_t *)) opj_jp2_setup_decoder; 1288*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_setup_decoder; 1289*3ac0a46fSAndroid Build Coastguard Worker 1290*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_decoder_set_strict_mode = 1291*3ac0a46fSAndroid Build Coastguard Worker- (void (*)(void *, OPJ_BOOL)) opj_jp2_decoder_set_strict_mode; 1292*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_decoder_set_strict_mode; 1293*3ac0a46fSAndroid Build Coastguard Worker 1294*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decode_area = 1295*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *, 1296*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t*, 1297*3ac0a46fSAndroid Build Coastguard Worker- OPJ_INT32, OPJ_INT32, OPJ_INT32, OPJ_INT32, 1298*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_set_decode_area; 1299*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_set_decode_area; 1300*3ac0a46fSAndroid Build Coastguard Worker 1301*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_get_decoded_tile = 1302*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void *p_codec, 1303*3ac0a46fSAndroid Build Coastguard Worker- opj_stream_private_t *p_cio, 1304*3ac0a46fSAndroid Build Coastguard Worker- opj_image_t *p_image, 1305*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr * p_manager, 1306*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 tile_index)) opj_jp2_get_tile; 1307*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_get_tile; 1308*3ac0a46fSAndroid Build Coastguard Worker 1309*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decoded_resolution_factor = 1310*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, 1311*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 res_factor, 1312*3ac0a46fSAndroid Build Coastguard Worker- opj_event_mgr_t * p_manager)) opj_jp2_set_decoded_resolution_factor; 1313*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_set_decoded_resolution_factor; 1314*3ac0a46fSAndroid Build Coastguard Worker 1315*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec_data.m_decompression.opj_set_decoded_components = 1316*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, 1317*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32 numcomps, 1318*3ac0a46fSAndroid Build Coastguard Worker- const OPJ_UINT32 * comps_indices, 1319*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr * p_manager)) opj_jp2_set_decoded_components; 1320*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_set_decoded_components; 1321*3ac0a46fSAndroid Build Coastguard Worker 1322*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_set_threads = 1323*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, OPJ_UINT32 num_threads)) opj_jp2_set_threads; 1324*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_set_threads = opj_jp2_set_threads; 1325*3ac0a46fSAndroid Build Coastguard Worker 1326*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec = opj_jp2_create(OPJ_TRUE); 1327*3ac0a46fSAndroid Build Coastguard Worker 1328*3ac0a46fSAndroid Build Coastguard Worker@@ -662,41 +587,25 @@ opj_codec_t* OPJ_CALLCONV opj_create_compress(OPJ_CODEC_FORMAT p_format) 1329*3ac0a46fSAndroid Build Coastguard Worker 1330*3ac0a46fSAndroid Build Coastguard Worker switch (p_format) { 1331*3ac0a46fSAndroid Build Coastguard Worker case OPJ_CODEC_J2K: 1332*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_encode = (OPJ_BOOL(*)(void *, 1333*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1334*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_encode; 1335*3ac0a46fSAndroid Build Coastguard Worker- 1336*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_end_compress = (OPJ_BOOL(*)(void *, 1337*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1338*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_end_compress; 1339*3ac0a46fSAndroid Build Coastguard Worker- 1340*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_start_compress = (OPJ_BOOL(*)(void *, 1341*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1342*3ac0a46fSAndroid Build Coastguard Worker- struct opj_image *, 1343*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_start_compress; 1344*3ac0a46fSAndroid Build Coastguard Worker- 1345*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_write_tile = (OPJ_BOOL(*)(void *, 1346*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1347*3ac0a46fSAndroid Build Coastguard Worker- OPJ_BYTE*, 1348*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1349*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1350*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_write_tile; 1351*3ac0a46fSAndroid Build Coastguard Worker- 1352*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_destroy = (void (*)( 1353*3ac0a46fSAndroid Build Coastguard Worker- void *)) opj_j2k_destroy; 1354*3ac0a46fSAndroid Build Coastguard Worker- 1355*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_setup_encoder = (OPJ_BOOL(*)(void *, 1356*3ac0a46fSAndroid Build Coastguard Worker- opj_cparameters_t *, 1357*3ac0a46fSAndroid Build Coastguard Worker- struct opj_image *, 1358*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_setup_encoder; 1359*3ac0a46fSAndroid Build Coastguard Worker- 1360*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_encoder_set_extra_options = (OPJ_BOOL( 1361*3ac0a46fSAndroid Build Coastguard Worker- *)(void *, 1362*3ac0a46fSAndroid Build Coastguard Worker- const char* const*, 1363*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_j2k_encoder_set_extra_options; 1364*3ac0a46fSAndroid Build Coastguard Worker- 1365*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_set_threads = 1366*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, OPJ_UINT32 num_threads)) opj_j2k_set_threads; 1367*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_encode = opj_j2k_encode; 1368*3ac0a46fSAndroid Build Coastguard Worker+ 1369*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_end_compress = 1370*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_end_compress; 1371*3ac0a46fSAndroid Build Coastguard Worker+ 1372*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_start_compress = 1373*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_start_compress; 1374*3ac0a46fSAndroid Build Coastguard Worker+ 1375*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_write_tile = opj_j2k_write_tile; 1376*3ac0a46fSAndroid Build Coastguard Worker+ 1377*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_destroy = opj_j2k_destroy; 1378*3ac0a46fSAndroid Build Coastguard Worker+ 1379*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_setup_encoder = 1380*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_setup_encoder; 1381*3ac0a46fSAndroid Build Coastguard Worker+ 1382*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_encoder_set_extra_options = 1383*3ac0a46fSAndroid Build Coastguard Worker+ opj_j2k_encoder_set_extra_options; 1384*3ac0a46fSAndroid Build Coastguard Worker+ 1385*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_set_threads = opj_j2k_set_threads; 1386*3ac0a46fSAndroid Build Coastguard Worker 1387*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec = opj_j2k_create_compress(); 1388*3ac0a46fSAndroid Build Coastguard Worker if (! l_codec->m_codec) { 1389*3ac0a46fSAndroid Build Coastguard Worker@@ -708,41 +617,25 @@ opj_codec_t* OPJ_CALLCONV opj_create_compress(OPJ_CODEC_FORMAT p_format) 1390*3ac0a46fSAndroid Build Coastguard Worker 1391*3ac0a46fSAndroid Build Coastguard Worker case OPJ_CODEC_JP2: 1392*3ac0a46fSAndroid Build Coastguard Worker /* get a JP2 decoder handle */ 1393*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_encode = (OPJ_BOOL(*)(void *, 1394*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1395*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_encode; 1396*3ac0a46fSAndroid Build Coastguard Worker- 1397*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_end_compress = (OPJ_BOOL(*)(void *, 1398*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1399*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_end_compress; 1400*3ac0a46fSAndroid Build Coastguard Worker- 1401*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_start_compress = (OPJ_BOOL(*)(void *, 1402*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1403*3ac0a46fSAndroid Build Coastguard Worker- struct opj_image *, 1404*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_start_compress; 1405*3ac0a46fSAndroid Build Coastguard Worker- 1406*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_write_tile = (OPJ_BOOL(*)(void *, 1407*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1408*3ac0a46fSAndroid Build Coastguard Worker- OPJ_BYTE*, 1409*3ac0a46fSAndroid Build Coastguard Worker- OPJ_UINT32, 1410*3ac0a46fSAndroid Build Coastguard Worker- struct opj_stream_private *, 1411*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_write_tile; 1412*3ac0a46fSAndroid Build Coastguard Worker- 1413*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_destroy = (void (*)( 1414*3ac0a46fSAndroid Build Coastguard Worker- void *)) opj_jp2_destroy; 1415*3ac0a46fSAndroid Build Coastguard Worker- 1416*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_setup_encoder = (OPJ_BOOL(*)(void *, 1417*3ac0a46fSAndroid Build Coastguard Worker- opj_cparameters_t *, 1418*3ac0a46fSAndroid Build Coastguard Worker- struct opj_image *, 1419*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_setup_encoder; 1420*3ac0a46fSAndroid Build Coastguard Worker- 1421*3ac0a46fSAndroid Build Coastguard Worker- l_codec->m_codec_data.m_compression.opj_encoder_set_extra_options = (OPJ_BOOL( 1422*3ac0a46fSAndroid Build Coastguard Worker- *)(void *, 1423*3ac0a46fSAndroid Build Coastguard Worker- const char* const*, 1424*3ac0a46fSAndroid Build Coastguard Worker- struct opj_event_mgr *)) opj_jp2_encoder_set_extra_options; 1425*3ac0a46fSAndroid Build Coastguard Worker- 1426*3ac0a46fSAndroid Build Coastguard Worker- l_codec->opj_set_threads = 1427*3ac0a46fSAndroid Build Coastguard Worker- (OPJ_BOOL(*)(void * p_codec, OPJ_UINT32 num_threads)) opj_jp2_set_threads; 1428*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_encode = opj_jp2_encode; 1429*3ac0a46fSAndroid Build Coastguard Worker+ 1430*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_end_compress = 1431*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_end_compress; 1432*3ac0a46fSAndroid Build Coastguard Worker+ 1433*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_start_compress = 1434*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_start_compress; 1435*3ac0a46fSAndroid Build Coastguard Worker+ 1436*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_write_tile = opj_jp2_write_tile; 1437*3ac0a46fSAndroid Build Coastguard Worker+ 1438*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_destroy = opj_jp2_destroy; 1439*3ac0a46fSAndroid Build Coastguard Worker+ 1440*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_setup_encoder = 1441*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_setup_encoder; 1442*3ac0a46fSAndroid Build Coastguard Worker+ 1443*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->m_codec_data.m_compression.opj_encoder_set_extra_options = 1444*3ac0a46fSAndroid Build Coastguard Worker+ opj_jp2_encoder_set_extra_options; 1445*3ac0a46fSAndroid Build Coastguard Worker+ 1446*3ac0a46fSAndroid Build Coastguard Worker+ l_codec->opj_set_threads = opj_jp2_set_threads; 1447*3ac0a46fSAndroid Build Coastguard Worker 1448*3ac0a46fSAndroid Build Coastguard Worker l_codec->m_codec = opj_jp2_create(OPJ_FALSE); 1449*3ac0a46fSAndroid Build Coastguard Worker if (! l_codec->m_codec) { 1450