diff options
Diffstat (limited to 'backend/pixma/pixma.h')
-rw-r--r-- | backend/pixma/pixma.h | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/backend/pixma/pixma.h b/backend/pixma/pixma.h index c9026a7..dc07cfa 100644 --- a/backend/pixma/pixma.h +++ b/backend/pixma/pixma.h @@ -17,9 +17,7 @@ General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, - MA 02111-1307, USA. + along with this program. If not, see <https://www.gnu.org/licenses/>. As a special exception, the authors of SANE give permission for additional uses of the libraries contained in this release of SANE. @@ -120,7 +118,7 @@ typedef uint32_t uint32_t; /**@{*/ #define PIXMA_VERSION_MAJOR 0 #define PIXMA_VERSION_MINOR 28 -#define PIXMA_VERSION_BUILD 5 +#define PIXMA_VERSION_BUILD 6 /**@}*/ /** \name Error codes */ @@ -157,8 +155,9 @@ typedef uint32_t uint32_t; #define PIXMA_CAP_NEGATIVE (1 << 10) #define PIXMA_CAP_TPUIR ((1 << 11) | PIXMA_CAP_TPU) #define PIXMA_CAP_ADF_WAIT (1 << 12) -#define PIXMA_CAP_ADF_JPEG (1 << 13) -#define PIXMA_CAP_GT_4096 (1 << 14) /* gamma table has 4096 8-bit values +#define PIXMA_CAP_ADF_JPEG (1 << 13) /* scanner returns image as jpeg from ADF */ +#define PIXMA_CAP_JPEG (1 << 14) /* scanner always returns image as jpeg */ +#define PIXMA_CAP_GT_4096 (1 << 15) /* gamma table has 4096 8-bit values * only generation 1 scanners * usually gamma table has 1024 16-bit values */ @@ -224,7 +223,8 @@ typedef enum pixma_paper_source_t PIXMA_SOURCE_FLATBED, PIXMA_SOURCE_ADF, PIXMA_SOURCE_TPU, - PIXMA_SOURCE_ADFDUP /* duplex */ + PIXMA_SOURCE_ADFDUP, /* duplex */ + PIXMA_SOURCE_NONE } pixma_paper_source_t; /** Scan modes */ @@ -276,6 +276,14 @@ typedef enum pixma_calibration_status_t PIXMA_CALIBRATION_ERROR } pixma_calibration_status_t; +typedef enum pixma_calibrate_option_t +{ + PIXMA_CALIBRATE_ONCE, + PIXMA_CALIBRATE_ALWAYS, + PIXMA_CALIBRATE_NEVER, + PIXMA_CALIBRATE_NUM_OPTS +} pixma_calibrate_option_t; + /** Device status. */ struct pixma_device_status_t { @@ -305,7 +313,7 @@ struct pixma_scan_param_t * 1 = 1 bit B/W lineart (flatbed) * 8 = 8 bit grayscale, * 24 bit color (both flatbed) - * 16 = 16 bit grayscale (TPU, flatbed not implemeted), + * 16 = 16 bit grayscale (TPU, flatbed not implemented), * 48 bit color (TPU, flatbed not implemented) */ unsigned depth; @@ -359,6 +367,9 @@ struct pixma_scan_param_t /** \see #pixma_scan_mode_t */ pixma_scan_mode_t mode; + /** \see #pixma_calibrate_option_t */ + pixma_calibrate_option_t calibrate; + /** The current page # in the same ADF scan session, 0 in non ADF */ unsigned adf_pageid; @@ -510,6 +521,12 @@ int pixma_enable_background (pixma_t *, int enabled); */ int pixma_get_device_status (pixma_t *, pixma_device_status_t * status); +/** Decide whether to run calibration or not. + * Decision takes into account scan_param, source and last_source. + * \return 0x01 for calibration and 0x00 for no calibration + */ +unsigned pixma_calc_calibrate (pixma_t *); + const char *pixma_get_string (pixma_t *, pixma_string_index_t); const pixma_config_t *pixma_get_config (pixma_t *); void pixma_fill_gamma_table (double gamma, uint8_t * table, unsigned n); |