/**************************************************************************** Header file for Gamestate Module ****************************************************************************/ #ifndef SMGameState_H #define SMGameState_H // Event Definitions #include "SMEvents.h" // Children includes #include "SMGameplay.h" #include "SMDrivetrain.h" #include "SMSensors.h" // typedefs for the states typedef enum { Game_Paused, Game_On } GameState_t ; // Public Function Prototypes //State machine functions Event_t RunGameSM( Event_t CurrentEvent ); void StartGameSM ( Event_t CurrentEvent ); GameState_t QueryGameSM ( void ); //other functions /**************************************************************************** Function QueryGameStartFlag Returns 1 if StartFlag set, 0 otherwise Description indicates whether we need to transition to Game_On state. ****************************************************************************/ unsigned char QueryGameStartFlag(void); /**************************************************************************** Function QueryGamePauseFlag Returns 1 if PauseFlag set, 0 otherwise Description indicates whether we need to transition to Game_paused state. ****************************************************************************/ unsigned char QueryGamePauseFlag(void); /**************************************************************************** Function QueryGameTime Returns unsigned int - time passed while game was in state Game_On, in 10s of ms. Description Returns value of game timer, in 10s of ms. ****************************************************************************/ unsigned int QueryGameTime(void); #endif /*SMGameState_H */