]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/inspircd.h
Add a setting to <connect> allowing the threshold for activation of the penalty syste...
[user/henk/code/inspircd.git] / include / inspircd.h
index df80ba4bfc425d0eb39e29f3ca21fa0522b40e5e..9f7d07f5d1bec200d3b0c9410291d90960302371 100644 (file)
 /** A list of failed port bindings, used for informational purposes on startup */
 typedef std::vector<std::pair<std::string, std::string> > FailedPortList;
 
-/** A cached text file stored with its contents as lines
- */
-typedef std::deque< std::string > file_cache;
-
-/** A configuration key and value pair
- */
-typedef std::pair< std::string, std::string > KeyVal;
-
-/** A list of related configuration keys and values
- */
-typedef std::vector< KeyVal > KeyValList;
-
-/** An entire config file, built up of KeyValLists
- */
-typedef std::multimap< std::string, KeyValList > ConfigDataHash;
-
 class InspIRCd;
 CoreExport extern InspIRCd* ServerInstance;
 
 #include "inspircd_config.h"
 #include "inspircd_version.h"
+#include "caller.h"
+#include "cull_list.h"
 #include "extensible.h"
 #include "numerics.h"
 #include "uid.h"
@@ -94,7 +80,6 @@ CoreExport extern InspIRCd* ServerInstance;
 #include "mode.h"
 #include "socketengine.h"
 #include "snomasks.h"
-#include "cull_list.h"
 #include "filelogger.h"
 #include "caller.h"
 #include "modules.h"
@@ -223,7 +208,7 @@ template<typename T, typename V, typename R> inline char* itoa(const T &in, V *r
  * It is used by the InspIRCd class, which internally
  * has an instance of it.
  */
-class serverstats : public classbase
+class serverstats
 {
   public:
        /** Number of accepted connections
@@ -313,14 +298,12 @@ class CoreExport ConfigReaderThread : public Thread
 };
 
 /** The main class of the irc server.
- * This class contains instances of all the other classes
- * in this software, with the exception of the base class,
- * classbase. Amongst other things, it contains a ModeParser,
- * a DNS object, a CommandParser object, and a list of active
- * Module objects, and facilities for Module objects to
- * interact with the core system it implements.
+ * This class contains instances of all the other classes in this software.
+ * Amongst other things, it contains a ModeParser, a DNS object, a CommandParser
+ * object, and a list of active Module objects, and facilities for Module
+ * objects to interact with the core system it implements.
  */
-class CoreExport InspIRCd : public classbase
+class CoreExport InspIRCd
 {
  private:
        /** Holds the current UID. Used to generate the next one.
@@ -381,6 +364,8 @@ class CoreExport InspIRCd : public classbase
        /** Global cull list, will be processed on next iteration
         */
        CullList GlobalCulls;
+       /** Actions that must happen outside of the current call stack */
+       ActionList AtomicActions;
 
        /**** Functors ****/