X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/8c6fa3fbaccc22127280bf77a48fab5a3ee0716e..46b0747592074017ff0ea4b33d4a7194235886e5:/projects/stargazer/plugins/other/smux/tables.cpp diff --git a/projects/stargazer/plugins/other/smux/tables.cpp b/projects/stargazer/plugins/other/smux/tables.cpp deleted file mode 100644 index c3e3ef54..00000000 --- a/projects/stargazer/plugins/other/smux/tables.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#include -#include -#include -#include - -#include "stg/user_property.h" -#include "stg/tariffs.h" -#include "stg/users.h" - -#include "tables.h" - -std::pair TD2Info(const TARIFF_DATA & td); - -void TariffUsersTable::UpdateSensors(Sensors & sensors) const -{ -std::map data; - -std::list tdl; -tariffs.GetTariffsData(&tdl); -std::transform(tdl.begin(), - tdl.end(), - std::inserter(data, data.begin()), - TD2Info); - -int handle = users.OpenSearch(); -assert(handle && "USERS::OpenSearch is always correct"); - -USER_PTR user; -while (!users.SearchNext(handle, &user)) - { - if (user->GetDeleted()) - continue; - std::string tariffName(user->GetProperty().tariffName.ConstData()); - std::map::iterator it(data.lower_bound(tariffName)); - if (it == data.end() || - it->first != tariffName) - { - data.insert(it, std::make_pair(tariffName, 1)); - } - else - { - ++it->second; - } - } - -users.CloseSearch(handle); - -size_t idx = 1; -OID prefixOid(prefix); - -std::map::const_iterator it(data.begin()); -while (it != data.end()) - { - sensors[prefixOid.copyWithSuffix(2, static_cast(idx))] = new ConstSensor(it->first); - sensors[prefixOid.copyWithSuffix(3, static_cast(idx))] = new ConstSensor(it->second); - ++idx; - ++it; - } -} - -std::pair TD2Info(const TARIFF_DATA & td) -{ -return std::make_pair(td.tariffConf.name, 0); -}