--- ray/src/px/x11raster.h 1990/03/01 13:18:25 1.1 +++ ray/src/px/x11raster.h 2003/07/14 22:24:00 2.3 @@ -1,13 +1,17 @@ -/* Copyright 1990 Regents of the University of California */ - -/* SCCSid "$SunId$ LBL" */ - +/* RCSid: $Id: x11raster.h,v 2.3 2003/07/14 22:24:00 schorsch Exp $ */ /* * x11raster.h - header file for X routines using images. * * 3/1/90 */ +#ifndef _RAD_X11RASTER_H_ +#define _RAD_X11RASTER_H_ +#ifdef __cplusplus +extern "C" { +#endif + + typedef struct { Display *disp; /* the display */ int screen; /* the screen */ @@ -22,19 +26,19 @@ typedef struct { Pixmap pm; /* storage on server side */ } XRASTER; +extern Colormap newcmap(); + extern unsigned long *map_rcolors(); extern Pixmap make_rpixmap(); extern XRASTER *make_raster(); -#define put_raster(d,xdst,ydst,xr) \ - patch_raster(d,0,0,xdst,ydst, \ +#define put_raster(d,xdst,ydst,xr) patch_raster(d,0,0,xdst,ydst, \ (xr)->image->width,(xr)->image->height,xr) -#define patch_raster(d,xsrc,ysrc,xdst,ydst,width,height,xr) \ - (((xr)->pm == 0) \ - ? XPutImage((xr)->disp,d,(xr)->gc,(xr)->image,xsrc,ysrc, \ - xdst,ydst,width,height) \ - : XCopyArea((xr)->disp,(xr)->pm,d,(xr)->gc,xsrc,ysrc, \ - width,height,xdst,ydst)) +#ifdef __cplusplus +} +#endif +#endif /* _RAD_X11RASTER_H_ */ +