43#define PARSE_SKIP(VAR) do { \
44 if (it == tokens.end()) return false; \
47#define PARSE_CONF(VAR) do { \
48 if (it == tokens.end()) return false; \
49 if (!(VAR).ParseConf(*it)) return false; \
52#define PARSE_STR(VAR) do { \
53 if (it != tokens.end()) (VAR) = *it++; else return false; } while(false)
55#define PARSE_UINT(VAR) do { \
56 if (it != tokens.end()) \
57 (VAR) = (*it++).toUInt(); else return false; } while(false)
59#define PARSE_UINT_1000(VAR) do { \
60 if (it != tokens.end()) \
61 (VAR) = (*it++).toUInt() * 1000ULL; else return false; } while(false)
75 if (!
file.open(QIODevice::ReadOnly))
79 QTextStream stream(&
file);
81 while (!stream.atEnd())
83 line = stream.readLine();
84 line = line.trimmed();
85 if (line.startsWith(
"#"))
88 QStringList list = line.split(
":", Qt::SkipEmptyParts);
92 QString str = list[0];
95 if ((str.length() >= 1) && (str.at(0) ==
'@'))
97#if QT_VERSION < QT_VERSION_CHECK(6,0,0)
98 channelNo = str.midRef(1).toInt();
100 channelNo = QStringView(str).mid(1).toInt();
102 line = stream.readLine();
103 list = line.split(
":", Qt::SkipEmptyParts);
111 if ((str ==
"T") || (str ==
"C") || (str ==
"S"))
145 QStringList::const_iterator it = tokens.begin();
171 QStringList::const_iterator it = tokens.begin();
190 QStringList::const_iterator it = tokens.begin();
212 QStringList::const_iterator it = tokens.begin();
233 QStringList::const_iterator it = tokens.begin();
235 chan.
m_lcn = channelNo;
243 if (it == tokens.end())
246 QString params = (*it++);
247 while (!params.isEmpty())
249 QString ori = params;
250 int s = (int) (params.toLatin1().constData()[0]);
251 params = params.mid(1);
295 for (
uint i = 0; i < 6; i++)
311 channel.channels.push_back(chan);
313 LOG(VB_GENERAL, LOG_INFO,
"Imported channel: " + chan.
toString() +
322 LOG(VB_GENERAL, LOG_INFO,
"Imported channel: " + chan.
toString() +
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
bool ParseConfQAM(const QStringList &tokens)
DTVChannelList m_channels
bool ParseConfOFDM(const QStringList &tokens)
bool ParseConfATSC(const QStringList &tokens)
void AddChannel(const DTVMultiplex &mux, DTVChannelInfo &chan)
bool ParseVDR(const QStringList &tokens, int channelNo=-1)
bool ParseConfQPSK(const QStringList &tokens)
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
DTVTransmitMode m_transMode
DTVModulation m_modulation
DTVModulationSystem m_modSys
DTVGuardInterval m_guardInterval
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
bool ParseVDR(const QString &_value)
#define PARSE_UINT_1000(VAR)
#define LOG(_MASK_, _LEVEL_, _QSTRING_)