]> git.stg.codes - stg.git/blobdiff - include/stg/plugin.h
Allow user-defined 'ar' and 'ranlib'.
[stg.git] / include / stg / plugin.h
index 35a5a4c9fef2d6c7bc866440f346ab6f3d22c203..2deabcc3c853b7fab16d52808cd8973be056fbcc 100644 (file)
@@ -35,6 +35,8 @@
 #include "admins.h"
 #include "users.h"
 #include "tariffs.h"
 #include "admins.h"
 #include "users.h"
 #include "tariffs.h"
+#include "services.h"
+#include "corporations.h"
 
 class TRAFFCOUNTER;
 class SETTINGS;
 
 class TRAFFCOUNTER;
 class SETTINGS;
@@ -43,21 +45,24 @@ struct MODULE_SETTINGS;
 
 class PLUGIN : private NONCOPYABLE {
 public:
 
 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                 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 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;
 };
     virtual uint16_t            GetStartPosition() const = 0;
     virtual uint16_t            GetStopPosition() const = 0;
 };