X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/32248221316271f3a09a771ce35b77236f4bbeed..880072eb0a7b70629be38499c61092c691b52902:/include/stg/tariffs.h diff --git a/include/stg/tariffs.h b/include/stg/tariffs.h index b492833b..6a851c5a 100644 --- a/include/stg/tariffs.h +++ b/include/stg/tariffs.h @@ -24,22 +24,33 @@ #include #include +#include "notifer.h" + class ADMIN; class TARIFF; 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 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) = 0; + virtual void GetTariffsData(std::list * tdl) const = 0; - virtual size_t Count() const = 0; + virtual size_t Count() const = 0; virtual const std::string & GetStrError() const = 0; };