NerfUS game coordinator for the Nerf gun firing range

Dependencies:   HardwareInterface mbed-rtos mbed

Fork of NerfUS by NerfUS

include/GameCoordinator.hpp

Committer:
Ismael Balafrej
Date:
2017-03-27
Branch:
PlayableGame
Revision:
18:469c8b2a9af9
Parent:
16:5e6c695468b6

File content as of revision 18:469c8b2a9af9:

#ifndef GAME_COORDINATOR_HPP
#define GAME_COORDINATOR_HPP

#include <vector>

#include "RandomNumberGenerator.hpp"
#include "Target.hpp"
#include "PlayableGame.hpp"
#include "PrecisionMode.hpp"

const int numberOfGameModes = 1;

class GameCoordinator
{
    public:
        GameCoordinator(RandomNumberGenerator& random_number_generator);
        std::vector<TargetInfo> generate_random_target_course(int number_of_targets, int timeout_ms);

    private:
        RandomNumberGenerator& random_number_generator;
        PlayableGame *currentGame;
        PlayableGame *gameModes[numberOfGameModes];
        std::vector<TargetInfo> targets;
};

#endif