AirsoftTimer software based on mbed

Dependencies:   mbed TextLCD keypad

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Objective.h Source File

Objective.h

00001 #ifndef OBJECTIVE_H
00002 #define OBJECTIVE_H
00003 
00004 // Forward Declarations
00005 class Game;
00006 class LCD;
00007 class Leds;
00008 class Key;
00009 class Button;
00010 class Keyboard;
00011 class Buzzer;
00012 
00013 class Objective /*: public ButtonListener*/{
00014     
00015     
00016     public:
00017     Objective(Game* game);
00018     
00019     enum Status { WAITING, ACTIVE, COMPLETED };
00020     Status getStatus();
00021     
00022     void start();
00023     virtual void run() = 0;
00024     void complete();
00025     
00026     protected:    
00027     Game* game;
00028     
00029     LCD* lcd;
00030     Leds* leds;
00031     Key* key;
00032     Button* button;
00033     Keyboard* keyboard;
00034     Buzzer* buzzer;
00035        
00036     private:
00037     volatile Status status;
00038     
00039 };
00040 
00041 
00042 #endif