summaryrefslogtreecommitdiff
path: root/backend/pixma/pixma.h
diff options
context:
space:
mode:
Diffstat (limited to 'backend/pixma/pixma.h')
-rw-r--r--backend/pixma/pixma.h33
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);