You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
890 B
C++
33 lines
890 B
C++
/******************************************************************************
|
|
* File - iRunMode.h
|
|
* Author - Joey Pollack
|
|
* Date - 2021/09/15 (y/m/d)
|
|
* Mod Date - 2021/09/15 (y/m/d)
|
|
* Description - The interface that run mode classes must implement
|
|
******************************************************************************/
|
|
|
|
#ifndef RUN_MODE_H_
|
|
#define RUN_MODE_H_
|
|
|
|
#include <utils/opRes.h>
|
|
#include <input/inputManager.h>
|
|
#include <input/keyboard.h>
|
|
|
|
namespace lunarium
|
|
{
|
|
class IGraphics;
|
|
class iRunMode
|
|
{
|
|
public:
|
|
virtual OpRes Initialize() = 0;
|
|
virtual void Shutdown() = 0;
|
|
virtual void OnTick(double delta) = 0;
|
|
virtual void OnRender(IGraphics* g) = 0;
|
|
|
|
public: // Optional Events
|
|
virtual void OnKeyPress(InputManager::KeyPress kp);
|
|
virtual void OnKeyRelease(Keyboard::Key k);
|
|
};
|
|
}
|
|
|
|
#endif // RUN_MODE_H_
|