GameKit  0.0.1a
C++ gamedev tools
AbstractController.hpp
Go to the documentation of this file.
1 /*
2  * =====================================================================================
3  *
4  * Filename: AbstractController.hpp
5  *
6  * Description:
7  *
8  * Created: 26/01/2018 00:40:03
9  *
10  * Author: Quentin Bazin, <quent42340@gmail.com>
11  *
12  * =====================================================================================
13  */
14 #ifndef GK_ABSTRACTCONTROLLER_HPP_
15 #define GK_ABSTRACTCONTROLLER_HPP_
16 
18 
19 namespace gk {
20 
22  public:
23  virtual ~AbstractController() = default;
24 
25  virtual void reset(SceneObject &) {}
26  virtual void update(SceneObject &object) = 0;
27 
28  virtual void reset(SceneObjectList &objectList) { for(auto &object : objectList) reset(object); }
29  virtual void update(SceneObjectList &objectList) { for(auto &object : objectList) update(object); }
30 
31  virtual bool isGlobal() const { return false; }
32 };
33 
34 } // namespace gk
35 
36 #endif // GK_ABSTRACTCONTROLLER_HPP_
virtual ~AbstractController()=default
virtual void reset(SceneObject &)
virtual void reset(SceneObjectList &objectList)
virtual bool isGlobal() const
virtual void update(SceneObjectList &objectList)
virtual void update(SceneObject &object)=0