using System.Collections.Generic; using Chernobyl.Collections.Generic.Event; using Chernobyl.Input.Controls; using Chernobyl.Plugin; namespace Chernobyl.Input { /// /// The plug-in that sets up the input functionality for Chernobyl. /// public class InputPlugin : DecoratingEventList, IPlugin { /// /// Constructor. /// /// The instance that /// gives and takes services. public InputPlugin(IEventCollection services) { Services = services; services.Add(this); Add(_gamepads); } /// /// The services provided by this plug-in or null if no services are /// provided. /// public IEventCollection Services { get; private set; } /// /// The instances currently plugged into the /// device and are available for use. The /// and /// can be used to know /// when a device has been connected or disconnected from the machine. /// readonly IEventCollection _gamepads = new DecoratingEventCollection(new List()); } }