Go to the first, previous, next, last section, table of contents.

## 4.6 Printer functions

Data type: void * stp_printer_t
  This is an opaque data type, whose structure is not visible to the user.

Function: int stp_known_printers (void)

Function: const stp_printer_t stp_get_printer_by_index (int idx)

Function: const char * stp_printer_get_long_name (const stp_printer_t p)

Function: const stp_printer_t stp_get_printer_by_long_name (const char *long_name)

Function: const stp_printer_t stp_get_printer_by_driver (const char *driver)

Function: int stp_get_printer_index_by_driver (const char *driver)

Function: const char * stp_printer_get_driver (const stp_printer_t p)

Function: int stp_printer_get_model (const stp_printer_t p)

Function: const stp_printfuncs_t * stp_printer_get_printfuncs (const stp_printer_t p)

Data type: stp_printfuncs_t

      typedef struct
      {
        char  **(*parameters)(const stp_printer_t printer,
                              const char *ppd_file,
                              const char *name, int *count);
        void  (*media_size)(const stp_printer_t printer,
                            const stp_vars_t v, int *width,
                            int *height);
        void  (*imageable_area)(const stp_printer_t printer,
                                const stp_vars_t v,
                                int *left, int *right,
                                int *bottom, int *top);
        void  (*limit)(const stp_printer_t printer,
                       const stp_vars_t v,
                       int *width, int *height);
        void  (*print)(const stp_printer_t printer,
                       stp_image_t *image, const stp_vars_t v);
        const char *(*default_parameters)(const stp_printer_t printer,
                                          const char *ppd_file,
                                          const char *name);
        void  (*describe_resolution)(const stp_printer_t printer,
                                     const char *resolution,
                                     int *x, int *y);
        int   (*verify)(const stp_printer_t p, const stp_vars_t v);
      } stp_printfuncs_t;

Data type: stp_image_t

      typedef struct stp_image
      {
        void (*init)(struct stp_image *image);
        void (*reset)(struct stp_image *image);
        void (*transpose)(struct stp_image *image);
        void (*hflip)(struct stp_image *image);
        void (*vflip)(struct stp_image *image);
        void (*crop)(struct stp_image *image,
                     int left, int top, int right,
                     int bottom);
        void (*rotate_ccw)(struct stp_image *image);
        void (*rotate_cw)(struct stp_image *image);
        void (*rotate_180)(struct stp_image *image);
        int  (*bpp)(struct stp_image *image);
        int  (*width)(struct stp_image *image);
        int  (*height)(struct stp_image *image);
        void (*get_row)(struct stp_image *image,
              unsigned char *data, int row);
        const char *(*get_appname)(struct stp_image *image);
        void (*progress_init)(struct stp_image *image);
        void (*note_progress)(struct stp_image *image,
              double current, double total);
        void (*progress_conclude)(struct stp_image *image);
        void *rep;
      } stp_image_t;

  This is an abstract data type for interfacing with the program which created the image.

Function: const stp_vars_t stp_printer_get_printvars (const stp_printer_t p)

Go to the first, previous, next, last section, table of contents.