]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/ctables.h
Run DelMode and DelModeWatcher in RemoveModule
[user/henk/code/inspircd.git] / include / ctables.h
index a2f4e9bb3e68a3afce36178ef81abfd47e47dbdc..c0c094e6f5562dc33c4450fd929fa7480123a2b1 100644 (file)
@@ -46,6 +46,7 @@ enum RouteType
        ROUTE_TYPE_LOCALONLY,
        ROUTE_TYPE_BROADCAST,
        ROUTE_TYPE_UNICAST,
+       ROUTE_TYPE_MESSAGE,
        ROUTE_TYPE_OPT_BCAST,
        ROUTE_TYPE_OPT_UCAST
 };
@@ -57,10 +58,10 @@ struct RouteDescriptor
 {
        /** Routing type from the enum above
         */
-       const RouteType type;
+       RouteType type;
        /** For unicast, the destination server's name
         */
-       const std::string serverdest;
+       std::string serverdest;
 
        /** Create a RouteDescriptor
         */
@@ -74,6 +75,8 @@ struct RouteDescriptor
 #define ROUTE_BROADCAST (RouteDescriptor(ROUTE_TYPE_BROADCAST, ""))
 /** Route this command to a single server (do nothing if own server name specified) */
 #define ROUTE_UNICAST(x) (RouteDescriptor(ROUTE_TYPE_UNICAST, x))
+/** Route this command as a message with the given target (any of user, #channel, @#channel, $servermask) */
+#define ROUTE_MESSAGE(x) (RouteDescriptor(ROUTE_TYPE_MESSAGE, x))
 /** Route this command to all servers wrapped via ENCAP, so ignored if not understood */
 #define ROUTE_OPT_BCAST (RouteDescriptor(ROUTE_TYPE_OPT_BCAST, ""))
 /** Route this command to a single server wrapped via ENCAP, so ignored if not understood */