X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fextensible.h;h=1da45cee632ff4ff63bd104db927c6e603112e55;hb=8281315255d30d7cad6da4936cf9276b7f58a4dc;hp=5ac4fa9dab0cfd755ace8fd679876501965646b5;hpb=f330428223ff90eeae3e22e8de20e5aea1188061;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/extensible.h b/include/extensible.h index 5ac4fa9da..1da45cee6 100644 --- a/include/extensible.h +++ b/include/extensible.h @@ -19,8 +19,6 @@ #pragma once -#include - enum SerializeFormat { /** Shown to a human (does not need to be unserializable) */ @@ -38,8 +36,8 @@ enum SerializeFormat class CoreExport ExtensionItem : public ServiceProvider, public usecountbase { public: - /** Extensible subclasses - */ + /** Extensible subclasses + */ enum ExtensibleType { EXT_USER, @@ -69,6 +67,10 @@ class CoreExport ExtensionItem : public ServiceProvider, public usecountbase /** Free the item */ virtual void free(void* item) = 0; + /** Register this object in the ExtensionManager + */ + void RegisterService() CXX11_OVERRIDE; + protected: /** Get the item from the internal map */ void* get_raw(const Extensible* container) const; @@ -109,7 +111,7 @@ class CoreExport Extensible : public classbase inline const ExtensibleStore& GetExtList() const { return extensions; } Extensible(); - virtual CullResult cull(); + virtual CullResult cull() CXX11_OVERRIDE; virtual ~Extensible(); void doUnhookExtensions(const std::vector >& toRemove);