| /* |
| * jcmaster.h |
| * |
| * This file was part of the Independent JPEG Group's software: |
| * Copyright (C) 1991-1995, Thomas G. Lane. |
| * libjpeg-turbo Modifications: |
| * Copyright (C) 2016, D. R. Commander. |
| * For conditions of distribution and use, see the accompanying README.ijg |
| * file. |
| * |
| * This file contains master control structure for the JPEG compressor. |
| */ |
| |
| /* Private state */ |
| |
| typedef enum { |
| main_pass, /* input data, also do first output step */ |
| huff_opt_pass, /* Huffman code optimization pass */ |
| output_pass /* data output pass */ |
| } c_pass_type; |
| |
| typedef struct { |
| struct jpeg_comp_master pub; /* public fields */ |
| |
| c_pass_type pass_type; /* the type of the current pass */ |
| |
| int pass_number; /* # of passes completed */ |
| int total_passes; /* total # of passes needed */ |
| |
| int scan_number; /* current index in scan_info[] */ |
| |
| /* |
| * This is here so we can add libjpeg-turbo version/build information to the |
| * global string table without introducing a new global symbol. Adding this |
| * information to the global string table allows one to examine a binary |
| * object and determine which version of libjpeg-turbo it was built from or |
| * linked against. |
| */ |
| const char *jpeg_version; |
| |
| } my_comp_master; |
| |
| typedef my_comp_master *my_master_ptr; |