diff src/glyphs.h @ 3092:141c2920ea48

[xemacs-hg @ 2005-11-25 01:41:31 by crestani] Incremental Garbage Collector
author crestani
date Fri, 25 Nov 2005 01:42:08 +0000
parents 1e7cc382eb16
children d674024a8674
line wrap: on
line diff
--- a/src/glyphs.h	Thu Nov 24 22:51:25 2005 +0000
+++ b/src/glyphs.h	Fri Nov 25 01:42:08 2005 +0000
@@ -1067,6 +1067,9 @@
 typedef struct glyph_cachel glyph_cachel;
 struct glyph_cachel
 {
+#ifdef NEW_GC
+  struct lrecord_header header;
+#endif /* not NEW_GC */
   Lisp_Object glyph;
 
   unsigned int dirty :1;	/* I'm copying faces here. I'm not
@@ -1082,6 +1085,19 @@
   unsigned short descent;
 };
 
+#ifdef NEW_GC
+typedef struct glyph_cachel Lisp_Glyph_Cachel;
+
+DECLARE_LRECORD (glyph_cachel, Lisp_Glyph_Cachel);
+
+#define XGLYPH_CACHEL(x) \
+  XRECORD (x, glyph_cachel, Lisp_Glyph_Cachel)
+#define wrap_glyph_cachel(p) wrap_record (p, glyph_cachel)
+#define GLYPH_CACHEL_P(x) RECORDP (x, glyph_cachel)
+#define CHECK_GLYPH_CACHEL(x) CHECK_RECORD (x, glyph_cachel)
+#define CONCHECK_GLYPH_CACHEL(x) CONCHECK_RECORD (x, glyph_cachel)
+#endif /* NEW_GC */
+
 #define CONT_GLYPH_INDEX	(glyph_index) 0
 #define TRUN_GLYPH_INDEX	(glyph_index) 1
 #define HSCROLL_GLYPH_INDEX	(glyph_index) 2
@@ -1179,11 +1195,23 @@
 
 struct expose_ignore
 {
+#ifdef NEW_GC
+  struct lrecord_header header;
+#endif /* NEW_GC */
   int x, y;
   int width, height;
   struct expose_ignore *next;
 };
 
+#ifdef NEW_GC
+DECLARE_LRECORD (expose_ignore, struct expose_ignore);
+#define XEXPOSE_IGNORE(x) XRECORD (x, expose_ignore, struct expose_ignore)
+#define wrap_expose_ignore(p) wrap_record (p, expose_ignore)
+#define EXPOSE_IGNOREP(x) RECORDP (x, expose_ignore)
+#define CHECK_EXPOSE_IGNORE(x) CHECK_RECORD (x, expose_ignore)
+#define CONCHECK_EXPOSE_IGNORE(x) CONCHECK_RECORD (x, expose_ignore)
+#endif /* NEW_GC */
+
 int check_for_ignored_expose (struct frame* f, int x, int y, int width,
 			      int height);
 extern int hold_ignored_expose_registration;