Project

General

Profile

Statistics
| Branch: | Revision:

root / scout / libscout / src / BehaviorList.h @ 6ee555a3

History | View | Annotate | Download (839 Bytes)

1
#ifndef _BEHAVIOR_LIST_H_
2
#define _BEHAVIOR_LIST_H_
3

    
4
#include "Behavior.h"
5
#include "behaviors/line_follow.h"
6
#include "behaviors/draw_cw_circle.h"
7
#include "behaviors/draw_ccw_circle.h"
8
#include "behaviors/Odometry.h"
9
#include "behaviors/navigationMap.h"
10
#include "behaviors/Scheduler.h"
11
#include "behaviors/WH_Robot.h"
12
#include "behaviors/wl_test.h"
13
#include "behaviors/pause_scout.h"
14
#include "behaviors/maze_solve.h"
15
#include "Sensors.h"
16

    
17
template<typename T> Behavior* behavior(std::string scoutname, Sensors* sensors){ return (Behavior*)new T(scoutname, sensors); } 
18

    
19
typedef Behavior* (* behavior_func)(std::string, Sensors*);
20

    
21
class BehaviorList
22
{
23
  public:
24
  std::vector<behavior_func> behavior_list;
25

    
26
  //Constructor. Initializes behavior_list
27
  BehaviorList();
28
  //Destructor. Frees behavior_list;
29
  ~BehaviorList();
30
};
31

    
32
#endif