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
00025
00026 BehaviorSwitchControlBase::BehaviorGroup * bg = new BehaviorSwitchControlBase::BehaviorGroup();
00027
00028
00029 if(state->robotDesign&WorldState::ERS210Mask)
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