aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Horizon/Sdk/Sf/Hipc/SpecialHeader.cs
blob: 150159fbae5c40acbdb69b9144eeadafd4190cd9 (plain) (blame)
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
using Ryujinx.Common.Utilities;

namespace Ryujinx.Horizon.Sdk.Sf.Hipc
{
    struct SpecialHeader
    {
        private uint _word;

        public bool SendPid
        {
            readonly get => _word.Extract(0);
            set => _word = _word.Insert(0, value);
        }

        public int CopyHandlesCount
        {
            readonly get => (int)_word.Extract(1, 4);
            set => _word = _word.Insert(1, 4, (uint)value);
        }

        public int MoveHandlesCount
        {
            readonly get => (int)_word.Extract(5, 4);
            set => _word = _word.Insert(5, 4, (uint)value);
        }
    }
}