summaryrefslogtreecommitdiffstats
path: root/src/ConfigParser.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2019-01-29 15:55:17 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2019-01-29 15:55:17 +0100
commit4acf7a34c202293884739b40af699943d7e8e9d9 (patch)
tree1f6b2d0a8c3646723c7785aa1f3fad25b7aadc1f /src/ConfigParser.cpp
parent2346b17f650e56f70046e95a54f356a8e3e29107 (diff)
downloaddabmux-4acf7a34c202293884739b40af699943d7e8e9d9.tar.gz
dabmux-4acf7a34c202293884739b40af699943d7e8e9d9.tar.bz2
dabmux-4acf7a34c202293884739b40af699943d7e8e9d9.zip
Add partial FIG2 label support
Add support for Ensemble label, programme services and components, although the implementation for the component label is not properly tested. (data services still to be done) Neither short labels nor UCS-2 are not yet implemented. Also, support for draftETSI TS 103 176 which redefines the meaning of Rfa is still pending.
Diffstat (limited to 'src/ConfigParser.cpp')
-rw-r--r--src/ConfigParser.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/ConfigParser.cpp b/src/ConfigParser.cpp
index f51eb03..07aee0e 100644
--- a/src/ConfigParser.cpp
+++ b/src/ConfigParser.cpp
@@ -412,7 +412,7 @@ static void parse_general(ptree& pt,
}
int success = -5;
- string ensemble_label = pt_ensemble.get<string>("label");
+ string ensemble_label = pt_ensemble.get<string>("label", "");
string ensemble_short_label(ensemble_label);
try {
ensemble_short_label = pt_ensemble.get<string>("shortlabel");
@@ -447,6 +447,8 @@ static void parse_general(ptree& pt,
abort();
}
+ ensemble->label.setFIG2Label(pt_ensemble.get<string>("fig2_label", ""));
+
try {
ptree pt_announcements = pt_ensemble.get_child("announcements");
for (auto announcement : pt_announcements) {
@@ -549,7 +551,7 @@ void parse_ptree(
int success = -5;
- string servicelabel = pt_service.get<string>("label");
+ string servicelabel = pt_service.get<string>("label", "");
string serviceshortlabel(servicelabel);
try {
serviceshortlabel = pt_service.get<string>("shortlabel");
@@ -584,6 +586,8 @@ void parse_ptree(
abort();
}
+ service->label.setFIG2Label(pt_service.get<string>("fig2_label", ""));
+
service->id = new_service_id;
service->ecc = hexparse(pt_service.get("ecc", "0"));
service->pty_settings.pty = hexparse(pt_service.get("pty", "0"));
@@ -744,6 +748,8 @@ void parse_ptree(
abort();
}
+ component->label.setFIG2Label(pt_comp.get<string>("fig2_label", ""));
+
if (component->SCIdS == 0 and not component->label.long_label().empty()) {
etiLog.level(warn) << "Primary component " << component->uid <<
" has label set. Since V2.1.1 of the specification, only secondary"