aboutsummaryrefslogtreecommitdiffstats
path: root/ncpd/channel.h
diff options
context:
space:
mode:
Diffstat (limited to 'ncpd/channel.h')
-rw-r--r--ncpd/channel.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/ncpd/channel.h b/ncpd/channel.h
new file mode 100644
index 0000000..b71e248
--- /dev/null
+++ b/ncpd/channel.h
@@ -0,0 +1,34 @@
+#ifndef _channel_h_
+#define _channel_h_
+
+#include <stdio.h>
+
+#include "bool.h"
+
+class ncp;
+class bufferStore;
+
+class channel {
+public:
+ channel(ncp *ncpController);
+ void newNcpController(ncp *ncpController);
+
+ void setNcpChannel(int chan);
+ void ncpSend(bufferStore &a);
+ virtual void ncpDataCallback(bufferStore &a) = NULL;
+ virtual const char *getNcpConnectName() = NULL;
+ void ncpConnect();
+ virtual void ncpConnectAck() = NULL;
+ virtual void ncpConnectTerminate() = NULL;
+ void ncpDisconnect();
+
+ // The following two calls are used for destructing an instance
+ virtual bool terminate(); // Mainloop will terminate this class if true
+ void terminateWhenAsked();
+private:
+ ncp *ncpController;
+ bool _terminate;
+ int ncpChannel;
+};
+
+#endif