Annotation of OpenXM_contrib/gnuplot/term/driver.h, Revision 1.1.1.1
1.1 maekawa 1: /* $Id: driver.h,v 1.9 1998/06/18 14:59:19 ddenholm Exp $ */
2:
3: /* GNUPLOT - driver.h $Id: driver.h,v 1.9 1998/06/18 14:59:19 ddenholm Exp $ */
4:
5: /*[
6: * Copyright 1986 - 1993, 1998 Thomas Williams, Colin Kelley
7: *
8: * Permission to use, copy, and distribute this software and its
9: * documentation for any purpose with or without fee is hereby granted,
10: * provided that the above copyright notice appear in all copies and
11: * that both that copyright notice and this permission notice appear
12: * in supporting documentation.
13: *
14: * Permission to modify the software is granted, but not the right to
15: * distribute the complete modified source code. Modifications are to
16: * be distributed as patches to the released version. Permission to
17: * distribute binaries produced by compiling modified sources is granted,
18: * provided you
19: * 1. distribute the corresponding source modifications from the
20: * released version in the form of a patch file along with the binaries,
21: * 2. add special version identification to distinguish your version
22: * in addition to the base release version number,
23: * 3. provide your name and address as the primary contact for the
24: * support of your modified version, and
25: * 4. retain our contact information in regard to use of the base
26: * software.
27: * Permission to distribute the released version of the source code along
28: * with corresponding source modifications in the form of a patch file is
29: * granted with same provisions 2 through 4 for binary distributions.
30: *
31: * This software is provided "as is" without express or implied warranty
32: * to the extent permitted by applicable law.
33: ]*/
34:
35:
36: #ifndef TERM_DRIVER_H
37: #define TERM_DRIVER_H
38:
39: #if 0
40: /* Dangerous; putc may already be defined as fputc */
41: /* corey@cac added the next line for efficiency */
42: #define fputc putc
43: #endif
44:
45: /* functions provided by in term.c */
46:
47: void do_point __PROTO((unsigned int x, unsigned int y, int number));
48: void line_and_point __PROTO((unsigned int x, unsigned int y, int number));
49: void do_arrow __PROTO((unsigned int sx, unsigned int sy, unsigned int ex, unsigned int ey, int head));
50: int null_text_angle __PROTO((int ang));
51: int null_justify_text __PROTO((enum JUSTIFY just));
52: int null_scale __PROTO((double x, double y));
53: int do_scale __PROTO((double x, double y));
54: void options_null __PROTO((void));
55: void UNKNOWN_null __PROTO((void));
56: int set_font_null __PROTO((char *s));
57: void null_set_pointsize __PROTO((double size));
58:
59: extern FILE *gpoutfile;
60: extern struct termentry *term;
61: extern float xsize, ysize;
62:
63: /* for use by all drivers */
64: #ifndef NEXT
65: #define sign(x) ((x) >= 0 ? 1 : -1)
66: #else
67: /* it seems that sign as macro causes some conflict with precompiled headers */
68: static int sign(int x)
69: {
70: return x >= 0 ? 1 : -1;
71: }
72: #endif /* NEXT */
73:
74: /* abs as macro is now uppercase, there are conflicts with a few C compilers
75: that have abs as macro, even though ANSI defines abs as function
76: (int abs(int)). Most calls to ABS in term/ could be changed to abs if
77: they use only int arguments and others to fabs, but for the time being,
78: all calls are done via the macro */
79: #ifndef ABS
80: # define ABS(x) ((x) >= 0 ? (x) : -(x))
81: #endif /* ABS */
82:
83: /* GPMIN/GPMAX are already defined in "plot.h" */
84:
85: #define NICE_LINE 0
86: #define POINT_TYPES 6
87:
88: #endif /* TERM_DRIVER_H */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>