Actual source code: drawimpl.h
1: /* $Id: drawimpl.h,v 1.32 2001/08/06 21:13:34 bsmith Exp $ */
2: /*
3: Abstract data structure and functions for graphics.
4: */
6: #if !defined(_DRAWIMPL_H)
7: #define _DRAWIMPL_H
9: #include petsc.h
11: struct _PetscDrawOps {
12: int (*setdoublebuffer)(PetscDraw);
13: int (*flush)(PetscDraw);
14: int (*line)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal,int);
15: int (*linesetwidth)(PetscDraw,PetscReal);
16: int (*linegetwidth)(PetscDraw,PetscReal*);
17: int (*point)(PetscDraw,PetscReal,PetscReal,int);
18: int (*pointsetsize)(PetscDraw,PetscReal);
19: int (*string)(PetscDraw,PetscReal,PetscReal,int,const char[]);
20: int (*stringvertical)(PetscDraw,PetscReal,PetscReal,int,const char[]);
21: int (*stringsetsize)(PetscDraw,PetscReal,PetscReal);
22: int (*stringgetsize)(PetscDraw,PetscReal*,PetscReal*);
23: int (*setviewport)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal);
24: int (*clear)(PetscDraw);
25: int (*synchronizedflush)(PetscDraw);
26: int (*rectangle)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal,int,int,int,int);
27: int (*triangle)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal,PetscReal,PetscReal,int,int,int);
28: int (*ellipse)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal,int);
29: int (*getmousebutton)(PetscDraw,PetscDrawButton*,PetscReal *,PetscReal *,PetscReal*,PetscReal*);
30: int (*pause)(PetscDraw);
31: int (*synchronizedclear)(PetscDraw);
32: int (*beginpage)(PetscDraw);
33: int (*endpage)(PetscDraw);
34: int (*getpopup)(PetscDraw,PetscDraw*);
35: int (*settitle)(PetscDraw,const char[]);
36: int (*checkresizedwindow)(PetscDraw);
37: int (*resizewindow)(PetscDraw,int,int);
38: int (*destroy)(PetscDraw);
39: int (*view)(PetscDraw,PetscViewer);
40: int (*getsingleton)(PetscDraw,PetscDraw*);
41: int (*restoresingleton)(PetscDraw,PetscDraw*);
42: int (*setcoordinates)(PetscDraw,PetscReal,PetscReal,PetscReal,PetscReal);
43: };
45: struct _p_PetscDraw {
46: PETSCHEADER(struct _PetscDrawOps)
47: int pause; /* sleep time after a synchronized flush */
48: PetscReal port_xl,port_yl,port_xr,port_yr;
49: PetscReal coor_xl,coor_yl,coor_xr,coor_yr;
50: char *title;
51: char *display;
52: PetscDraw popup;
53: int x,y,h,w;
54: void *data;
55: };
57: #endif