using skyscraper5.Mpeg2.Descriptors;
using skyscraper5.Mpeg2.Psi;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace skyscraper8.DvbSis
{
    public class SisCatContainer : ICatEventHandler
    {
        public void NotifyOfCaSystem(CaDescriptor caDescriptor, bool fromPmt = false)
        {
            if (caDescriptors == null)
                caDescriptors = new List<CaDescriptor>();

            caDescriptors.Add(caDescriptor);
        }

        private List<CaDescriptor> caDescriptors;

        public IReadOnlyList<CaDescriptor> CaDescriptors
        {
            get
            {
                if (caDescriptors == null)
                    return new List<CaDescriptor>().AsReadOnly();

                return caDescriptors.AsReadOnly();
            }
        }
    }
}
