1 /* 2 * jsimd.h 3 * 4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB 5 * Copyright 2011, 2014 D. R. Commander 6 * 7 * Based on the x86 SIMD extension for IJG JPEG library, 8 * Copyright (C) 1999-2006, MIYASAKA Masaru. 9 * For conditions of distribution and use, see copyright notice in jsimdext.inc 10 * 11 */ 12 13 EXTERN(int) jsimd_can_rgb_ycc (void); 14 EXTERN(int) jsimd_can_rgb_gray (void); 15 EXTERN(int) jsimd_can_ycc_rgb (void); 16 EXTERN(int) jsimd_can_ycc_rgb565 (void); 17 EXTERN(int) jsimd_c_can_null_convert (void); 18 19 EXTERN(void) jsimd_rgb_ycc_convert 20 (j_compress_ptr cinfo, JSAMPARRAY input_buf, JSAMPIMAGE output_buf, 21 JDIMENSION output_row, int num_rows); 22 EXTERN(void) jsimd_rgb_gray_convert 23 (j_compress_ptr cinfo, JSAMPARRAY input_buf, JSAMPIMAGE output_buf, 24 JDIMENSION output_row, int num_rows); 25 EXTERN(void) jsimd_ycc_rgb_convert 26 (j_decompress_ptr cinfo, JSAMPIMAGE input_buf, JDIMENSION input_row, 27 JSAMPARRAY output_buf, int num_rows); 28 EXTERN(void) jsimd_ycc_rgb565_convert 29 (j_decompress_ptr cinfo, JSAMPIMAGE input_buf, JDIMENSION input_row, 30 JSAMPARRAY output_buf, int num_rows); 31 EXTERN(void) jsimd_c_null_convert 32 (j_compress_ptr cinfo, JSAMPARRAY input_buf, JSAMPIMAGE output_buf, 33 JDIMENSION output_row, int num_rows); 34 35 EXTERN(int) jsimd_can_h2v2_downsample (void); 36 EXTERN(int) jsimd_can_h2v1_downsample (void); 37 38 EXTERN(void) jsimd_h2v2_downsample 39 (j_compress_ptr cinfo, jpeg_component_info * compptr, 40 JSAMPARRAY input_data, JSAMPARRAY output_data); 41 42 EXTERN(int) jsimd_can_h2v2_smooth_downsample (void); 43 44 EXTERN(void) jsimd_h2v2_smooth_downsample 45 (j_compress_ptr cinfo, jpeg_component_info * compptr, 46 JSAMPARRAY input_data, JSAMPARRAY output_data); 47 48 EXTERN(void) jsimd_h2v1_downsample 49 (j_compress_ptr cinfo, jpeg_component_info * compptr, 50 JSAMPARRAY input_data, JSAMPARRAY output_data); 51 52 EXTERN(int) jsimd_can_h2v2_upsample (void); 53 EXTERN(int) jsimd_can_h2v1_upsample (void); 54 EXTERN(int) jsimd_can_int_upsample (void); 55 56 EXTERN(void) jsimd_h2v2_upsample 57 (j_decompress_ptr cinfo, jpeg_component_info * compptr, 58 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr); 59 EXTERN(void) jsimd_h2v1_upsample 60 (j_decompress_ptr cinfo, jpeg_component_info * compptr, 61 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr); 62 EXTERN(void) jsimd_int_upsample 63 (j_decompress_ptr cinfo, jpeg_component_info * compptr, 64 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr); 65 66 EXTERN(int) jsimd_can_h2v2_fancy_upsample (void); 67 EXTERN(int) jsimd_can_h2v1_fancy_upsample (void); 68 69 EXTERN(void) jsimd_h2v2_fancy_upsample 70 (j_decompress_ptr cinfo, jpeg_component_info * compptr, 71 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr); 72 EXTERN(void) jsimd_h2v1_fancy_upsample 73 (j_decompress_ptr cinfo, jpeg_component_info * compptr, 74 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr); 75 76 EXTERN(int) jsimd_can_h2v2_merged_upsample (void); 77 EXTERN(int) jsimd_can_h2v1_merged_upsample (void); 78 79 EXTERN(void) jsimd_h2v2_merged_upsample 80 (j_decompress_ptr cinfo, JSAMPIMAGE input_buf, 81 JDIMENSION in_row_group_ctr, JSAMPARRAY output_buf); 82 EXTERN(void) jsimd_h2v1_merged_upsample 83 (j_decompress_ptr cinfo, JSAMPIMAGE input_buf, 84 JDIMENSION in_row_group_ctr, JSAMPARRAY output_buf); 85