Files
qt5-legatus-legacy/Lts/Services/AudioVideoManagement/frequency_set_handler.h
T
2026-08-13 18:33:10 +02:00

53 lines
1.5 KiB
C++
Executable File

/**
* FrequencySetHandler - reads TetraChannel and TvcConfig data from the database and publishes the data to dds,
* reacts to TvcConfig related Function topics
* $Id: combat_net_radio_handler.h 34915 2017-08-18 07:26:31Z baeuerle_h $
* $HeadURL: svn://slssvn/TDS/branches/product/devel/trunk/Lts/Services/AudioVideoManagement/combat_net_radio_handler.h $
* $Author: baeuerle_h $
* Created by Hannes Baeuerle, SLSE, 2017-07-25
*/
#pragma once
#include <avm_db.h>
#include <avm.hpp>
#include <logger.h>
#include <QMap>
#include <QVector>
namespace AudioVideoManagement
{
namespace Interface
{
class Dts;
}
class FrequencySetHandler
{
public:
explicit FrequencySetHandler(Interface::Dts *dts, DatabaseInterface *db);
bool init();
/**
* Used by FrequencyPlanningHandler in order to validate the entries of a FrequencyPlan.
* Checks whether the given entry is actually part of the FrequencySet.
*/
bool isValid(int32_t setId, int32_t entryId);
static FrequencyBand getFrequencyBand(const QString &deviceString);
private: // methods
FrequencySet toDdsFrequencySet(const Database::AvmFrequencySet &dbData) const;
static FrequencySetDataWithId toDdsFrequencySetDataWithId(const Database::AvmFrequencySetData &dbData);
void addFrequencySet(const FrequencySet &frequencySet);
private:
Interface::Dts *m_dts;
DatabaseInterface *m_db;
QMap<int32_t, QVector<int32_t>> m_frequencySetDatas; // <frequency set id, QVector<frequency set data id> >
LOGGER_T &m_logger;
};
} // namespace AudioVideoManagement