void (*flush) (struct outp_driver *);
+ void (*output_chart) (struct outp_driver *, const struct chart *);
+
/* special != 0 only. */
void (*submit) (struct outp_driver *, struct som_entity *);
void (*text_metrics) (struct outp_driver *, const struct outp_text *,
int *width, int *height);
void (*text_draw) (struct outp_driver *, const struct outp_text *);
- void (*initialise_chart)(struct outp_driver *, struct chart *);
- void (*finalise_chart)(struct outp_driver *, struct chart *);
};
/* Device types. */
int vert_line_width[OUTP_L_COUNT]; /* Width of vertical lines. */
void *ext; /* Private extension record. */
- void *prc; /* Per-procedure extension record. */
};
/* Option structure for the keyword recognizer. */
void outp_enable_device (bool enable, int device);
struct outp_driver *outp_drivers (struct outp_driver *);
-bool outp_parse_options (struct substring options,
- bool (*) (struct outp_driver *, const char *key,
- const struct string *value),
- struct outp_driver *);
+bool outp_parse_options (const char *driver_name, struct substring options,
+ bool (*callback) (void *aux, const char *key,
+ const struct string *value),
+ void *aux);
int outp_match_keyword (const char *, const struct outp_option *, int *);
int outp_evaluate_dimension (const char *);