]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/modules.h
Convert IsChannel to std::function.
[user/henk/code/inspircd.git] / include / modules.h
index 5244930d003f181c0e338fea984b4e8408d0a59f..ce2402964c4516a1f065f7b0d8a0255f53965017 100644 (file)
@@ -243,6 +243,7 @@ enum Implementation
        I_OnBuildNeighborList, I_OnGarbageCollect, I_OnSetConnectClass,
        I_OnText, I_OnPassCompare, I_OnNamesListItem, I_OnNumeric,
        I_OnPreRehash, I_OnModuleRehash, I_OnSendWhoLine, I_OnChangeIdent, I_OnSetUserIP,
+       I_OnServiceAdd, I_OnServiceDel,
        I_END
 };
 
@@ -285,7 +286,7 @@ class CoreExport Module : public classbase, public usecountbase
        /** Clean up prior to destruction
         * If you override, you must call this AFTER your module's cleanup
         */
-       virtual CullResult cull() CXX11_OVERRIDE;
+       CullResult cull() CXX11_OVERRIDE;
 
        /** Default destructor.
         * destroys a module class
@@ -1006,6 +1007,16 @@ class CoreExport Module : public classbase, public usecountbase
         * @param user The user whose IP is being set
         */
        virtual void OnSetUserIP(LocalUser* user);
+
+       /** Called whenever a ServiceProvider is registered.
+        * @param service ServiceProvider being registered.
+        */
+       virtual void OnServiceAdd(ServiceProvider& service);
+
+       /** Called whenever a ServiceProvider is unregistered.
+        * @param service ServiceProvider being unregistered.
+        */
+       virtual void OnServiceDel(ServiceProvider& service);
 };
 
 /** A list of modules