X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fsocketengine.h;h=2b759dad84ef541818296ce0439b8086c7be4a8d;hb=327bacd3687f307a5f8586856a94b16c9e4370bf;hp=01afb8f91cf1a44bb9cf1119e3b8f9fcbd5bc995;hpb=124c17e14134a4999afc1a5e981ab7c75b3694b9;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/socketengine.h b/include/socketengine.h index 01afb8f91..2b759dad8 100644 --- a/include/socketengine.h +++ b/include/socketengine.h @@ -1,9 +1,15 @@ /* * InspIRCd -- Internet Relay Chat Daemon * + * Copyright (C) 2013-2016 Attila Molnar + * Copyright (C) 2013-2014 Adam + * Copyright (C) 2012-2013, 2017-2019 Sadie Powell + * Copyright (C) 2012 Robby + * Copyright (C) 2009 Uli Schlachter * Copyright (C) 2009 Daniel De Graaf - * Copyright (C) 2007-2008 Robin Burchell - * Copyright (C) 2005-2007 Craig Edwards + * Copyright (C) 2007-2008, 2017 Robin Burchell + * Copyright (C) 2007-2008, 2010 Craig Edwards + * Copyright (C) 2007 burlex * Copyright (C) 2007 Dennis Friis * * This file is part of InspIRCd. InspIRCd is free software: you can @@ -164,12 +170,21 @@ class CoreExport EventHandler : public classbase * registered with the SocketEngine */ int fd; + + /** Swaps the internals of this EventHandler with another one. + * @param other A EventHandler to swap internals with. + */ + void SwapInternals(EventHandler& other); + public: /** Get the current file descriptor * @return The file descriptor of this handler */ inline int GetFd() const { return fd; } + /** Checks if this event handler has a fd associated with it. */ + inline bool HasFd() const { return fd >= 0; } + inline int GetEventMask() const { return event_mask; } /** Set a new file desciptor @@ -298,7 +313,7 @@ class CoreExport SocketEngine static void ResizeDouble(std::vector& vect) { if (SocketEngine::CurrentSetSize > vect.size()) - vect.resize(vect.size() * 2); + vect.resize(SocketEngine::CurrentSetSize * 2); } public: