SND\AstrorEnales_cp 845d8ec716 - Further implemented the Dispose chain which now prevents the OpenGL gd from leaking (still some work required)
- Logging OpenGL version on Device Reset with GL3 RenderSystem
2012-08-30 12:05:40 +00:00

54 lines
1.2 KiB
C#

using System;
// This file is part of the ANX.Framework created by the
// "ANX.Framework developer group" and released under the Ms-PL license.
// For details see: http://anxframework.codeplex.com/license
namespace ANX.Framework
{
public abstract class GameHost
{
internal event EventHandler<EventArgs> Activated;
internal event EventHandler<EventArgs> Deactivated;
internal event EventHandler<EventArgs> Exiting;
internal event EventHandler<EventArgs> Idle;
internal event EventHandler<EventArgs> Resume;
internal event EventHandler<EventArgs> Suspend;
public abstract GameWindow Window { get; }
public GameHost(Game game)
{
}
public abstract void Run();
public abstract void Exit();
protected void OnActivated()
{
InvokeIfNotNull(this.Activated);
}
protected void OnDeactivated()
{
InvokeIfNotNull(this.Deactivated);
}
protected void OnIdle()
{
InvokeIfNotNull(this.Idle);
}
protected void OnExiting()
{
InvokeIfNotNull(this.Exiting);
}
private void InvokeIfNotNull(EventHandler<EventArgs> eventHandler)
{
if (eventHandler != null)
eventHandler(this, EventArgs.Empty);
}
}
}