// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_
#define THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_

// Mangle all externally visible function names so we can build our own libjpeg
// without system libraries trying to use it.

#define jcopy_block_row chromium_ijg_jcopy_block_row
#define jcopy_sample_rows chromium_ijg_jcopy_sample_rows
#define jdiv_round_up chromium_ijg_jdiv_round_up
#define jinit_1pass_quantizer chromium_ijg_jinit_1pass_quantizer
#define jinit_2pass_quantizer chromium_ijg_jinit_2pass_quantizer
#define jinit_c_coef_controller chromium_ijg_jinit_c_coef_controller
#define jinit_c_main_controller chromium_ijg_jinit_c_main_controller
#define jinit_c_master_control chromium_ijg_jinit_c_master_control
#define jinit_color_converter chromium_ijg_jinit_color_converter
#define jinit_color_deconverter chromium_ijg_jinit_color_deconverter
#define jinit_compress_master chromium_ijg_jinit_compress_master
#define jinit_c_prep_controller chromium_ijg_jinit_c_prep_controller
#define jinit_d_coef_controller chromium_ijg_jinit_d_coef_controller
#define jinit_d_main_controller chromium_ijg_jinit_d_main_controller
#define jinit_downsampler chromium_ijg_jinit_downsampler
#define jinit_d_post_controller chromium_ijg_jinit_d_post_controller
#define jinit_forward_dct chromium_ijg_jinit_forward_dct
#define jinit_huff_decoder chromium_ijg_jinit_huff_decoder
#define jinit_huff_encoder chromium_ijg_jinit_huff_encoder
#define jinit_input_controller chromium_ijg_jinit_input_controller
#define jinit_inverse_dct chromium_ijg_jinit_inverse_dct
#define jinit_marker_reader chromium_ijg_jinit_marker_reader
#define jinit_marker_writer chromium_ijg_jinit_marker_writer
#define jinit_master_decompress chromium_ijg_jinit_master_decompress
#define jinit_memory_mgr chromium_ijg_jinit_memory_mgr
#define jinit_merged_upsampler chromium_ijg_jinit_merged_upsampler
#define jinit_phuff_decoder chromium_ijg_jinit_phuff_decoder
#define jinit_phuff_encoder chromium_ijg_jinit_phuff_encoder
#define jinit_upsampler chromium_ijg_jinit_upsampler
#define jpeg_abort chromium_ijg_jpeg_abort
#define jpeg_abort_compress chromium_ijg_jpeg_abort_compress
#define jpeg_abort_decompress chromium_ijg_jpeg_abort_decompress
#define jpeg_add_quant_table chromium_ijg_jpeg_add_quant_table
#define jpeg_alloc_huff_table chromium_ijg_jpeg_alloc_huff_table
#define jpeg_alloc_quant_table chromium_ijg_jpeg_alloc_quant_table
#define jpeg_calc_output_dimensions chromium_ijg_jpeg_calc_output_dimensions
#define jpeg_consume_input chromium_ijg_jpeg_consume_input
#define jpeg_copy_critical_parameters chromium_ijg_jpeg_copy_critical_parameters
#define jpeg_CreateCompress chromium_ijg_jpeg_CreateCompress
#define jpeg_CreateDecompress chromium_ijg_jpeg_CreateDecompress
#define jpeg_default_colorspace chromium_ijg_jpeg_default_colorspace
#define jpeg_destroy chromium_ijg_jpeg_destroy
#define jpeg_destroy_compress chromium_ijg_jpeg_destroy_compress
#define jpeg_destroy_decompress chromium_ijg_jpeg_destroy_decompress
#define jpeg_fdct_float chromium_ijg_jpeg_fdct_float
#define jpeg_fdct_ifast chromium_ijg_jpeg_fdct_ifast
#define jpeg_fdct_islow chromium_ijg_jpeg_fdct_islow
#define jpeg_fill_bit_buffer chromium_ijg_jpeg_fill_bit_buffer
#define jpeg_finish_compress chromium_ijg_jpeg_finish_compress
#define jpeg_finish_decompress chromium_ijg_jpeg_finish_decompress
#define jpeg_finish_output chromium_ijg_jpeg_finish_output
#define jpeg_free_large chromium_ijg_jpeg_free_large
#define jpeg_free_small chromium_ijg_jpeg_free_small
#define jpeg_gen_optimal_table chromium_ijg_jpeg_gen_optimal_table
#define jpeg_get_large chromium_ijg_jpeg_get_large
#define jpeg_get_small chromium_ijg_jpeg_get_small
#define jpeg_has_multiple_scans chromium_ijg_jpeg_has_multiple_scans
#define jpeg_huff_decode chromium_ijg_jpeg_huff_decode
#define jpeg_idct_1x1 chromium_ijg_jpeg_idct_1x1
#define jpeg_idct_2x2 chromium_ijg_jpeg_idct_2x2
#define jpeg_idct_4x4 chromium_ijg_jpeg_idct_4x4
#define jpeg_idct_float chromium_ijg_jpeg_idct_float
#define jpeg_idct_ifast chromium_ijg_jpeg_idct_ifast
#define jpeg_idct_islow chromium_ijg_jpeg_idct_islow
#define jpeg_input_complete chromium_ijg_jpeg_input_complete
#define jpeg_make_c_derived_tbl chromium_ijg_jpeg_make_c_derived_tbl
#define jpeg_make_d_derived_tbl chromium_ijg_jpeg_make_d_derived_tbl
#define jpeg_mem_available chromium_ijg_jpeg_mem_available
#define jpeg_mem_init chromium_ijg_jpeg_mem_init
#define jpeg_mem_term chromium_ijg_jpeg_mem_term
#define jpeg_natural_order chromium_ijg_jpeg_natural_order
#define jpeg_new_colormap chromium_ijg_jpeg_new_colormap
#define jpeg_open_backing_store chromium_ijg_jpeg_open_backing_store
#define jpeg_quality_scaling chromium_ijg_jpeg_quality_scaling
#define jpeg_read_coefficients chromium_ijg_jpeg_read_coefficients
#define jpeg_read_header chromium_ijg_jpeg_read_header
#define jpeg_read_raw_data chromium_ijg_jpeg_read_raw_data
#define jpeg_read_scanlines chromium_ijg_jpeg_read_scanlines
#define jpeg_resync_to_restart chromium_ijg_jpeg_resync_to_restart
#define jpeg_save_markers chromium_ijg_jpeg_save_markers
#define jpeg_set_colorspace chromium_ijg_jpeg_set_colorspace
#define jpeg_set_defaults chromium_ijg_jpeg_set_defaults
#define jpeg_set_linear_quality chromium_ijg_jpeg_set_linear_quality
#define jpeg_set_marker_processor chromium_ijg_jpeg_set_marker_processor
#define jpeg_set_quality chromium_ijg_jpeg_set_quality
#define jpeg_simple_progression chromium_ijg_jpeg_simple_progression
#define jpeg_start_compress chromium_ijg_jpeg_start_compress
#define jpeg_start_decompress chromium_ijg_jpeg_start_decompress
#define jpeg_start_output chromium_ijg_jpeg_start_output
#define jpeg_std_error chromium_ijg_jpeg_std_error
#define jpeg_stdio_dest chromium_ijg_jpeg_stdio_dest
#define jpeg_stdio_src chromium_ijg_jpeg_stdio_src
#define jpeg_std_message_table chromium_ijg_jpeg_std_message_table
#define jpeg_suppress_tables chromium_ijg_jpeg_suppress_tables
#define jpeg_write_coefficients chromium_ijg_jpeg_write_coefficients
#define jpeg_write_marker chromium_ijg_jpeg_write_marker
#define jpeg_write_m_byte chromium_ijg_jpeg_write_m_byte
#define jpeg_write_m_header chromium_ijg_jpeg_write_m_header
#define jpeg_write_raw_data chromium_ijg_jpeg_write_raw_data
#define jpeg_write_scanlines chromium_ijg_jpeg_write_scanlines
#define jpeg_write_tables chromium_ijg_jpeg_write_tables
#define jround_up chromium_ijg_jround_up
#define jzero_far chromium_ijg_jzero_far

#endif  // THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_
