From f8ee21192238bb5858db9c473dde711e4584dc6a Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Mon, 13 Jul 2020 13:54:24 +0200 Subject: Add possibility to set several user application types in FIG0/13 --- src/MuxElements.h | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src/MuxElements.h') diff --git a/src/MuxElements.h b/src/MuxElements.h index 77d417b..100e4d7 100644 --- a/src/MuxElements.h +++ b/src/MuxElements.h @@ -3,7 +3,7 @@ 2011, 2012 Her Majesty the Queen in Right of Canada (Communications Research Center Canada) - Copyright (C) 2019 + Copyright (C) 2020 Matthias P. Braendli, matthias.braendli@mpb.li http://www.opendigitalradio.org @@ -422,10 +422,20 @@ public: struct dabProtection protection; }; +/* For FIG 0/13 (EN 300 401 Clause 6.3.6) */ +struct userApplication { + /* This 11-bit field identifies the user application that shall be used to decode the data in the channel identified + * by SId and SCIdS. The interpretation of this field shall be as defined in ETSI TS 101 756 [3], table 16. */ + uint16_t uaType = 0xFFFF; + /* X-PAD Application Type: this 5-bit field shall specify the lowest numbered application type used to transport + * this user application (see clause 7.4.3). + * Also See EN 300 401 Table 11 "X-PAD Application types" */ + uint8_t xpadAppType; +}; struct dabAudioComponent { - uint16_t uaType = 0xFFFF; // User Application Type + std::vector uaTypes; }; @@ -437,7 +447,7 @@ struct dabDataComponent { struct dabPacketComponent { uint16_t id = 0; uint16_t address = 0; - uint16_t appType = 0xFFFF; + std::vector uaTypes; bool datagroup = false; }; -- cgit v1.2.3