Project

General

Profile

Statistics
| Branch: | Revision:

scoutos / scout / libscout / src / BehaviorList.h @ faa11f08

History | View | Annotate | Download (878 Bytes)

1 c239584b Priya
#ifndef _BEHAVIOR_LIST_H_
2
#define _BEHAVIOR_LIST_H_
3
4
#include "Behavior.h"
5 58371433 Priya
#include "behaviors/line_follow.h"
6 faa11f08 Priya
#include "behaviors/priya_draw_name.h"
7 c239584b Priya
#include "behaviors/draw_cw_circle.h"
8
#include "behaviors/draw_ccw_circle.h"
9 f34d6221 Priya
#include "behaviors/Odometry.h"
10 cccc25c9 Priya
#include "behaviors/navigationMap.h"
11 2f025967 Priya
#include "behaviors/Scheduler.h"
12 3f72678f Priya
#include "behaviors/WH_Robot.h"
13 5d0687a9 Priya
#include "behaviors/wl_test.h"
14 4b02e3c0 Matt Bryant
#include "behaviors/pause_scout.h"
15 754da79f Priya
#include "behaviors/maze_solve.h"
16 d140fd71 Yuyang
#include "Sensors.h"
17 c239584b Priya
18 faa11f08 Priya
template<typename T> Behavior* behavior(std::string scoutname, Sensors* sensors){ return (Behavior*)new T(scoutname, sensors); } 
19
20
typedef Behavior* (* behavior_func)(std::string, Sensors*);
21
22 c239584b Priya
class BehaviorList
23
{
24
  public:
25 faa11f08 Priya
  std::vector<behavior_func> behavior_list;
26 c239584b Priya
27
  //Constructor. Initializes behavior_list
28 faa11f08 Priya
  BehaviorList();
29 c239584b Priya
  //Destructor. Frees behavior_list;
30
  ~BehaviorList();
31
};
32
33
#endif