Scheduler
actionSpaceBuilder.h
Go to the documentation of this file.
1 
10 #ifndef ACTIONSPACEBUILDER_H
11 #define ACTIONSPACEBUILDER_H
12 
13 #include <memory>
14 #include <vector>
15 
16 #include <utils/counter.h>
17 
18 namespace Mdp
19 {
20 
21 class Action;
22 class ActionSpace;
23 class ActionDimension;
24 class DomainModel;
25 
29 {
30 public:
35  void setDomainModel(std::shared_ptr<DomainModel> model);
40  void addAction(Action *action);
45  std::shared_ptr<ActionSpace> getActionSpace();
49 private:
50  std::vector<Action*> actions;
51  std::shared_ptr<DomainModel> domainModel;
52  std::vector<ActionDimension*> dimensions;
53  Utils::Counter actionDimensionCounter;
54 };
55 
56 }
57 
58 
59 #endif
void setDomainModel(std::shared_ptr< DomainModel > model)
sets the domain model used by the actions to act on the environment
void addAction(Action *action)
add an action to the actino space
std::shared_ptr< ActionSpace > getActionSpace()
get the action space
Builds the action space.
void addActionDimension(ActionDimension *)
Definition: action.h:18