MythTV  master
Public Types | Public Member Functions | Static Public Member Functions | Static Protected Attributes | Static Private Member Functions | List of all members
EITFixUp Class Reference

EIT Fix Up Functions. More...

#include <libmythtv/eitfixup.h>

Collaboration diagram for EITFixUp:
[legend]

Public Types

enum  FixUpType : FixupValue {
  kFixNone = 0, kFixGenericDVB = 1 << 0, kFixBell = 1 << 1, kFixUK = 1 << 2,
  kFixPBS = 1 << 3, kFixComHem = 1 << 4, kFixSubtitle = 1 << 5, kFixAUStar = 1 << 6,
  kFixMCA = 1 << 7, kFixRTL = 1 << 8, kFixFI = 1 << 9, kFixPremiere = 1 << 10,
  kFixHDTV = 1 << 11, kFixNL = 1 << 12, kFixCategory = 1 << 13, kFixNO = 1 << 14,
  kFixNRK_DVBT = 1 << 15, kFixDish = 1 << 16, kFixDK = 1 << 17, kFixAUFreeview = 1 << 18,
  kFixAUDescription = 1 << 19, kFixAUNine = 1 << 20, kFixAUSeven = 1 << 21, kFixP7S1 = 1 << 26,
  kFixHTML = 1 << 27, kFixUnitymedia = 1ULL << 32, kFixATV = 1ULL << 33, kFixDisneyChannel = 1ULL << 34,
  kEFixForceISO8859_1 = 1 << 22, kEFixForceISO8859_2 = 1 << 23, kEFixForceISO8859_9 = 1 << 24, kEFixForceISO8859_15 = 1 << 25,
  kEFixForceISO8859_7 = 1 << 28, kFixGreekSubtitle = 1 << 29, kFixGreekEIT = 1 << 30, kFixGreekCategories = 1U << 31
}
 

Public Member Functions

 EITFixUp ()=default
 

Static Public Member Functions

static void Fix (DBEventEIT &event)
 
static int parseRoman (QString roman)
 
static void TimeFix (QDateTime &dt)
 Corrects starttime to the multiple of a minute. More...
 

Static Protected Attributes

static const uint kSubtitleMaxLen = 128
 
static const uint kMaxToTitle = 14
 
static const uint kDotToTitle = 9
 
static const uint kMaxQuestionExclamation = 2
 
static const uint kMaxDotToColon = 5
 
static const int kMinMovieDuration = 75*60
 

Static Private Member Functions

static void FixBellExpressVu (DBEventEIT &event)
 Use this for the Canadian BellExpressVu to standardize DVB-S guide. More...
 
static void SetUKSubtitle (DBEventEIT &event)
 Use this in the United Kingdom to standardize DVB-T guide. More...
 
static void FixUK (DBEventEIT &event)
 Use this in the United Kingdom to standardize DVB-T guide. More...
 
static void FixPBS (DBEventEIT &event)
 Use this to standardize PBS ATSC guide in the USA. More...
 
static void FixComHem (DBEventEIT &event, bool process_subtitle)
 Use this to standardize ComHem DVB-C service in Sweden. More...
 
static void FixAUStar (DBEventEIT &event)
 Use this to standardize DVB-S guide in Australia. More...
 
static void FixAUFreeview (DBEventEIT &event)
 Use this to standardize DVB-T guide in Australia. More...
 
static void FixAUNine (DBEventEIT &event)
 Use this to standardize DVB-T guide in Australia. More...
 
static void FixAUSeven (DBEventEIT &event)
 Use this to standardize DVB-T guide in Australia. More...
 
static void FixAUDescription (DBEventEIT &event)
 Use this to standardize DVB-T guide in Australia. More...
 
static void FixMCA (DBEventEIT &event)
 Use this to standardise the MultiChoice Africa DVB-S guide. More...
 
static void FixRTL (DBEventEIT &event)
 Use this to standardise the RTL group guide in Germany. More...
 
static void FixPRO7 (DBEventEIT &event)
 Use this to standardise the PRO7/Sat1 group guide in Germany. More...
 
static void FixDisneyChannel (DBEventEIT &event)
 Use this to standardise the Disney Channel guide in Germany. More...
 
static void FixATV (DBEventEIT &event)
 Use this to standardise the ATV/ATV2 guide in Germany. More...
 
static void FixFI (DBEventEIT &event)
 Use this to clean DVB-T guide in Finland. More...
 
static void FixPremiere (DBEventEIT &event)
 Use this to standardize DVB-C guide in Germany for the providers Kabel Deutschland and Premiere. More...
 
static void FixNL (DBEventEIT &event)
 Use this to standardize @Home DVB-C guide in the Netherlands. More...
 
static void FixCategory (DBEventEIT &event)
 
static void FixNO (DBEventEIT &event)
 Use this to clean DVB-S guide in Norway. More...
 
static void FixNRK_DVBT (DBEventEIT &event)
 Use this to clean DVB-T guide in Norway (NRK) More...
 
static void FixDK (DBEventEIT &event)
 Use this to clean YouSee's DVB-C guide in Denmark. More...
 
static void FixStripHTML (DBEventEIT &event)
 Use this to clean HTML Tags from EIT Data. More...
 
static void FixGreekSubtitle (DBEventEIT &event)
 
static void FixGreekEIT (DBEventEIT &event)
 
static void FixGreekCategories (DBEventEIT &event)
 
static void FixUnitymedia (DBEventEIT &event)
 
static QString AddDVBEITAuthority (uint chanid, const QString &id)
 This adds a DVB EIT default authority to series id or program id if one exists in the DB for that channel, otherwise it returns a blank id instead of the id passed in. More...
 

Detailed Description

EIT Fix Up Functions.

Definition at line 11 of file eitfixup.h.

Member Enumeration Documentation

◆ FixUpType

Enumerator
kFixNone 
kFixGenericDVB 
kFixBell 
kFixUK 
kFixPBS 
kFixComHem 
kFixSubtitle 
kFixAUStar 
kFixMCA 
kFixRTL 
kFixFI 
kFixPremiere 
kFixHDTV 
kFixNL 
kFixCategory 
kFixNO 
kFixNRK_DVBT 
kFixDish 
kFixDK 
kFixAUFreeview 
kFixAUDescription 
kFixAUNine 
kFixAUSeven 
kFixP7S1 
kFixHTML 
kFixUnitymedia 
kFixATV 
kFixDisneyChannel 
kEFixForceISO8859_1 
kEFixForceISO8859_2 
kEFixForceISO8859_9 
kEFixForceISO8859_15 
kEFixForceISO8859_7 
kFixGreekSubtitle 
kFixGreekEIT 
kFixGreekCategories 

Definition at line 28 of file eitfixup.h.

Constructor & Destructor Documentation

◆ EITFixUp()

EITFixUp::EITFixUp ( )
default

Member Function Documentation

◆ Fix()

void EITFixUp::Fix ( DBEventEIT event)
static

Definition at line 46 of file eitfixup.cpp.

Referenced by EITHelper::ProcessEvents().

◆ parseRoman()

int EITFixUp::parseRoman ( QString  roman)
static

Definition at line 30 of file eitfixup.cpp.

Referenced by FixGreekEIT().

◆ TimeFix()

static void EITFixUp::TimeFix ( QDateTime &  dt)
inlinestatic

Corrects starttime to the multiple of a minute.

Used for providers who fail to handle leap seconds timely. Changes the starttime not more than 3 seconds. Sshould only be used if the duration is the multiple of a minute.

Definition at line 83 of file eitfixup.h.

Referenced by EITHelper::AddEIT(), and EITHelper::CompleteEvent().

◆ FixBellExpressVu()

void EITFixUp::FixBellExpressVu ( DBEventEIT event)
staticprivate

Use this for the Canadian BellExpressVu to standardize DVB-S guide.

Todo:
deal with events that don't have eventype at the begining?

Definition at line 229 of file eitfixup.cpp.

Referenced by Fix().

◆ SetUKSubtitle()

void EITFixUp::SetUKSubtitle ( DBEventEIT event)
staticprivate

Use this in the United Kingdom to standardize DVB-T guide.

Definition at line 512 of file eitfixup.cpp.

Referenced by FixUK().

◆ FixUK()

void EITFixUp::FixUK ( DBEventEIT event)
staticprivate

Use this in the United Kingdom to standardize DVB-T guide.

Definition at line 647 of file eitfixup.cpp.

Referenced by Fix().

◆ FixPBS()

void EITFixUp::FixPBS ( DBEventEIT event)
staticprivate

Use this to standardize PBS ATSC guide in the USA.

Definition at line 1029 of file eitfixup.cpp.

Referenced by Fix().

◆ FixComHem()

void EITFixUp::FixComHem ( DBEventEIT event,
bool  process_subtitle 
)
staticprivate

Use this to standardize ComHem DVB-C service in Sweden.

Definition at line 1044 of file eitfixup.cpp.

Referenced by Fix().

◆ FixAUStar()

void EITFixUp::FixAUStar ( DBEventEIT event)
staticprivate

Use this to standardize DVB-S guide in Australia.

Definition at line 1283 of file eitfixup.cpp.

Referenced by Fix().

◆ FixAUFreeview()

void EITFixUp::FixAUFreeview ( DBEventEIT event)
staticprivate

Use this to standardize DVB-T guide in Australia.

(generic freeview - extra info in brackets at end of desc)

Definition at line 1400 of file eitfixup.cpp.

Referenced by Fix().

◆ FixAUNine()

void EITFixUp::FixAUNine ( DBEventEIT event)
staticprivate

Use this to standardize DVB-T guide in Australia.

(Nine network)

Definition at line 1325 of file eitfixup.cpp.

Referenced by Fix().

◆ FixAUSeven()

void EITFixUp::FixAUSeven ( DBEventEIT event)
staticprivate

Use this to standardize DVB-T guide in Australia.

(Seven network)

Definition at line 1358 of file eitfixup.cpp.

Referenced by Fix().

◆ FixAUDescription()

void EITFixUp::FixAUDescription ( DBEventEIT event)
staticprivate

Use this to standardize DVB-T guide in Australia.

(fix common annoyances common to most networks)

Definition at line 1299 of file eitfixup.cpp.

Referenced by Fix().

◆ FixMCA()

void EITFixUp::FixMCA ( DBEventEIT event)
staticprivate

Use this to standardise the MultiChoice Africa DVB-S guide.

Definition at line 1458 of file eitfixup.cpp.

Referenced by Fix().

◆ FixRTL()

void EITFixUp::FixRTL ( DBEventEIT event)
staticprivate

Use this to standardise the RTL group guide in Germany.

Definition at line 1597 of file eitfixup.cpp.

Referenced by Fix().

◆ FixPRO7()

void EITFixUp::FixPRO7 ( DBEventEIT event)
staticprivate

Use this to standardise the PRO7/Sat1 group guide in Germany.

Definition at line 1738 of file eitfixup.cpp.

Referenced by Fix().

◆ FixDisneyChannel()

void EITFixUp::FixDisneyChannel ( DBEventEIT event)
staticprivate

Use this to standardise the Disney Channel guide in Germany.

Definition at line 1814 of file eitfixup.cpp.

Referenced by Fix().

◆ FixATV()

void EITFixUp::FixATV ( DBEventEIT event)
staticprivate

Use this to standardise the ATV/ATV2 guide in Germany.

Definition at line 1841 of file eitfixup.cpp.

Referenced by Fix().

◆ FixFI()

void EITFixUp::FixFI ( DBEventEIT event)
staticprivate

Use this to clean DVB-T guide in Finland.

Definition at line 1851 of file eitfixup.cpp.

Referenced by Fix().

◆ FixPremiere()

void EITFixUp::FixPremiere ( DBEventEIT event)
staticprivate

Use this to standardize DVB-C guide in Germany for the providers Kabel Deutschland and Premiere.

Definition at line 1903 of file eitfixup.cpp.

Referenced by Fix().

◆ FixNL()

void EITFixUp::FixNL ( DBEventEIT event)
staticprivate

Use this to standardize @Home DVB-C guide in the Netherlands.

Definition at line 1993 of file eitfixup.cpp.

Referenced by Fix().

◆ FixCategory()

void EITFixUp::FixCategory ( DBEventEIT event)
staticprivate

Definition at line 2166 of file eitfixup.cpp.

Referenced by Fix().

◆ FixNO()

void EITFixUp::FixNO ( DBEventEIT event)
staticprivate

Use this to clean DVB-S guide in Norway.

Definition at line 2180 of file eitfixup.cpp.

Referenced by Fix().

◆ FixNRK_DVBT()

void EITFixUp::FixNRK_DVBT ( DBEventEIT event)
staticprivate

Use this to clean DVB-T guide in Norway (NRK)

Definition at line 2210 of file eitfixup.cpp.

Referenced by Fix().

◆ FixDK()

void EITFixUp::FixDK ( DBEventEIT event)
staticprivate

Use this to clean YouSee's DVB-C guide in Denmark.

Definition at line 2272 of file eitfixup.cpp.

Referenced by Fix().

◆ FixStripHTML()

void EITFixUp::FixStripHTML ( DBEventEIT event)
staticprivate

Use this to clean HTML Tags from EIT Data.

Definition at line 2474 of file eitfixup.cpp.

Referenced by Fix().

◆ FixGreekSubtitle()

void EITFixUp::FixGreekSubtitle ( DBEventEIT event)
staticprivate

Definition at line 2485 of file eitfixup.cpp.

Referenced by Fix().

◆ FixGreekEIT()

void EITFixUp::FixGreekEIT ( DBEventEIT event)
staticprivate

Definition at line 2500 of file eitfixup.cpp.

Referenced by Fix().

◆ FixGreekCategories()

void EITFixUp::FixGreekCategories ( DBEventEIT event)
staticprivate

Definition at line 2857 of file eitfixup.cpp.

Referenced by Fix().

◆ FixUnitymedia()

void EITFixUp::FixUnitymedia ( DBEventEIT event)
staticprivate

Definition at line 2964 of file eitfixup.cpp.

Referenced by Fix().

◆ AddDVBEITAuthority()

QString EITFixUp::AddDVBEITAuthority ( uint  chanid,
const QString &  id 
)
staticprivate

This adds a DVB EIT default authority to series id or program id if one exists in the DB for that channel, otherwise it returns a blank id instead of the id passed in.

If a series id or program id is a CRID URI, just keep important info ID's are case insensitive, so lower case the whole id. If there is no authority on the ID, add the default one. If there is no default, return an empty id.

Parameters
chanidThe channel whose data should be updated.
idThe ID string to add the authority to.
Returns
ID with the authority added or empty string if not a valid CRID.

Definition at line 202 of file eitfixup.cpp.

Referenced by Fix().

Member Data Documentation

◆ kSubtitleMaxLen

const uint EITFixUp::kSubtitleMaxLen = 128
staticprotected

Definition at line 15 of file eitfixup.h.

Referenced by FixUK().

◆ kMaxToTitle

const uint EITFixUp::kMaxToTitle = 14
staticprotected

Definition at line 17 of file eitfixup.h.

Referenced by SetUKSubtitle().

◆ kDotToTitle

const uint EITFixUp::kDotToTitle = 9
staticprotected

Definition at line 19 of file eitfixup.h.

Referenced by SetUKSubtitle().

◆ kMaxQuestionExclamation

const uint EITFixUp::kMaxQuestionExclamation = 2
staticprotected

Definition at line 21 of file eitfixup.h.

Referenced by SetUKSubtitle().

◆ kMaxDotToColon

const uint EITFixUp::kMaxDotToColon = 5
staticprotected

Definition at line 23 of file eitfixup.h.

Referenced by SetUKSubtitle().

◆ kMinMovieDuration

const int EITFixUp::kMinMovieDuration = 75*60
staticprotected

Definition at line 25 of file eitfixup.h.

Referenced by FixCategory().


The documentation for this class was generated from the following files: