示例#1
0
        public Tuple <LogId, LogId>[] GetLogIdRanges()
        {
            if (IsOpen)
            {
                var request  = new LogConfigCommandRequest(LogConfigOperation.RetrieveIdRanges, 0, null, null);
                var response = (LogConfigCommandResponse)ExecuteQcdmCommandRequest(request);
                if (response.IsError)
                {
                    throw new QcdmEfsException(Strings.QcdmInvalidLogMask);
                }

                var logIds = response.LogIds;
                var count  = logIds.Length / 2;
                var pos    = 0;
                var result = new Tuple <LogId, LogId> [count];
                for (var i = 0; i < count; ++i)
                {
                    var pair = new Tuple <LogId, LogId>(logIds[pos], logIds[pos + 1] + 0x1000);
                    pos      += 2;
                    result[i] = pair;
                }

                return(result);
            }

            return(new Tuple <LogId, LogId> [0]);
        }
示例#2
0
 private LogId[] SetLogMask(int scopeId, Tuple <LogId, LogId> range, LogId[] enabledLogIds)
 {
     if (IsOpen)
     {
         var request  = new LogConfigCommandRequest(LogConfigOperation.SetMask, scopeId, range, enabledLogIds);
         var response = (LogConfigCommandResponse)ExecuteQcdmCommandRequest(request);
         if (response.IsError)
         {
             throw new QcdmEfsException(Strings.QcdmInvalidLogMask);
         }
         return(response.LogIds);
     }
     return(new LogId[0]);
 }