slumber-quest/modificators/removecontrollersmodificator.h

30 lines
723 B
C++

#ifndef REMOVECONTROLLERSMODIFICATOR_H
#define REMOVECONTROLLERSMODIFICATOR_H
#include <string>
#include <memory>
#include <list>
#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>& location,
const std::list<std::shared_ptr<Controller>>& controllers);
private:
std::shared_ptr<Location> _location;
std::list<std::shared_ptr<Controller>> _controllers_to_remove;
};
#endif // REMOVECONTROLLERSMODIFICATOR_H