Homepage Demos Overview Downloads Tutorials Reference
Credits

StartupBehavior_SetupModeSwitch.cc

Go to the documentation of this file.
00001 #include "StartupBehavior.h"
00002 
00003 #include "Behaviors/Controls/ControlBase.h"
00004 #include "Behaviors/Controls/BehaviorSwitchControl.h"
00005 
00006 #include "Behaviors/Demos/AlanBehavior.h"
00007 #include "Behaviors/Demos/ChaseBallBehavior.h"
00008 #include "Behaviors/Demos/SimpleChaseBallBehavior.h"
00009 #include "Behaviors/Demos/StareAtBallBehavior.h"
00010 #include "Behaviors/Demos/FollowHeadBehavior.h"
00011 #include "Behaviors/Demos/WalkToTargetMachine.h"
00012 #include "Behaviors/Demos/BanditMachine.h"
00013 #include "Behaviors/Demos/SoundTestBehavior.h"
00014 #include "Behaviors/Demos/ExploreMachine.h"
00015 #include "Behaviors/Demos/PaceTargetsMachine.h"
00016 
00017 #include "Shared/ProjectInterface.h"
00018 
00019 ControlBase*
00020 StartupBehavior::SetupModeSwitch() {
00021   addItem(new ControlBase("Mode Switch","Contains the \"major\" applications - mutually exclusive selection"));
00022   startSubMenu();
00023   {
00024     //this group allows the behaviors to turn each other off when you start a new one so
00025     //only one is running at a time - like radio buttons
00026     BehaviorSwitchControlBase::BehaviorGroup * bg = new BehaviorSwitchControlBase::BehaviorGroup();
00027 
00028     //put behaviors here:
00029     if(state->robotDesign&WorldState::ERS210Mask) //this one only really works on the 210
00030       addItem(new BehaviorSwitchControl<AlanBehavior>("AlanBehavior",bg,false));
00031     addItem(new BehaviorSwitchControl<FollowHeadBehavior>("FollowHeadBehavior",bg,false));
00032     addItem(new BehaviorSwitchControl<SoundTestBehavior>("SoundTestBehavior",bg,false));
00033     addItem(new BehaviorSwitchControl<ChaseBallBehavior>("ChaseBallBehavior",bg,false));
00034     addItem(new BehaviorSwitchControl<SimpleChaseBallBehavior>("SimpleChaseBallBehavior",bg,false));
00035     addItem(new BehaviorSwitchControl<StareAtBallBehavior>("StareAtBallBehavior",bg,false));
00036     addItem(new BehaviorSwitchControlBase(new WalkToTargetMachine(ProjectInterface::visPinkBallSID),bg));
00037     addItem(new BehaviorSwitchControl<BanditMachine>("BanditMachine",bg,false));
00038     addItem(new BehaviorSwitchControl<ExploreMachine>("ExploreMachine",bg,false));
00039     addItem(new BehaviorSwitchControl<PaceTargetsMachine>("PaceTargetsMachine",bg,false));
00040   }
00041   return endSubMenu();
00042 }
00043 

Tekkotsu v2.0
Generated Wed Jan 21 03:20:30 2004 by Doxygen 1.3.4