private static void Main(string[] args) { var sensor = new EarthquakeSensor<Message>(); sensor.Attach(new StandardObserver<Message>("Berlin")); sensor.Attach(new StandardObserver<Message>("London")); sensor.Attach(new StandardObserver<Message>("Moscow")); sensor.Notify(); Console.WriteLine("event"); var evented = new Evented(); evented.SimpleEvent += (sender, e) => Console.WriteLine("First subscriber"); evented.SimpleEvent += (sender, e) => Console.WriteLine("Second subscriber"); evented.Fire(); Console.ReadKey(); }
public void EventedVal() { var ev = new Evented <int>(7); var l1 = new List <int>(); var l2 = new List <int>(); var d1 = ev.Subscribe(l1.Add); ev.OnNext(1); ListEq(l1, new[] { 7, 1 }); ListEq(l2, new int[] {}); var d2 = ev.Subscribe(l2.Add); ev.OnNext(2); ListEq(l1, new[] { 7, 1, 2 }); ListEq(l2, new[] { 1, 2 }); d1.Dispose(); ev.Value = 3; ListEq(l1, new[] { 7, 1, 2 }); ListEq(l2, new[] { 1, 2, 3 }); ev.OnCompleted(); ev.OnNext(4); ListEq(l1, new[] { 7, 1, 2 }); ListEq(l2, new[] { 1, 2, 3 }); }
public Transform(Vector3?location = null, Vector3?eulerAnglesD = null, Vector3?scale = null) { Location = new(location ?? Vector3.Zero); EulerAnglesD = new(eulerAnglesD ?? Vector3.Zero); Scale = new(scale ?? Vector3.One); }