http://packetstormsecurity.org/UNIX/admin/xscreensaver-3.29.tar.gz
[xscreensaver] / hacks / xlockmoreI.h
index 48279640b7d074448807cf9a9ea61a782272d94f..ef7b51d8a5d6d9d32ef639005bad0db3b67c2c47 100644 (file)
@@ -1,5 +1,5 @@
 /* xlockmore.h --- xscreensaver compatibility layer for xlockmore modules.
- * xscreensaver, Copyright (c) 1997 Jamie Zawinski <jwz@netscape.com>
+ * xscreensaver, Copyright (c) 1997, 1998, 2001 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
 
 #include "screenhack.h"
 
+#ifdef HAVE_XSHM_EXTENSION
+# include "xshm.h"
+#endif /* HAVE_XSHM_EXTENSION */
+
+
 /* I'm told that the Sun version of OpenGL needs to have the constant
    SUN_OGL_NO_VERTEX_MACROS defined in order for morph3d to compile
    (the number of arguments to the glNormal3f macro changes...)
@@ -63,6 +68,15 @@ typedef struct ModeInfo {
   long threed_none_color;
   long threed_delta;
   Bool wireframe_p;
+  Bool is_drawn;
+
+  Bool fps_p;
+
+#ifdef HAVE_XSHM_EXTENSION
+  Bool use_shm;
+  XShmSegmentInfo shm_info;
+#endif
+
 } ModeInfo;
 
 typedef enum {  t_String, t_Float, t_Int, t_Bool } xlockmore_type;
@@ -95,10 +109,7 @@ extern void xlockmore_screenhack (Display *dpy, Window window,
                                  Bool want_bright_colors,
                                  void (*hack_init) (ModeInfo *),
                                  void (*hack_draw) (ModeInfo *),
+                                 void (*hack_reshape) (ModeInfo *, int, int),
                                  void (*hack_free) (ModeInfo *));
 
-#ifdef USE_GL
-extern Visual *get_gl_visual (Screen *screen, char *name, char *class);
-#endif
-
 #endif /* __XLOCKMORE_INTERNAL_H__ */