]> git.stg.codes - stg.git/blobdiff - include/stg/plugin.h
Port to CMake, get rid of os_int.h.
[stg.git] / include / stg / plugin.h
index 35a5a4c9fef2d6c7bc866440f346ab6f3d22c203..d02ff6992e7a125f5f3599ad48bc4a2f1bdf74f2 100644 (file)
 #define PLUGIN_H
 
 #include <string>
+#include <cstdint>
 
 #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;
 };