AirsoftTimer software based on mbed

Dependencies:   mbed TextLCD keypad

objectives/Objective.h

Committer:
sillevl
Date:
2015-05-23
Revision:
15:78116b7254d5
Parent:
14:e0bfee0a5e66
Child:
16:e8e96bf22df1

File content as of revision 15:78116b7254d5:

#ifndef OBJECTIVE_H
#define OBJECTIVE_H

#include "../games/Game.h"

class Objective{
    
    enum Status { WAITING, ACTIVE, COMPLETED };
    
    public:
    Objective(Game* game);
    Status getStatus();
    
    void start();
    virtual void run() = 0;
    void complete();
    
    protected:
    Game* game;
    
    LCD* lcd;
    Leds* leds;
    Key* key;
    Button* button;
    Keyboard* keyboard;
    Buzzer* buzzer;
    
    uint32_t keyEvent(uint32_t key);
    
    private:
    Status status;
    
};


#endif