Xiaofei Qiu / Command
Committer:
Xiaofei
Date:
Sun Nov 22 01:04:17 2015 +0000
Revision:
1:13c4bf8989d5
Parent:
0:4bc34a5fcc29
Child:
3:97a5a3744481
Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Xiaofei 0:4bc34a5fcc29 1 #pragma once
Xiaofei 0:4bc34a5fcc29 2 #include <cstdint>
Xiaofei 0:4bc34a5fcc29 3
Xiaofei 0:4bc34a5fcc29 4 class Command
Xiaofei 0:4bc34a5fcc29 5 {
Xiaofei 0:4bc34a5fcc29 6 public:
Xiaofei 1:13c4bf8989d5 7 Command();
Xiaofei 0:4bc34a5fcc29 8 Command(const Command&);
Xiaofei 0:4bc34a5fcc29 9 virtual ~Command(){}
Xiaofei 0:4bc34a5fcc29 10 virtual void execute() = 0;
Xiaofei 1:13c4bf8989d5 11 void setSpeed(const std::int8_t& l_sp=0.5,const std::int8_t& r_sp=0.5);
Xiaofei 0:4bc34a5fcc29 12
Xiaofei 0:4bc34a5fcc29 13 protected:
Xiaofei 1:13c4bf8989d5 14 float _LEFT_SPEED;
Xiaofei 1:13c4bf8989d5 15 float _RIGHT_SPEED;
Xiaofei 0:4bc34a5fcc29 16 };
Xiaofei 0:4bc34a5fcc29 17
Xiaofei 0:4bc34a5fcc29 18 class LedCommand : public Command
Xiaofei 0:4bc34a5fcc29 19 {
Xiaofei 0:4bc34a5fcc29 20 public:
Xiaofei 0:4bc34a5fcc29 21 LedCommand(){}
Xiaofei 0:4bc34a5fcc29 22 virtual void execute();
Xiaofei 0:4bc34a5fcc29 23 };
Xiaofei 0:4bc34a5fcc29 24
Xiaofei 0:4bc34a5fcc29 25 class TurnLeftCommand : public Command
Xiaofei 0:4bc34a5fcc29 26 {
Xiaofei 0:4bc34a5fcc29 27 public:
Xiaofei 0:4bc34a5fcc29 28 TurnLeftCommand(){}
Xiaofei 0:4bc34a5fcc29 29 virtual void execute();
Xiaofei 0:4bc34a5fcc29 30 };
Xiaofei 0:4bc34a5fcc29 31
Xiaofei 0:4bc34a5fcc29 32 class TurnRightCommand : public Command
Xiaofei 0:4bc34a5fcc29 33 {
Xiaofei 0:4bc34a5fcc29 34 public:
Xiaofei 0:4bc34a5fcc29 35 TurnRightCommand(){}
Xiaofei 0:4bc34a5fcc29 36 virtual void execute();
Xiaofei 0:4bc34a5fcc29 37 };
Xiaofei 0:4bc34a5fcc29 38
Xiaofei 0:4bc34a5fcc29 39 class MoveForwardCommand : public Command
Xiaofei 0:4bc34a5fcc29 40 {
Xiaofei 0:4bc34a5fcc29 41 public:
Xiaofei 0:4bc34a5fcc29 42 MoveForwardCommand(){}
Xiaofei 0:4bc34a5fcc29 43 virtual void execute();
Xiaofei 0:4bc34a5fcc29 44 };
Xiaofei 0:4bc34a5fcc29 45
Xiaofei 0:4bc34a5fcc29 46 class MoveBackwardCommand : public Command
Xiaofei 0:4bc34a5fcc29 47 {
Xiaofei 0:4bc34a5fcc29 48 public:
Xiaofei 0:4bc34a5fcc29 49 MoveBackwardCommand(){}
Xiaofei 0:4bc34a5fcc29 50 virtual void execute();
Xiaofei 0:4bc34a5fcc29 51 };
Xiaofei 0:4bc34a5fcc29 52
Xiaofei 0:4bc34a5fcc29 53 class StopCommand : public Command
Xiaofei 0:4bc34a5fcc29 54 {
Xiaofei 0:4bc34a5fcc29 55 public:
Xiaofei 0:4bc34a5fcc29 56 StopCommand(){}
Xiaofei 0:4bc34a5fcc29 57 virtual void execute();
Xiaofei 1:13c4bf8989d5 58 };