};
+enum Priority { PRIORITY_FIRST, PRIORITY_DONTCARE, PRIORITY_LAST };
+
enum Implementation { I_OnUserConnect, I_OnUserQuit, I_OnUserDisconnect, I_OnUserJoin, I_OnUserPart, I_OnRehash, I_OnServerRaw,
I_OnExtendedMode, I_OnUserPreJoin, I_OnUserPreKick, I_OnUserKick, I_OnOper, I_OnInfo, I_OnWhois, I_OnUserPreInvite,
I_OnUserInvite, I_OnUserPreMessage, I_OnUserPreNotice, I_OnUserPreNick, I_OnUserMessage, I_OnUserNotice, I_OnMode,
virtual void Implements(char* Implements);
+ virtual Priority Prioritize();
+
/** Called when a user connects.
* The details of the connecting user are available to you in the parameter userrec *user
* @param user The user who is connecting
*/
virtual void AddSocket(InspSocket* sock);
+ /** Forcibly removes a class derived from InspSocket from the servers socket engine.
+ */
+ virtual void RemoveSocket(InspSocket* sock);
+
/** Deletes a class derived from InspSocket from the server's socket engine.
*/
virtual void DelSocket(InspSocket* sock);