summaryrefslogtreecommitdiff
path: root/comm/TkMultiplexer.h
diff options
context:
space:
mode:
authorchatty1993-07-27 14:02:13 +0000
committerchatty1993-07-27 14:02:13 +0000
commit618df147e19d12075f351930d6bf85e9b171c99c (patch)
tree03b308ed0d9dca857732ffeba66d22805bd1ca0c /comm/TkMultiplexer.h
parent9b053fc3871b44405f558b84d031346e46d734f1 (diff)
downloadivy-league-618df147e19d12075f351930d6bf85e9b171c99c.zip
ivy-league-618df147e19d12075f351930d6bf85e9b171c99c.tar.gz
ivy-league-618df147e19d12075f351930d6bf85e9b171c99c.tar.bz2
ivy-league-618df147e19d12075f351930d6bf85e9b171c99c.tar.xz
Initial revision
Diffstat (limited to 'comm/TkMultiplexer.h')
-rw-r--r--comm/TkMultiplexer.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/comm/TkMultiplexer.h b/comm/TkMultiplexer.h
new file mode 100644
index 0000000..c1ecded
--- /dev/null
+++ b/comm/TkMultiplexer.h
@@ -0,0 +1,44 @@
+/*
+ * The Unix Channel
+ *
+ * by Michel Beaudouin-Lafon and Stephane Chatty
+ *
+ * Copyright 1990-1993
+ * Laboratoire de Recherche en Informatique (LRI)
+ * Centre d'Etudes de la Navigation Aerienne
+ *
+ * Tk-based multiplexers
+ *
+ * $Id$
+ * $CurLog$
+ */
+
+#ifndef TkMultiplexer_H_
+#define TkMultiplexer_H_
+
+#include "Multiplexer.h"
+extern "C" {
+#include "tk.h"
+}
+
+class UchTkMultiplexer : public UchBaseMultiplexer {
+private:
+static void FireSignals (ClientData);
+static void FireTimers (ClientData);
+
+protected:
+ bool Active [NFILE];
+ Tk_TimerToken TimeOut;
+
+ void SetMasks (int, IOMODE);
+ void SetTimeOut (Millisecond);
+ void SuppressTimeOut ();
+ void AddSignalHook ();
+ MPX_RES Loop ();
+
+public:
+ UchTkMultiplexer ();
+ ~UchTkMultiplexer ();
+};
+
+#endif /* TkMultiplexer_H_ */