]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/other/smux/smux.h
Pass config file via const reference in sgauth/sgathstress settings
[stg.git] / projects / stargazer / plugins / other / smux / smux.h
index c5b94d4c822bb190f7216c4aa15ea2fa9385c8d8..5230a85cd3c02f6b78fb72e339bc31d6dda012cb 100644 (file)
@@ -6,22 +6,26 @@
 #include <string>
 #include <map>
 
 #include <string>
 #include <map>
 
-#include "asn1/SMUX-PDUs.h"
-#include "asn1/ObjectSyntax.h"
+#include "stg/SMUX-PDUs.h"
+#include "stg/ObjectSyntax.h"
 
 #include "stg/os_int.h"
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
 
 #include "stg/os_int.h"
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
-#include "stg/users.h"
-#include "stg/tariffs.h"
 
 #include "sensors.h"
 
 #include "sensors.h"
+#include "tables.h"
+#include "types.h"
 
 extern "C" PLUGIN * GetPlugin();
 
 class USER;
 class SETTINGS;
 class SMUX;
 
 extern "C" PLUGIN * GetPlugin();
 
 class USER;
 class SETTINGS;
 class SMUX;
+class USERS;
+class TARIFFS;
+class SERVICES;
+class CORPORATIONS;
 
 typedef bool (SMUX::*SMUXPacketHandler)(const SMUX_PDUs_t * pdus);
 typedef bool (SMUX::*PDUsHandler)(const PDUs_t * pdus);
 
 typedef bool (SMUX::*SMUXPacketHandler)(const SMUX_PDUs_t * pdus);
 typedef bool (SMUX::*PDUsHandler)(const PDUs_t * pdus);
@@ -54,10 +58,9 @@ public:
 
     void SetUsers(USERS * u) { users = u; }
     void SetTariffs(TARIFFS * t) { tariffs = t; }
 
     void SetUsers(USERS * u) { users = u; }
     void SetTariffs(TARIFFS * t) { tariffs = t; }
-    void SetAdmins(ADMINS *) {}
-    void SetTraffcounter(TRAFFCOUNTER *) {}
-    void SetStore(STORE *) {}
-    void SetStgSettings(const SETTINGS *) {}
+    void SetAdmins(ADMINS * a) { admins = a; }
+    void SetServices(SERVICES * s) { services = s; }
+    void SetCorporations(CORPORATIONS * c) { corporations = c; }
     void SetSettings(const MODULE_SETTINGS & s) { settings = s; }
     int ParseSettings();
 
     void SetSettings(const MODULE_SETTINGS & s) { settings = s; }
     int ParseSettings();
 
@@ -67,7 +70,7 @@ public:
     bool IsRunning() { return running && !stopped; }
 
     const std::string & GetStrError() const { return errorStr; }
     bool IsRunning() { return running && !stopped; }
 
     const std::string & GetStrError() const { return errorStr; }
-    const std::string GetVersion() const { return "Stg SMUX Plugin 1.0"; }
+    const std::string GetVersion() const { return "Stg SMUX Plugin 1.1"; }
     uint16_t GetStartPosition() const { return 100; }
     uint16_t GetStopPosition() const { return 100; }
 
     uint16_t GetStartPosition() const { return 100; }
     uint16_t GetStopPosition() const { return 100; }
 
@@ -80,15 +83,20 @@ private:
 
     bool CloseHandler(const SMUX_PDUs_t * pdus);
     bool RegisterResponseHandler(const SMUX_PDUs_t * pdus);
 
     bool CloseHandler(const SMUX_PDUs_t * pdus);
     bool RegisterResponseHandler(const SMUX_PDUs_t * pdus);
-    bool PDUsHandler(const SMUX_PDUs_t * pdus);
+    bool PDUsRequestHandler(const SMUX_PDUs_t * pdus);
     bool CommitOrRollbackHandler(const SMUX_PDUs_t * pdus);
 
     bool GetRequestHandler(const PDUs_t * pdus);
     bool GetNextRequestHandler(const PDUs_t * pdus);
     bool SetRequestHandler(const PDUs_t * pdus);
 
     bool CommitOrRollbackHandler(const SMUX_PDUs_t * pdus);
 
     bool GetRequestHandler(const PDUs_t * pdus);
     bool GetNextRequestHandler(const PDUs_t * pdus);
     bool SetRequestHandler(const PDUs_t * pdus);
 
+    bool UpdateTables();
+
     USERS * users;
     TARIFFS * tariffs;
     USERS * users;
     TARIFFS * tariffs;
+    ADMINS * admins;
+    SERVICES * services;
+    CORPORATIONS * corporations;
 
     mutable std::string errorStr;
     SMUX_SETTINGS smuxSettings;
 
     mutable std::string errorStr;
     SMUX_SETTINGS smuxSettings;
@@ -104,6 +112,7 @@ private:
     SMUXHandlers smuxHandlers;
     PDUsHandlers pdusHandlers;
     Sensors sensors;
     SMUXHandlers smuxHandlers;
     PDUsHandlers pdusHandlers;
     Sensors sensors;
+    Tables tables;
 
 };
 //-----------------------------------------------------------------------------
 
 };
 //-----------------------------------------------------------------------------