// -----------------------------------------------------------------------
//
// Copyright 2013 MIT Licence. See licence.md for more information.
//
// -----------------------------------------------------------------------
namespace Perspex.Input
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reactive.Subjects;
using Perspex.Input.Raw;
using Splat;
public class InputManager : IInputManager
{
private Subject rawEventReceived = new Subject();
private Subject postProcess = new Subject();
public static IInputManager Instance => Locator.Current.GetService();
public IObservable RawEventReceived => this.rawEventReceived;
public IObservable PostProcess => this.postProcess;
public void Process(RawInputEventArgs e)
{
this.rawEventReceived.OnNext(e);
this.postProcess.OnNext(e);
}
}
}