예제 #1
0
        private void DelPid(int pid)
        {
            if (pid < 0 || pid > 0x1fff)
            {
                return;
            }

            lock (_Filters)
            {
                // prüfen ob noch im filter:
                foreach (DemuxFilter f in _Filters)
                {
                    if (f.Pid == pid)
                    {
                        return;
                    }
                }
            }

            if (_FilteredPids[pid] != 0)
            {
                DelPidRequested?.Invoke(this, (ushort)pid);
                _FilteredPids[pid] = 0;
            }
        }
예제 #2
0
        private void DelAllPids()
        {
            for (int i = 0; i < _FilteredPids.Length; i++)
            {
                if (_FilteredPids[i] != 0)
                {
                    DelPidRequested?.Invoke(this, (ushort)i);
                }

                _FilteredPids[i] = 0;
            }
        }