summaryrefslogtreecommitdiff
path: root/p2pvr/lib/dvbsiHelpers
diff options
context:
space:
mode:
authorrandomdan <randomdan@localhost>2013-11-30 15:48:48 +0000
committerrandomdan <randomdan@localhost>2013-11-30 15:48:48 +0000
commit78a3d07fce8a04c20d0b0408da299095be3a585e (patch)
tree19172cc8ea18f0e82cf14fc4ad9e248a74762b76 /p2pvr/lib/dvbsiHelpers
parentFirst commit for big refactor into a Project2 daemon, much still to do, but m... (diff)
downloadp2pvr-78a3d07fce8a04c20d0b0408da299095be3a585e.tar.bz2
p2pvr-78a3d07fce8a04c20d0b0408da299095be3a585e.tar.xz
p2pvr-78a3d07fce8a04c20d0b0408da299095be3a585e.zip
Bit of refactor and tidy up
Diffstat (limited to 'p2pvr/lib/dvbsiHelpers')
-rw-r--r--p2pvr/lib/dvbsiHelpers/cableDelivery.cpp37
-rw-r--r--p2pvr/lib/dvbsiHelpers/event.cpp61
-rw-r--r--p2pvr/lib/dvbsiHelpers/network.cpp20
-rw-r--r--p2pvr/lib/dvbsiHelpers/networkService.cpp21
-rw-r--r--p2pvr/lib/dvbsiHelpers/networkTransportStream.cpp22
-rw-r--r--p2pvr/lib/dvbsiHelpers/satelliteDelivery.cpp49
-rw-r--r--p2pvr/lib/dvbsiHelpers/service.cpp35
-rw-r--r--p2pvr/lib/dvbsiHelpers/terrestrialDelivery.cpp58
8 files changed, 303 insertions, 0 deletions
diff --git a/p2pvr/lib/dvbsiHelpers/cableDelivery.cpp b/p2pvr/lib/dvbsiHelpers/cableDelivery.cpp
new file mode 100644
index 0000000..a550de7
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/cableDelivery.cpp
@@ -0,0 +1,37 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::CableDeliveryPtr>(const ColumnCreator & cc)
+{
+ cc("frequency", false);
+ cc("transportStreamId", true);
+ cc("fecOuter", false);
+ cc("modulation", false);
+ cc("symbolRate", false);
+ cc("fecInner", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::CableDeliveryPtr & s, const DVBSI::NetworkTransportStreamPtr & ts)
+{
+ rs.fields[0] << s->Frequency;
+ rs.fields[1] << ts->TransportStreamId;
+ rs.fields[2] << s->FecOuter;
+ rs.fields[3] << s->Modulation;
+ rs.fields[4] << s->SymbolRate;
+ rs.fields[5] << s->FecInner;
+}
+template<>
+void
+UnbindColumns(RowState & rs, DVBSI::CableDeliveryPtr const & s)
+{
+ rs.fields[0] >> s->Frequency;
+ rs.fields[2] >> s->FecOuter;
+ rs.fields[3] >> s->Modulation;
+ rs.fields[4] >> s->SymbolRate;
+ rs.fields[5] >> s->FecInner;
+}
+
diff --git a/p2pvr/lib/dvbsiHelpers/event.cpp b/p2pvr/lib/dvbsiHelpers/event.cpp
new file mode 100644
index 0000000..d5ea1d4
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/event.cpp
@@ -0,0 +1,61 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::EventPtr>(const ColumnCreator & cc)
+{
+ cc("serviceId", true);
+ cc("eventId", true);
+ cc("title", false);
+ cc("titleLang", false);
+ cc("subtitle", false);
+ cc("description", false);
+ cc("descriptionLang", false);
+ cc("videoAspect", false);
+ cc("videoFrameRate", false);
+ cc("videoHd", false);
+ cc("audioChannels", false);
+ cc("audioLanguage", false);
+ cc("subtitleLanguage", false);
+ cc("category", false);
+ cc("subCategory", false);
+ cc("userCategory", false);
+ cc("dvbRating", false);
+ cc("startTime", false);
+ cc("stopTime", false);
+ cc("episode", false);
+ cc("episodes", false);
+ cc("year", false);
+ cc("flags", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::EventPtr & e)
+{
+ rs.fields[0] << e->ServiceId;
+ rs.fields[1] << e->EventId;
+ rs.fields[2] << e->Title;
+ rs.fields[3] << e->TitleLang;
+ rs.fields[4] << e->Subtitle;
+ rs.fields[5] << e->Description;
+ rs.fields[6] << e->DescriptionLang;
+ rs.fields[7] << e->VideoAspect;
+ rs.fields[8] << e->VideoFrameRate;
+ rs.fields[9] << e->VideoHD;
+ rs.fields[10] << e->AudioChannels;
+ rs.fields[11] << e->AudioLanguage;
+ rs.fields[12] << e->SubtitleLanguage;
+ rs.fields[13] << e->Category;
+ rs.fields[14] << e->SubCategory;
+ rs.fields[15] << e->UserCategory;
+ rs.fields[16] << e->DvbRating;
+ rs.fields[17] << e->StartTime;
+ rs.fields[18] << e->StopTime;
+ rs.fields[19] << e->Episode;
+ rs.fields[20] << e->Episodes;
+ rs.fields[21] << e->Year;
+ rs.fields[22] << e->Flags;
+}
+
diff --git a/p2pvr/lib/dvbsiHelpers/network.cpp b/p2pvr/lib/dvbsiHelpers/network.cpp
new file mode 100644
index 0000000..eeda8db
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/network.cpp
@@ -0,0 +1,20 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::NetworkPtr>(const ColumnCreator & cc)
+{
+ cc("networkId", true);
+ cc("name", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::NetworkPtr & network)
+{
+ rs.fields[0] << network->NetworkId;
+ rs.fields[1] << network->Name;
+}
+
+
diff --git a/p2pvr/lib/dvbsiHelpers/networkService.cpp b/p2pvr/lib/dvbsiHelpers/networkService.cpp
new file mode 100644
index 0000000..60b357a
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/networkService.cpp
@@ -0,0 +1,21 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::NetworkService>(const ColumnCreator & cc)
+{
+ cc("serviceId", true);
+ cc("type", false);
+ cc("transportStreamId", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::NetworkService & s, const DVBSI::NetworkTransportStreamPtr & ts)
+{
+ rs.fields[0] << s.ServiceId;
+ rs.fields[1] << s.ServiceType;
+ rs.fields[2] << ts->TransportStreamId;
+}
+
diff --git a/p2pvr/lib/dvbsiHelpers/networkTransportStream.cpp b/p2pvr/lib/dvbsiHelpers/networkTransportStream.cpp
new file mode 100644
index 0000000..884a7db
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/networkTransportStream.cpp
@@ -0,0 +1,22 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::NetworkTransportStreamPtr>(const ColumnCreator & cc)
+{
+ cc("transportStreamId", true);
+ cc("networkId", false);
+ cc("originalNetworkId", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::NetworkTransportStreamPtr & ts, const DVBSI::NetworkPtr & network)
+{
+ rs.fields[0] << ts->TransportStreamId;
+ rs.fields[1] << network->NetworkId;
+ rs.fields[2] << ts->OriginalNetworkId;
+}
+
+
diff --git a/p2pvr/lib/dvbsiHelpers/satelliteDelivery.cpp b/p2pvr/lib/dvbsiHelpers/satelliteDelivery.cpp
new file mode 100644
index 0000000..a8d6f1a
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/satelliteDelivery.cpp
@@ -0,0 +1,49 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::SatelliteDeliveryPtr>(const ColumnCreator & cc)
+{
+ cc("frequency", false);
+ cc("transportStreamId", true);
+ cc("orbitalPosition", false);
+ cc("westEastFlag", false);
+ cc("polarization", false);
+ cc("rollOff", false);
+ cc("modulationSystem", false);
+ cc("modulationType", false);
+ cc("symbolRate", false);
+ cc("fecInner", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::SatelliteDeliveryPtr & s, const DVBSI::NetworkTransportStreamPtr & ts)
+{
+ rs.fields[0] << s->Frequency;
+ rs.fields[1] << ts->TransportStreamId;
+ rs.fields[2] << s->OrbitalPosition;
+ rs.fields[3] << s->WestEastFlag;
+ rs.fields[4] << s->Polarization;
+ rs.fields[5] << s->RollOff;
+ rs.fields[6] << s->ModulationSystem;
+ rs.fields[7] << s->ModulationType;
+ rs.fields[8] << s->SymbolRate;
+ rs.fields[9] << s->FecInner;
+}
+template<>
+void
+UnbindColumns(RowState & rs, DVBSI::SatelliteDeliveryPtr const & s)
+{
+ rs.fields[0] >> s->Frequency;
+ rs.fields[2] >> s->OrbitalPosition;
+ rs.fields[3] >> s->WestEastFlag;
+ rs.fields[4] >> s->Polarization;
+ rs.fields[5] >> s->RollOff;
+ rs.fields[6] >> s->ModulationSystem;
+ rs.fields[7] >> s->ModulationType;
+ rs.fields[8] >> s->SymbolRate;
+ rs.fields[9] >> s->FecInner;
+}
+
diff --git a/p2pvr/lib/dvbsiHelpers/service.cpp b/p2pvr/lib/dvbsiHelpers/service.cpp
new file mode 100644
index 0000000..dfc03be
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/service.cpp
@@ -0,0 +1,35 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::ServicePtr>(const ColumnCreator & cc)
+{
+ cc("serviceId", true);
+ cc("transportStreamId", true);
+ cc("name", false);
+ cc("providerName", false);
+ cc("defaultAuthority", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::ServicePtr & s, const DVBSI::TransportStreamPtr & ts)
+{
+ rs.fields[0] << s->ServiceId;
+ rs.fields[1] << ts->TransportStreamId;
+ rs.fields[2] << s->Name;
+ rs.fields[4] << s->ProviderName;
+ rs.fields[4] << s->DefaultAuthority;
+}
+
+template<>
+void
+UnbindColumns(RowState & rs, DVBSI::ServicePtr const & s)
+{
+ rs.fields[0] >> s->ServiceId;
+ rs.fields[0] >> s->Name;
+ rs.fields[0] >> s->ProviderName;
+ rs.fields[0] >> s->DefaultAuthority;
+}
+
diff --git a/p2pvr/lib/dvbsiHelpers/terrestrialDelivery.cpp b/p2pvr/lib/dvbsiHelpers/terrestrialDelivery.cpp
new file mode 100644
index 0000000..dfacd01
--- /dev/null
+++ b/p2pvr/lib/dvbsiHelpers/terrestrialDelivery.cpp
@@ -0,0 +1,58 @@
+#include "../dvbsiHelpers.h"
+#include "../p2Helpers.h"
+
+template<>
+void
+CreateColumns<DVBSI::TerrestrialDeliveryPtr>(const ColumnCreator & cc)
+{
+ cc("frequency", false);
+ cc("transportStreamId", true);
+ cc("bandwidth", false);
+ cc("priority", false);
+ cc("timeSlicing", false);
+ cc("mpeFec", false);
+ cc("constellation", false);
+ cc("hierarchy", false);
+ cc("codeRateHP", false);
+ cc("codeRateLP", false);
+ cc("guardInterval", false);
+ cc("transmissionMode", false);
+ cc("otherFrequencyFlag", false);
+}
+
+template<>
+void
+BindColumns(RowState & rs, const DVBSI::TerrestrialDeliveryPtr & s, const DVBSI::NetworkTransportStreamPtr & ts)
+{
+ rs.fields[0] << s->Frequency;
+ rs.fields[1] << ts->TransportStreamId;
+ rs.fields[2] << s->Bandwidth;
+ rs.fields[3] << s->Priority;
+ rs.fields[4] << s->TimeSlicing;
+ rs.fields[5] << s->MpeFec;
+ rs.fields[6] << s->Constellation;
+ rs.fields[7] << s->Hierarchy;
+ rs.fields[8] << s->CodeRateHP;
+ rs.fields[9] << s->CodeRateLP;
+ rs.fields[10] << s->GuardInterval;
+ rs.fields[11] << s->TransmissionMode;
+ rs.fields[12] << s->OtherFrequencyFlag;
+}
+template<>
+void
+UnbindColumns(RowState & rs, DVBSI::TerrestrialDeliveryPtr const & s)
+{
+ rs.fields[0] >> s->Frequency;
+ rs.fields[2] >> s->Bandwidth;
+ rs.fields[3] >> s->Priority;
+ rs.fields[4] >> s->TimeSlicing;
+ rs.fields[5] >> s->MpeFec;
+ rs.fields[6] >> s->Constellation;
+ rs.fields[7] >> s->Hierarchy;
+ rs.fields[8] >> s->CodeRateHP;
+ rs.fields[9] >> s->CodeRateLP;
+ rs.fields[10] >> s->GuardInterval;
+ rs.fields[11] >> s->TransmissionMode;
+ rs.fields[12] >> s->OtherFrequencyFlag;
+}
+