aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Horizon/Sdk/OsTypes/MultiWaitHolderBase.cs
blob: 4bccba6c23175e9c3fe5a5c5bd195f7af1e6ed6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
using Ryujinx.Horizon.Sdk.OsTypes.Impl;

namespace Ryujinx.Horizon.Sdk.OsTypes
{
    class MultiWaitHolderBase
    {
        protected MultiWaitImpl MultiWait;

        public bool IsLinked => MultiWait != null;

        public virtual TriBool Signaled => TriBool.False;

        public virtual int Handle => 0;

        public void SetMultiWait(MultiWaitImpl multiWait)
        {
            MultiWait = multiWait;
        }

        public MultiWaitImpl GetMultiWait()
        {
            return MultiWait;
        }

        public virtual TriBool LinkToObjectList()
        {
            return TriBool.Undefined;
        }

        public virtual void UnlinkFromObjectList()
        {
        }

        public virtual long GetAbsoluteTimeToWakeup()
        {
            return long.MaxValue;
        }
    }
}