My Project
MouseSystem.hpp
1 /*
2 ** EPITECH PROJECT, 2022
3 ** B-CPP-500-PAR-5-1-rtype-martin.vanaud
4 ** File description:
5 ** MouseSystem
6 */
7 
8 #ifndef MOUSESYSTEM_HPP_
9  #define MOUSESYSTEM_HPP_
10 
11  #include <map>
12  #include <functional>
13 
14  /* Ecs */
15  #include "Registry.hpp"
16 
17  /* Graphical Lib */
18  #include "GraphicalLib.hpp"
19 
20  /* Component */
21  #include "Component/CPosition.hpp"
22  #include "Component/CRect.hpp"
23  #include "Component/CSceneId.hpp"
24  #include "Component/CType.hpp"
25  #include "Component/CCallback.hpp"
26  #include "Component/CRef.hpp"
27  #include "Component/CRefId.hpp"
28  #include "Component/CText.hpp"
29  #include "Component/CSound.hpp"
30  #include "Component/CSoundId.hpp"
31 
35 namespace System {
39  class MouseSystem {
40  public:
44  MouseSystem();
45  ~MouseSystem() = default;
46 
61  void operator()(Registry &registry,
71 
72  protected:
73  private:
74  std::unique_ptr<rtype::GraphicalLib> _graphicLib;
75  };
76 }
77 
78 #endif /* !MOUSESYSTEM_HPP_ */
Sparse_array
Class that handle Element of type Component like a vector which can be holed.
Definition: SparseArray.hpp:22
System::MouseSystem::operator()
void operator()(Registry &registry, Sparse_array< component::cposition_t > &positions, Sparse_array< component::crect_t > &rects, Sparse_array< component::csceneid_t > &scenesId, Sparse_array< component::ctype_t > &types, Sparse_array< component::ccallback_t > &callbacks, Sparse_array< component::cref_t > &refs, Sparse_array< component::crefid_t > &refIds, Sparse_array< component::csound_t > &sounds, Sparse_array< component::csoundid_t > &soundIds)
Function that will be automaticaly called while the client is working (on loop)
Definition: MouseSystem.cpp:23
System
Namespace for systems.
Definition: DirectionSystem.hpp:24
System::MouseSystem::MouseSystem
MouseSystem()
Construct a new Mouse System object.
Definition: MouseSystem.cpp:18
System::MouseSystem
MouseSystem class that handles the mouse.
Definition: MouseSystem.hpp:39
Registry
Class that handle ECS.
Definition: Registry.hpp:22