]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/socketengine_select.h
Add irc::dynamicbitmask class. Feel free to take a look and offer suggestions, as...
[user/henk/code/inspircd.git] / include / socketengine_select.h
index f6c03409190c225ee6ad792584ca6e1512b77aed..847e044a117899cae208e4340993e081d602a685 100644 (file)
@@ -36,9 +36,12 @@ private:
        /** Because select() does not track an fd list for us between calls, we have one of our own
         */
        std::map<int,int> fds;
+       /** List of writeable ones (WantWrite())
+        */
+       bool writeable[MAX_DESCRIPTORS];
        /** The read set and write set, populated before each call to select().
         */
-       fd_set wfdset, rfdset;
+       fd_set wfdset, rfdset, errfdset;
 public:
        /** Create a new SelectEngine
         * @param Instance The creator of this object
@@ -53,6 +56,7 @@ public:
        virtual bool DelFd(EventHandler* eh);
        virtual int DispatchEvents();
        virtual std::string GetName();
+       virtual void WantWrite(EventHandler* eh);
 };
 
 /** Creates a SocketEngine