
Untitled
By: a guest on
Apr 25th, 2012 | syntax:
None | size: 1.12 KB | hits: 12 | expires: Never
Anonymous Marker Interface in C#?
foreach (var component in Components)
{
if (component.Enabled)
component.Update(gameTime);
if (component.Litsening)
component.HandleInput(gameTime, InputManager);
}
foreach ((IInputHandler, IUpdateable) component in Components)
{
if (component.Enabled)
component.Update(gameTime);
if (component.Litsening)
component.HandleInput(gameTime, InputManager);
}
foreach (var component in Components.OfType<IUpdateable>())
if (component.Enabled)
component.Update(gameTime);
foreach (var component in Components.OfType<IInputHandler>())
if (component.Litsening)
component.HandleInput(gameTime, InputManager);
public interface IGameComponent : IUpdateable, IInputHandler
{ }
var componentsWeDesire = Components.Where(c => typeof(IInputHandler).IsAssignableFrom(c.GetType())
|| typeof(IUpdateable).IsAssignableFrom(c.GetType());
foreach(var component in componentsWeDesire)
{
// ...
}