summaryrefslogtreecommitdiff
path: root/include/extnsionst.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/extnsionst.h')
-rw-r--r--include/extnsionst.h35
1 files changed, 28 insertions, 7 deletions
diff --git a/include/extnsionst.h b/include/extnsionst.h
index 6bb52767d..6de9be309 100644
--- a/include/extnsionst.h
+++ b/include/extnsionst.h
@@ -45,6 +45,8 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.
******************************************************************/
+/* $XFree86: xc/programs/Xserver/include/extnsionst.h,v 3.7 2001/12/14 19:59:54 dawes Exp $ */
+
#ifndef EXTENSIONSTRUCT_H
#define EXTENSIONSTRUCT_H
@@ -79,15 +81,32 @@ typedef struct _ExtensionEntry {
#endif
} ExtensionEntry;
-/* any attempt to declare the types of the parameters to the functions
- * in EventSwapVector fails. The functions take pointers to two events,
- * but the exact event types that are declared vary from one function
- * to another. You can't even put void *, void * (the ibm compiler
- * complains, anyway).
+/*
+ * The arguments may be different for extension event swapping functions.
+ * Deal with this by casting when initializing the event's EventSwapVector[]
+ * entries.
*/
-extern void (* EventSwapVector[128]) ();
+typedef void (*EventSwapPtr) (
+#if NeedFunctionPrototypes
+ xEvent *,
+ xEvent *
+#endif
+);
+
+extern EventSwapPtr EventSwapVector[128];
+
+extern void NotImplemented ( /* FIXME: this may move to another file... */
+#if NeedFunctionPrototypes
+ xEvent *,
+ xEvent *
+#endif
+);
-typedef void (* ExtensionLookupProc)(/*args indeterminate*/);
+typedef void (* ExtensionLookupProc)( /*args indeterminate*/
+#ifdef EXTENSION_PROC_ARGS
+ EXTENSION_PROC_ARGS
+#endif
+);
typedef struct _ProcEntry {
char *name;
@@ -140,6 +159,8 @@ extern Bool AddExtensionAlias(
#endif
);
+extern ExtensionEntry *CheckExtension(const char *extname);
+
extern ExtensionLookupProc LookupProc(
#if NeedFunctionPrototypes
char* /*name*/,