using System.Collections.Generic; namespace Ryujinx.HLE.HOS.Kernel { class KSynchronizationObject { public LinkedList WaitingThreads; protected Horizon System; public KSynchronizationObject(Horizon System) { this.System = System; WaitingThreads = new LinkedList(); } public LinkedListNode AddWaitingThread(KThread Thread) { return WaitingThreads.AddLast(Thread); } public void RemoveWaitingThread(LinkedListNode Node) { WaitingThreads.Remove(Node); } public virtual void Signal() { System.Synchronization.SignalObject(this); } public virtual bool IsSignaled() { return false; } } }