Ejemplo n.º 1
0
        private uint Register(MultiMediaOperationType type, int fgmId, bool isAutoClearEvent)
        {
            lock (_sessionListLock)
            {
                // Nintendo ignore the fgm id as the other interfaces were deprecated.
                MultiMediaSession session = new MultiMediaSession(_uniqueId++, type, isAutoClearEvent);

                _sessionList.Add(session);

                return(session.Id);
            }
        }
Ejemplo n.º 2
0
        // GetOld(u32) -> u32
        public ResultCode GetOld(ServiceCtx context)
        {
            MultiMediaOperationType operationType = (MultiMediaOperationType)context.RequestData.ReadUInt32();

            Logger.Stub?.PrintStub(LogClass.ServiceMm, new { operationType });

            lock (_sessionListLock)
            {
                MultiMediaSession session = GetSessionByType(operationType);

                uint currentValue = session == null ? 0 : session.CurrentValue;

                context.ResponseData.Write(currentValue);
            }

            return(ResultCode.Success);
        }
Ejemplo n.º 3
0
        // Get(u32) -> u32
        public ResultCode Get(ServiceCtx context)
        {
            uint id = context.RequestData.ReadUInt32();

            Logger.Stub?.PrintStub(LogClass.ServiceMm, new { id });

            lock (_sessionListLock)
            {
                MultiMediaSession session = GetSessionById(id);

                uint currentValue = session == null ? 0 : session.CurrentValue;

                context.ResponseData.Write(currentValue);
            }

            return(ResultCode.Success);
        }