libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Sem_SemanticsManager.hpp
1 #ifndef SEM_SEMANTICSMANAGER_H
2 #define SEM_SEMANTICSMANAGER_H
3 
4 #include "Logging/Logger.h"
5 #include "Sem_PlanParts.hpp"
6 #include "Sem_Actions.hpp"
7 #include "Sem_ActionsManager.hpp"
8 
9 namespace Sem {
10 
11 
13 {
14  MOVE3D_STATIC_LOGGER;
15 public:
18 
19  static SemanticsManager* mainSemanticsManager();
20 
21  PlanParts *planParts() const;
22  void setPlanParts(PlanParts *planParts);
23 
24  Actions *actions() const;
25  void setActions(Actions *actions);
26 
27  std::string globalJsonPath() const;
28  void setGlobalJsonPath(const std::string &globalJsonPath);
29 
30  bool proactive() const;
31  void setProactive(bool proactive);
32 
33  ActionsManager *actionsManager() const;
34  void setActionsManager(ActionsManager *actionsManager);
35 
36 protected:
37  void createModules();
38 
39 private:
40  static SemanticsManager *__mainSemanticsManager;
41 
42  std::string _globalJsonPath;
43  bool _proactive;
44 
45  PlanParts *_planParts;
46  Actions* _actions;
47  ActionsManager *_actionsManager;
48 };
49 
50 } // namespace Sem
51 
52 #endif // SEM_SEMANTICSMANAGER_H
Definition: Sem_SemanticsManager.hpp:12
Definition: Sem_ActionsManager.hpp:32
Definition: Sem_PlanParts.hpp:90
This file implements macros to help with the logging, in a way similar to ROS, using log4cxx...
Definition: Sem_Actions.hpp:80