/*
MainControl.h
Written by Matthew Fisher

MainControl includes everything that changes often between applications, such as what meshes to load,
and also determines what is rendered each frame.
*/

class MainControl {
public:
    ~MainControl() {FreeMemory();}
    void FreeMemory();

    void ReInit(GraphicsDevice &GD, WindowManager &WM); //called after we lose focus, telling us to restore
                                                        //our textures and other data that may have been list

    void Init(GraphicsDevice &GD, WindowManager &WM);   //called only one at the beginning of our application
    void Render(GraphicsDevice &GD, WindowManager &WM); //called each frame

private:
    Mesh SphereMesh;        //a simple sphere
    MatrixController MC;    //the world/view/perspective matrices
    Camera C;               //the camera we use
    float Time;             //the current time, in seconds
};

Top