The R Project SVN R

Rev

Rev 19875 | Rev 21060 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 19875 Rev 19966
Line 65... Line 65...
65
     * the Windows device.
65
     * the Windows device.
66
     */
66
     */
67
    GE_ScalePS = 8
67
    GE_ScalePS = 8
68
} GEevent;
68
} GEevent;
69
 
69
 
70
/* The full definition should be ...
-
 
71
 *    typedef SEXP (* GEcallback)(GEvent, *GEDevDesc, SEXP);
-
 
72
 *
-
 
73
 * ... but I could not figure out how to use *GEDevDesc before
-
 
74
 * the definition of GEDevDesc.
70
typedef struct _GEDevDesc GEDevDesc;
75
 */
-
 
76
typedef SEXP (* GEcallback)();
-
 
77
 
71
 
-
 
72
typedef SEXP (* GEcallback)(GEevent, GEDevDesc *, SEXP);
-
 
73
 
78
typedef struct {
74
typedef struct { 
79
    /* An array of information about each graphics system that
75
    /* An array of information about each graphics system that
80
     * has registered with the graphics engine.
76
     * has registered with the graphics engine.
81
     * This is used to store graphics state for each graphics
77
     * This is used to store graphics state for each graphics
82
     * system on each device.
78
     * system on each device.
83
     */
79
     */
Line 96... Line 92...
96
     * the graphics engine will know what array index to use.
92
     * the graphics engine will know what array index to use.
97
     */
93
     */
98
    GEcallback callback;
94
    GEcallback callback;
99
} GESystemDesc;
95
} GESystemDesc;
100
 
96
 
101
typedef struct {
97
struct _GEDevDesc {
102
    int newDevStruct;
98
    int newDevStruct;
103
    NewDevDesc *dev;
99
    NewDevDesc *dev;
104
    /* Information about a device which has nothing to do with
100
    /* Information about a device which has nothing to do with
105
     * R's concept of a graphics engine.
101
     * R's concept of a graphics engine.
106
     */
102
     */
107
    GESystemDesc *gesd[MAX_GRAPHICS_SYSTEMS];
103
    GESystemDesc *gesd[MAX_GRAPHICS_SYSTEMS];
108
} GEDevDesc;
104
};
109
 
105
 
110
GEDevDesc* GEcreateDevDesc(NewDevDesc* dev);
106
GEDevDesc* GEcreateDevDesc(NewDevDesc* dev);
111
void GEdestroyDevDesc(GEDevDesc* dd);
107
void GEdestroyDevDesc(GEDevDesc* dd);
112
void* GEsystemState(GEDevDesc *dd, int index);
108
void* GEsystemState(GEDevDesc *dd, int index);
113
void GEregisterWithDevice(GEDevDesc *dd);
109
void GEregisterWithDevice(GEDevDesc *dd);