James Cummins / Mbed 2 deprecated el17jnc

Dependencies:   mbed

Pause/Pause.h

Committer:
JamesCummins
Date:
2019-04-18
Revision:
22:4e305ff8a050
Parent:
21:9d1447765ee1
Child:
29:42651f87522b

File content as of revision 22:4e305ff8a050:

#ifndef PAUSE_H
#define PAUSE_H

#include "mbed.h"
#include "Gamepad.h"
#include "N5110.h"

enum Mode{
    CLASSIC_MODE,
    BRICKBREAKER_MODE
    };
    
enum PauseOption{
    RESUME,
    RESTART,
    QUIT,
    HELP
    };

struct PauseSelection{
    int output;
    PauseOption next_state[3];
    };

class Pause {

public:
    //constructor
    Pause();
    //destructor
    ~Pause();
    //initialiser
    void init();
    //accessor
    int pause_menu(Gamepad &gamepad, N5110 &lcd, int fps, int frame, Mode mode);

private:

    void display_pause_options(N5110 &lcd);
    PauseOption pause_selection(Gamepad &gamepad, N5110 &lcd);
    void brickbreaker_help(Gamepad &gamepad, N5110 &lcd);
    void classic_help(Gamepad &gamepad, N5110 &lcd);
    PauseOption _state;
    int _next_state;
};
#endif