diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-04-20 05:22:08 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-04-20 05:22:08 +0200 |
commit | f6803b2375d1b21ed4cc035e268f8759d5170491 (patch) | |
tree | de666c74444fb024cbe0fc2907636febaf1d53b1 /src/MuxElements.h | |
parent | 2a8e60cd761d1f3728c765d646135b2110eea576 (diff) | |
download | dabmux-f6803b2375d1b21ed4cc035e268f8759d5170491.tar.gz dabmux-f6803b2375d1b21ed4cc035e268f8759d5170491.tar.bz2 dabmux-f6803b2375d1b21ed4cc035e268f8759d5170491.zip |
WIP: Rework FIG0/21 definition and get FIC insertion to compile
Diffstat (limited to 'src/MuxElements.h')
-rw-r--r-- | src/MuxElements.h | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/src/MuxElements.h b/src/MuxElements.h index 0eabb69..7f1b828 100644 --- a/src/MuxElements.h +++ b/src/MuxElements.h @@ -191,7 +191,7 @@ class DabService; class DabComponent; class DabSubchannel; class LinkageSet; -struct FrequencyListEntry; +struct FrequencyInformation; class dabEnsemble : public RemoteControllable { public: @@ -231,7 +231,7 @@ class dabEnsemble : public RemoteControllable { std::vector<std::shared_ptr<AnnouncementCluster> > clusters; std::vector<std::shared_ptr<LinkageSet> > linkagesets; - std::vector<std::shared_ptr<FrequencyListEntry> > frequency_information; + std::vector<std::shared_ptr<FrequencyInformation> > frequency_information; }; @@ -487,29 +487,33 @@ struct FrequencyInfoDab { disjoint_mode1 = 3}; struct ListElement { + std::string uid; ControlField_e control_field; float frequency; }; + uint16_t eid; std::vector<ListElement> frequencies; }; struct FrequencyInfoDrm { - uint8_t drm_service_id; + uint32_t drm_service_id; std::vector<float> frequencies; }; struct FrequencyInfoFm { + uint16_t pi_code; std::vector<float> frequencies; }; struct FrequencyInfoAmss { - uint8_t amss_service_id; + uint32_t amss_service_id; std::vector<float> frequencies; }; struct FrequencyListEntry { - uint16_t id; + std::string uid; + RangeModulation rm; bool continuity; @@ -521,6 +525,14 @@ struct FrequencyListEntry { FrequencyInfoAmss fi_amss; }; +struct FrequencyInformation { + std::string uid; + + // The latest draft spec does not specify the RegionId anymore, it's + // now a reserved field. + std::vector<FrequencyListEntry> frequency_information; +}; + std::vector<DabSubchannel*>::iterator getSubchannel( std::vector<DabSubchannel*>& subchannels, int id); |