43 lines
1.0 KiB
C#
43 lines
1.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using DVBServices;
|
|
using skyscraper5.Mpeg2;
|
|
|
|
namespace skyscraper8.EPGCollectorPort.SkyscraperSide.OpenTV
|
|
{
|
|
internal class OpenTvSummaryParser : IPsiProcessor
|
|
{
|
|
private readonly OpenTvHandler _openTvScraper;
|
|
|
|
public OpenTvSummaryParser(OpenTvHandler openTvScraper)
|
|
{
|
|
_openTvScraper = openTvScraper;
|
|
}
|
|
|
|
public void GatherPsi(PsiSection section, int sourcePid)
|
|
{
|
|
if (section.TableId >= 0xa8 && section.TableId <= 0xab)
|
|
{
|
|
OpenTVSummarySection summarySection = OpenTVSummarySection.ProcessOpenTVSummaryTable(section.GetData());
|
|
if (summarySection != null)
|
|
{
|
|
_openTvScraper.OnSummaries(sourcePid, section.TableId, summarySection);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (section.TableId >= 0xa0 && section.TableId <= 0xa7)
|
|
{
|
|
//Titles
|
|
return;
|
|
}
|
|
|
|
_openTvScraper.OnNonOpenTvTraffic(sourcePid, OpenTvExpectedDataType.Summaries, section.TableId);
|
|
}
|
|
}
|
|
}
|
|
}
|