Changeset 337 for trunk/jpeglib.d
- Timestamp:
- 01/01/10 22:38:56 (2 years ago)
- Files:
-
- trunk/jpeglib.d (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/jpeglib.d
r336 r337 29 29 //import jmorecfg; /* seldom changed options */ 30 30 31 extern(C): 32 31 33 alias char JOCTET; 32 34 alias char JSAMPLE; … … 49 51 50 52 const DCTSIZE = 8; /* The basic DCT block is 8x8 samples */ 51 const DCTSIZE2 = 64; /* DCTSIZE squared; # of elements in a block */53 const DCTSIZE2 = 64; /* DCTSIZE squared; # of elements in a block */ 52 54 const NUM_QUANT_TBLS = 4; /* Quantization tables are numbered 0..3 */ 53 55 const NUM_HUFF_TBLS = 4; /* Huffman tables are numbered 0..3 */ … … 916 918 917 919 /* Default error-management setup */ 918 extern(C)/*struct*/ jpeg_error_mgr* jpeg_std_error920 /*struct*/ jpeg_error_mgr* jpeg_std_error 919 921 (/*struct*/ jpeg_error_mgr * err); 920 922 … … 939 941 } 940 942 941 extern(C)void jpeg_CreateCompress (j_compress_ptr cinfo,943 void jpeg_CreateCompress (j_compress_ptr cinfo, 942 944 int version_, size_t structsize); 943 extern(C)void jpeg_CreateDecompress (j_decompress_ptr cinfo,945 void jpeg_CreateDecompress (j_decompress_ptr cinfo, 944 946 int version_, size_t structsize); 945 947 /* Destruction of JPEG compression objects */ 946 extern(C)void jpeg_destroy_compress (j_compress_ptr cinfo);947 extern(C)void jpeg_destroy_decompress (j_decompress_ptr cinfo);948 void jpeg_destroy_compress (j_compress_ptr cinfo); 949 void jpeg_destroy_decompress (j_decompress_ptr cinfo); 948 950 949 951 /* Standard data source and destination managers: stdio streams. */ 950 952 /* Caller is responsible for opening the file before and closing after. */ 951 extern(C)void jpeg_stdio_dest (j_compress_ptr cinfo, FILE * outfile);952 extern(C)void jpeg_stdio_src (j_decompress_ptr cinfo, FILE * infile);953 void jpeg_stdio_dest (j_compress_ptr cinfo, FILE * outfile); 954 void jpeg_stdio_src (j_decompress_ptr cinfo, FILE * infile); 953 955 954 956 /* Default parameter setup for compression */ 955 extern(C)void jpeg_set_defaults (j_compress_ptr cinfo);957 void jpeg_set_defaults (j_compress_ptr cinfo); 956 958 /* Compression parameter setup aids */ 957 extern(C)void jpeg_set_colorspace (j_compress_ptr cinfo,959 void jpeg_set_colorspace (j_compress_ptr cinfo, 958 960 J_COLOR_SPACE colorspace); 959 extern(C)void jpeg_default_colorspace (j_compress_ptr cinfo);960 extern(C)void jpeg_set_quality (j_compress_ptr cinfo, int quality,961 void jpeg_default_colorspace (j_compress_ptr cinfo); 962 void jpeg_set_quality (j_compress_ptr cinfo, int quality, 961 963 boolean force_baseline); 962 extern(C)void jpeg_set_linear_quality (j_compress_ptr cinfo,964 void jpeg_set_linear_quality (j_compress_ptr cinfo, 963 965 int scale_factor, 964 966 boolean force_baseline); 965 extern(C)void jpeg_default_qtables (j_compress_ptr cinfo,967 void jpeg_default_qtables (j_compress_ptr cinfo, 966 968 boolean force_baseline); 967 extern(C)void jpeg_add_quant_table (j_compress_ptr cinfo, int which_tbl,969 void jpeg_add_quant_table (j_compress_ptr cinfo, int which_tbl, 968 970 /*const*/ uint *basic_table, 969 971 int scale_factor, 970 972 boolean force_baseline); 971 extern(C)int jpeg_quality_scaling (int quality);972 extern(C)void jpeg_simple_progression (j_compress_ptr cinfo);973 extern(C)void jpeg_suppress_tables (j_compress_ptr cinfo,973 int jpeg_quality_scaling (int quality); 974 void jpeg_simple_progression (j_compress_ptr cinfo); 975 void jpeg_suppress_tables (j_compress_ptr cinfo, 974 976 boolean suppress); 975 extern(C)JQUANT_TBL* jpeg_alloc_quant_table (j_common_ptr cinfo);976 extern(C)JHUFF_TBL* jpeg_alloc_huff_table (j_common_ptr cinfo);977 JQUANT_TBL* jpeg_alloc_quant_table (j_common_ptr cinfo); 978 JHUFF_TBL* jpeg_alloc_huff_table (j_common_ptr cinfo); 977 979 978 980 /* Main entry points for compression */ 979 extern(C)void jpeg_start_compress (j_compress_ptr cinfo,981 void jpeg_start_compress (j_compress_ptr cinfo, 980 982 boolean write_all_tables); 981 extern(C)JDIMENSION jpeg_write_scanlines (j_compress_ptr cinfo,983 JDIMENSION jpeg_write_scanlines (j_compress_ptr cinfo, 982 984 JSAMPARRAY scanlines, 983 985 JDIMENSION num_lines); 984 extern(C)void jpeg_finish_compress (j_compress_ptr cinfo);986 void jpeg_finish_compress (j_compress_ptr cinfo); 985 987 986 988 /* Precalculate JPEG dimensions for current compression parameters. */ 987 extern(C)void jpeg_calc_jpeg_dimensions (j_compress_ptr cinfo);989 void jpeg_calc_jpeg_dimensions (j_compress_ptr cinfo); 988 990 989 991 /* Replaces jpeg_write_scanlines when writing raw downsampled data. */ 990 extern(C)JDIMENSION jpeg_write_raw_data (j_compress_ptr cinfo,992 JDIMENSION jpeg_write_raw_data (j_compress_ptr cinfo, 991 993 JSAMPIMAGE data, 992 994 JDIMENSION num_lines); 993 995 994 996 /* Write a special marker. See libjpeg.txt concerning safe usage. */ 995 extern(C)void jpeg_write_marker997 void jpeg_write_marker 996 998 (j_compress_ptr cinfo, int marker, 997 999 /*const*/ JOCTET * dataptr, uint datalen); 998 1000 /* Same, but piecemeal. */ 999 extern(C)void jpeg_write_m_header1001 void jpeg_write_m_header 1000 1002 (j_compress_ptr cinfo, int marker, uint datalen); 1001 extern(C)void jpeg_write_m_byte1003 void jpeg_write_m_byte 1002 1004 (j_compress_ptr cinfo, int val); 1003 1005 1004 1006 /* Alternate compression function: just write an abbreviated table file */ 1005 extern(C)void jpeg_write_tables (j_compress_ptr cinfo);1007 void jpeg_write_tables (j_compress_ptr cinfo); 1006 1008 1007 1009 /* Decompression startup: read start of JPEG datastream to see what's there */ 1008 extern(C)int jpeg_read_header (j_decompress_ptr cinfo,1010 int jpeg_read_header (j_decompress_ptr cinfo, 1009 1011 boolean require_image); 1010 1012 /* Return value is one of: */ … … 1019 1021 1020 1022 /* Main entry points for decompression */ 1021 extern(C)boolean jpeg_start_decompress (j_decompress_ptr cinfo);1022 extern(C)JDIMENSION jpeg_read_scanlines (j_decompress_ptr cinfo,1023 boolean jpeg_start_decompress (j_decompress_ptr cinfo); 1024 JDIMENSION jpeg_read_scanlines (j_decompress_ptr cinfo, 1023 1025 JSAMPARRAY scanlines, 1024 1026 JDIMENSION max_lines); 1025 extern(C)boolean jpeg_finish_decompress (j_decompress_ptr cinfo);1027 boolean jpeg_finish_decompress (j_decompress_ptr cinfo); 1026 1028 1027 1029 /* Replaces jpeg_read_scanlines when reading raw downsampled data. */ 1028 extern(C)JDIMENSION jpeg_read_raw_data (j_decompress_ptr cinfo,1030 JDIMENSION jpeg_read_raw_data (j_decompress_ptr cinfo, 1029 1031 JSAMPIMAGE data, 1030 1032 JDIMENSION max_lines); 1031 1033 1032 1034 /* Additional entry points for buffered-image mode. */ 1033 extern(C)boolean jpeg_has_multiple_scans (j_decompress_ptr cinfo);1034 extern(C)boolean jpeg_start_output (j_decompress_ptr cinfo,1035 boolean jpeg_has_multiple_scans (j_decompress_ptr cinfo); 1036 boolean jpeg_start_output (j_decompress_ptr cinfo, 1035 1037 int scan_number); 1036 extern(C)boolean jpeg_finish_output (j_decompress_ptr cinfo);1037 extern(C)boolean jpeg_input_complete (j_decompress_ptr cinfo);1038 extern(C)void jpeg_new_colormap (j_decompress_ptr cinfo);1039 extern(C)int jpeg_consume_input (j_decompress_ptr cinfo);1038 boolean jpeg_finish_output (j_decompress_ptr cinfo); 1039 boolean jpeg_input_complete (j_decompress_ptr cinfo); 1040 void jpeg_new_colormap (j_decompress_ptr cinfo); 1041 int jpeg_consume_input (j_decompress_ptr cinfo); 1040 1042 /* Return value is one of: */ 1041 1043 /* const JPEG_SUSPENDED = 0; Suspended due to lack of input data */ … … 1046 1048 1047 1049 /* Precalculate output dimensions for current decompression parameters. */ 1048 extern(C)void jpeg_calc_output_dimensions (j_decompress_ptr cinfo);1050 void jpeg_calc_output_dimensions (j_decompress_ptr cinfo); 1049 1051 1050 1052 /* Control saving of COM and APPn markers into marker_list. */ 1051 extern(C)void jpeg_save_markers1053 void jpeg_save_markers 1052 1054 (j_decompress_ptr cinfo, int marker_code, 1053 1055 uint length_limit); 1054 1056 1055 1057 /* Install a special processing method for COM or APPn markers. */ 1056 extern(C)void jpeg_set_marker_processor1058 void jpeg_set_marker_processor 1057 1059 (j_decompress_ptr cinfo, int marker_code, 1058 1060 jpeg_marker_parser_method routine); 1059 1061 1060 1062 /* Read or write raw DCT coefficients --- useful for lossless transcoding. */ 1061 extern(C)jvirt_barray_ptr* jpeg_read_coefficients (j_decompress_ptr cinfo);1062 extern(C)void jpeg_write_coefficients (j_compress_ptr cinfo,1063 jvirt_barray_ptr* jpeg_read_coefficients (j_decompress_ptr cinfo); 1064 void jpeg_write_coefficients (j_compress_ptr cinfo, 1063 1065 jvirt_barray_ptr * coef_arrays); 1064 extern(C)void jpeg_copy_critical_parameters (j_decompress_ptr srcinfo,1066 void jpeg_copy_critical_parameters (j_decompress_ptr srcinfo, 1065 1067 j_compress_ptr dstinfo); 1066 1068 … … 1071 1073 * reuse it, call this: 1072 1074 */ 1073 extern(C)void jpeg_abort_compress (j_compress_ptr cinfo);1074 extern(C)void jpeg_abort_decompress (j_decompress_ptr cinfo);1075 void jpeg_abort_compress (j_compress_ptr cinfo); 1076 void jpeg_abort_decompress (j_decompress_ptr cinfo); 1075 1077 1076 1078 /* Generic versions of jpeg_abort and jpeg_destroy that work on either 1077 1079 * flavor of JPEG object. These may be more convenient in some places. 1078 1080 */ 1079 extern(C)void jpeg_abort (j_common_ptr cinfo);1080 extern(C)void jpeg_destroy (j_common_ptr cinfo);1081 void jpeg_abort (j_common_ptr cinfo); 1082 void jpeg_destroy (j_common_ptr cinfo); 1081 1083 1082 1084 /* Default restart-marker-resync procedure for use by data source modules */ 1083 extern(C)boolean jpeg_resync_to_restart (j_decompress_ptr cinfo,1085 boolean jpeg_resync_to_restart (j_decompress_ptr cinfo, 1084 1086 int desired); 1085 1087
