X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/9701b7ab4dc4cd709ad4dcaa750fc0021f15e231..e2a55a9e10716abc07c3d160bf1539423c216efd:/include/stg/tariffs.h diff --git a/include/stg/tariffs.h b/include/stg/tariffs.h index 1f91948f..6a851c5a 100644 --- a/include/stg/tariffs.h +++ b/include/stg/tariffs.h @@ -24,21 +24,33 @@ #include #include +#include "notifer.h" + class ADMIN; class TARIFF; -class TARIFF_DATA; +struct TARIFF_DATA; class TARIFFS { public: - virtual int ReadTariffs () = 0; + typedef std::list Tariffs; + + virtual ~TARIFFS() {} + virtual int ReadTariffs () = 0; virtual const TARIFF * FindByName(const std::string & name) const = 0; virtual const TARIFF * GetNoTariff() const = 0; - virtual int GetTariffsNum() const = 0; - virtual int Del(const std::string & name, const ADMIN * admin) = 0; - virtual int Add(const std::string & name, const ADMIN * admin) = 0; - virtual int Chg(const TARIFF_DATA & td, const ADMIN * admin) = 0; + virtual int Del(const std::string & name, const ADMIN * admin) = 0; + virtual int Add(const std::string & name, const ADMIN * admin) = 0; + virtual int Chg(const TARIFF_DATA & td, const ADMIN * admin) = 0; + + virtual void AddNotifierAdd(NOTIFIER_BASE * notifier) = 0; + virtual void DelNotifierAdd(NOTIFIER_BASE * notifier) = 0; + + virtual void AddNotifierDel(NOTIFIER_BASE * notifier) = 0; + virtual void DelNotifierDel(NOTIFIER_BASE * notifier) = 0; + + virtual void GetTariffsData(std::list * tdl) const = 0; - virtual void GetTariffsData(std::list * tdl) = 0; + virtual size_t Count() const = 0; virtual const std::string & GetStrError() const = 0; };