X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/fe33b745d83085459e8a12e7a5a29d95c74c69d1..8bfc0bdce2bf4f53ac2c072e7a44e9a7d3b3cca8:/projects/stargazer/plugin_mgr.h diff --git a/projects/stargazer/plugin_mgr.h b/projects/stargazer/plugin_mgr.h index 79b6cae9..1d402eb9 100644 --- a/projects/stargazer/plugin_mgr.h +++ b/projects/stargazer/plugin_mgr.h @@ -1,6 +1,3 @@ -#ifndef __STG_PLUGIN_MGR_H__ -#define __STG_PLUGIN_MGR_H__ - /* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,40 +18,41 @@ * Author : Maxim Mamontov */ +#pragma once + #include "stg/module_settings.h" #include -class SETTINGS_IMPL; -class PLUGIN_RUNNER; -class STORE; -class ADMINS_IMPL; -class TARIFFS_IMPL; -class SERVICES_IMPL; -class CORPORATIONS_IMPL; -class USERS_IMPL; -class TRAFFCOUNTER_IMPL; -class STG_LOGGER; - namespace STG { +class SettingsImpl; +class PluginRunner; +struct Store; +class AdminsImpl; +class TariffsImpl; +class ServicesImpl; +class CorporationsImpl; +class UsersImpl; +class TraffCounterImpl; +class Logger; + class PluginManager { public: - PluginManager(const SETTINGS_IMPL& settings, - STORE& store, ADMINS_IMPL& admins, TARIFFS_IMPL& tariffs, - SERVICES_IMPL& services, CORPORATIONS_IMPL& corporations, - USERS_IMPL& users, TRAFFCOUNTER_IMPL& traffcounter); + PluginManager(const SettingsImpl& settings, + Store& store, AdminsImpl& admins, TariffsImpl& tariffs, + ServicesImpl& services, CorporationsImpl& corporations, + UsersImpl& users, TraffCounterImpl& traffcounter); ~PluginManager(); - void reload(); + void reload(const SettingsImpl& settings); + void stop(); private: - std::vector m_modules; - STG_LOGGER & m_log; + std::vector m_modules; + Logger & m_log; }; -} // namespace STG - -#endif +}