#ifndef REMOVECONTROLLERSMODIFICATOR_H #define REMOVECONTROLLERSMODIFICATOR_H #include #include #include #include "modificator.h" class Location; class Controller; class RemoveControllersModificator : public Modificator { public: explicit RemoveControllersModificator(); virtual ~RemoveControllersModificator() override; virtual void run() const override; void setDependentObjects(const std::shared_ptr& location, const std::list>& controllers, const std::string& new_message); private: std::shared_ptr _location; std::list> _controllers_to_remove; std::string _new_location_message; }; #endif // REMOVECONTROLLERSMODIFICATOR_H