diff options
| author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2025-10-06 17:21:13 +0200 | 
|---|---|---|
| committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2025-10-06 17:21:13 +0200 | 
| commit | b6b840f6072e950f2ded719ae51badfba7566fa8 (patch) | |
| tree | 67fa420ad7de127290c85ffb84196ae2e3fe1c7a /src/MuxElements.cpp | |
| parent | f34c15338bc07357f1a1665e2c6e8fc1eaca7eed (diff) | |
| download | dabmux-b6b840f6072e950f2ded719ae51badfba7566fa8.tar.gz dabmux-b6b840f6072e950f2ded719ae51badfba7566fa8.tar.bz2 dabmux-b6b840f6072e950f2ded719ae51badfba7566fa8.zip | |
Add frequency_information hot-reload
Diffstat (limited to 'src/MuxElements.cpp')
| -rw-r--r-- | src/MuxElements.cpp | 28 | 
1 files changed, 27 insertions, 1 deletions
| diff --git a/src/MuxElements.cpp b/src/MuxElements.cpp index 1f02a6d..d39c874 100644 --- a/src/MuxElements.cpp +++ b/src/MuxElements.cpp @@ -745,7 +745,8 @@ const json::map_t dabEnsemble::get_all_values() const  bool dabEnsemble::validate_linkage_sets() const  { -    return validate_linkage_sets(services, linkagesets); +    unique_lock<mutex> lock(m_mutex); +    return validate_linkage_sets(services, m_linkagesets);  }  bool dabEnsemble::validate_linkage_sets( @@ -789,6 +790,31 @@ bool dabEnsemble::validate_linkage_sets(      return true;  } +std::vector<FrequencyInformation> dabEnsemble::get_frequency_information() const +{ +    unique_lock<mutex> lock(m_mutex); +    auto fi = m_frequency_information; +    lock.unlock(); +    return fi; +} + +std::vector<std::shared_ptr<LinkageSet> > dabEnsemble::get_linkagesets() const +{ +    unique_lock<mutex> lock(m_mutex); +    auto ls = m_linkagesets; +    lock.unlock(); +    return ls; +} + +void dabEnsemble::set_linking_config( +        std::vector<std::shared_ptr<LinkageSet> >& new_linkage_sets, +        std::vector<FrequencyInformation>& new_frequency_information) +{ +    unique_lock<mutex> lock(m_mutex); +    m_frequency_information = new_frequency_information; +    m_linkagesets = new_linkage_sets; +} +  unsigned short DabSubchannel::getSizeCu() const  {      if (protection.form == UEP) { | 
