X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/41ef27bc78218657d477a8f4334dede5d09ab38d..46b0747592074017ff0ea4b33d4a7194235886e5:/include/stg/plugin.h?ds=sidebyside diff --git a/include/stg/plugin.h b/include/stg/plugin.h index 35a5a4c9..d02ff699 100644 --- a/include/stg/plugin.h +++ b/include/stg/plugin.h @@ -29,12 +29,14 @@ #define PLUGIN_H #include +#include #include "noncopyable.h" -#include "os_int.h" #include "admins.h" #include "users.h" #include "tariffs.h" +#include "services.h" +#include "corporations.h" class TRAFFCOUNTER; class SETTINGS; @@ -43,21 +45,24 @@ struct MODULE_SETTINGS; class PLUGIN : private NONCOPYABLE { public: - virtual void SetUsers(USERS * u) = 0; - virtual void SetTariffs(TARIFFS * t) = 0; - virtual void SetAdmins(ADMINS * a) = 0; - virtual void SetTraffcounter(TRAFFCOUNTER * tc) = 0; - virtual void SetStore(STORE * st) = 0; - virtual void SetStgSettings(const SETTINGS * s) = 0; - virtual void SetSettings(const MODULE_SETTINGS & s) = 0; + virtual ~PLUGIN() {} + virtual void SetUsers(USERS *) {} + virtual void SetTariffs(TARIFFS *) {} + virtual void SetAdmins(ADMINS *) {} + virtual void SetServices(SERVICES *) {} + virtual void SetCorporations(CORPORATIONS *) {} + virtual void SetTraffcounter(TRAFFCOUNTER *) {} + virtual void SetStore(STORE *) {} + virtual void SetStgSettings(const SETTINGS *) {} + virtual void SetSettings(const MODULE_SETTINGS &) {} virtual int ParseSettings() = 0; virtual int Start() = 0; virtual int Stop() = 0; - virtual int Reload() = 0; + virtual int Reload(const MODULE_SETTINGS &) = 0; virtual bool IsRunning() = 0; virtual const std::string & GetStrError() const = 0; - virtual const std::string GetVersion() const = 0; + virtual std::string GetVersion() const = 0; virtual uint16_t GetStartPosition() const = 0; virtual uint16_t GetStopPosition() const = 0; };